In [ ]:
. ./nbs_header.ps1
. ./core.ps1
In [ ]:
{ . "$ScriptDir/../apps/builder/build.ps1" } | Invoke-Block
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ # DibParser (Polyglot) │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/fsharp/Notebooks.dib
#!import ../../lib/fsharp/Testing.dib
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
spNetCore.Html.Abstractions.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.Formatting.dll"
open System
open System.IO
open System.Text
open Microsoft.DotNet.Interactive.Formatting
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
open type Microsoft.DotNet.Interactive.Kernel
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
Formatter.ListExpansionLimit <- 100
── fsharp - import ─────────────────────────────────────────────────────────────
#r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
type AssertExceptionFormatter (ex) =
member _.Text =
ex.ToString()
.Replace("32m", "<span style=\"color: green;\">")
.Replace("36m", "</span>")
.Replace("31m", "<span style=\"color: red;\">")
.Replace("\n", "<br/>\n")
Formatter.Register<AssertExceptionFormatter> ((fun (x :
AssertExceptionFormatter) -> x.Text), "text/html")
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __expect fn log expected actual =
if log then printfn $"{actual.ToDisplayString ()}"
try
"Testing.__expect" |> fn actual expected
with :? Expecto.AssertException as ex ->
AssertExceptionFormatter(ex).Display () |> ignore
failwith (ex.GetType().FullName)
let inline __contains log expected actual = __expect Expecto.Expect.contains log
expected actual
let inline _contains expected actual = __contains true expected actual
let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
expected actual
let inline _assertEqual expected actual = __assertEqual true expected actual
let inline __isGreaterThan log expected actual = __expect
Expecto.Expect.isGreaterThan log ex...
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __isBetween log a b actual =
let inline isBetween actual (a, b) _ =
__isGreaterThanOrEqual log a actual
__isLessThanOrEqual log b actual
__expect isBetween log (a, b) actual
let inline _isBetween a b actual = __isBetween true a b actual
── pwsh ────────────────────────────────────────────────────────────────────────
ls ~/.nuget/packages/argu
╭─[ 662.14ms - stdout ]────────────────────────────────────────────────────────╮
│ │
│ Directory: C:\Users\i574n\.nuget\packages\argu │
│ │
│ Mode LastWriteTime Length[ │
│ 32;1m Name │
│ ---- ------------- ------ [ │
│ 32;1m---- │
│ d---- 2023-05-17 3:38 PM 6.1.1 │
│ d---- 2024-03-12 8:22 PM 6.1.4 │
│ d---- 2024-01-29 5:12 PM 6.1.5 │
│ d---- 2024-03-12 8:20 PM 6.2.0 │
│ d---- 2024-02-23 6:50 PM 6.2.1 │
│ d---- 2024-03-12 8:15 PM 6.2.2 │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
#r
@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan
dard2.1/FSharp.Control.AsyncSeq.dll"
#r
@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.
0/System.Reactive.dll"
#r
@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/
netstandard2.0/System.Reactive.Linq.dll"
#r
@"../../../../../../../.nuget/packages/argu/6.2.2/lib/netstandard2.0/Argu.dll"
#r
@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li
b/net6.0/System.CommandLine.dll"
#r
@"../../../../../../../.nuget/packages/fparsec/2.0.0-beta2/lib/netstandard2.1/FP
arsec.dll"
#r
@"../../../../../../../.nuget/packages/fparsec/2.0.0-beta2/lib/netstandard2.1/FP
arsecCS.dll"
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/spiral/common.fsx
#!import ../../lib/spiral/sm.fsx
#!import ../../lib/spiral/date_time.fsx
#!import ../../lib/spiral/file_system.fsx
#!import ../../lib/spiral/trace.fsx
#!import ../../lib/spiral/lib.fsx
#!import ../../lib/fsharp/Common.fs
#!import ../../lib/fsharp/CommonFSharp.fs
#!import ../../lib/fsharp/Async.fs
#!import ../../lib/fsharp/AsyncSeq.fs
#!import ../../lib/fsharp/Runtime.fs
#!import ../../lib/fsharp/FileSystem.fs
── fsharp - import ─────────────────────────────────────────────────────────────
type [[<Struct>]] US0 =
| US0_0
| US0_1
and [[<Struct>]] US1 =
| US1_0 of f0_0 : US0
| US1_1
let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
let v1 : System.IDisposable option = None
let mutable _v1 = v1
#if FABLE_COMPILER_RUST && !WASM && !CONTRACT
let v2 : System.IDisposable = null |> unbox<System.IDisposable>
v2
#endif
#if FABLE_COMPILER_RUST && WASM
let v3 : System.IDisposable = null |> unbox<System.IDisposable>
v3
#endif
#if FABLE_COMPILER_RUST && CONTRACT
let v4 : System.IDisposable = null |> unbox<System.IDisposable>
v4
#endif
#if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
!WASM && !CONTRACT
let v5 : System.ID...
── fsharp - import ─────────────────────────────────────────────────────────────
type Mut0 = {mutable l0 : int32; mutable l1 : string}
and Mut1 = {mutable l0 : int32}
let rec closure1 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.Contains v0
v2
and closure0 () (v0 : string) : (string -> bool) =
closure1(v0)
and closure3 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.EndsWith v0
v2
and closure2 () (v0 : string) : (string -> bool) =
closure3(v0)
and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
let v3 : string = v2.PadLeft (v0, v1)
v3
and closure5 (v0 : int32) (v1 : char) : (string -> string) =
closure6(v0, v1)
and closure4 () (v0 : int32) : (char -> (string -> string)) =
closure5(v0)
and closure8 (v0 : int32) (v1 : string) : string =
let v2 : stri...
── fsharp - import ─────────────────────────────────────────────────────────────
let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
let v2 : (System.Guid -> string) = _.ToString()
let v3 : string = v2 v0
let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
v5
and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
closure1(v0)
and closure5 (v0 : string, v1 : string) (v2 : string) : string =
let v3 : string = v2.Replace (v0, v1)
v3
and closure4 (v0 : string) (v1 : string) : (string -> string) =
closure5(v0, v1)
and closure3 () (v0 : string) : (string -> (string -> string)) =
closure4(v0)
and method0 () : (string -> (string -> (string -> string))) =
closure3()
and closure2 (...
── fsharp - import ─────────────────────────────────────────────────────────────
#if FABLE_COMPILER // file_system.types
[[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
[[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
base64_DecodeError = class end
[[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
serde_json_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
serde_json_Value = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
serde_wasm_bindgen_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
── fsharp - import ─────────────────────────────────────────────────────────────
module State = let mutable trace_state = None
type [[<Struct>]] US0 =
| US0_0
| US0_1
| US0_2
| US0_3
| US0_4
and Mut0 = {mutable l0 : int64}
and Mut1 = {mutable l0 : bool}
and Mut2 = {mutable l0 : US0}
and [[<Struct>]] US1 =
| US1_0 of f0_0 : int64
| US1_1
and [[<Struct>]] US2 =
| US2_0 of f0_0 : int64
| US2_1
let rec method1 (v0 : int64 option) : int64 option =
v0
and method2 (v0 : int64 option) : int64 option =
v0
and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
let v0 : Mut1 = {l0 = true} : Mut1
let v1 : Mut0 = {l0 = 0L} : Mut0
let v2 : US0 = US0_0
let v3 : Mut2 = {l0 = v2} : Mut2
let v4 : Mut1 = {l0 = false} : Mut1
let v5 : int64 option option = None
...
── fsharp - import ─────────────────────────────────────────────────────────────
module SpiralTrace =
let get_trace_state () =
#if !INTERACTIVE
Trace.get_trace_state ()
#else
get_trace_state ()
#endif
let trace x =
#if !INTERACTIVE
Trace.trace x
#else
trace x
#endif
let US0_0 =
#if !INTERACTIVE
Trace.US0_0
#else
US0_0
#endif
let US0_1 =
#if !INTERACTIVE
Trace.US0_1
#else
US0_1
#endif
let US0_2 =
#if !INTERACTIVE
Trace.US0_2
#else
US0_2
#endif
let US0_3 =
#if !INTERACTIVE
Trace.US0_3
#else
US0_3
#endif
let US0_4 =
#if !INTERACTIVE
Trace.US0_4
#else
US0_4
#endif
#if !FABLE_COMPILER && !WASM && !CONTRACT
module SpiralDateTime =
let format x =
#if !INTERACTIVE
Date_ti...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Common =
#if !INTERACTIVE
open Lib
#endif
let nl = System.Environment.NewLine
let q = @""""
let inline cons head tail = head :: tail
/// ## memoize
let inline memoize fn =
let result = lazy fn ()
fun () -> result.Value
/// ## TraceLevel
type TraceLevel =
| Verbose
| Debug
| Info
| Warning
| Critical
let inline getLocals () = ""
/// ## trace
let to_trace_level = function
| Verbose -> SpiralTrace.US0_0
| Debug -> SpiralTrace.US0_1
| Info -> SpiralTrace.US0_2
| Warning -> SpiralTrace.US0_3
| Critical -> SpiralTrace.US0_4
let trace level fn g...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module CommonFSharp =
open Common
/// ## getUnionCaseName
let inline getUnionCaseName<'T> (x: 'T) =
match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with
| case, _ -> case.Name
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Async =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## choice
let inline choice asyncs = async {
let e = Event<_> ()
use cts = new System.Threading.CancellationTokenSource ()
let fn =
asyncs
|> Seq.map (fun a -> async {
let! x = a
e.Trigger x
})
|> Async.Parallel
|> Async.Ignore
Async.Start (fn, cts.Token)
let! result = Async.AwaitEvent e.Publish
cts.Cancel ()
return result
}
/// ## map
let inline map fn a = async {
let! x = a
return fn x
}
/// ## catch
let inline catch a =
...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module AsyncSeq =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## subscribeEvent
let inline subscribeEvent (event: IEvent<'H, 'A>) map =
let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,
'A>(event.AddHandler, event.RemoveHandler)
System.Reactive.Linq.Observable.Select (observable, fun event -> map
event.EventArgs)
|> FSharp.Control.AsyncSeq.ofObservableBuffered
let subscribeToken (token : System.Threading.CancellationToken) =
let tcs = new System.Threading.Tasks.TaskCompletionSource ()
System.Action tcs.SetResult |> token.Register |> ignore
let start = System.DateTime.Now.Ticks
FSharp.Control.A...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Runtime =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## isWindows
let isWindows =
fun () ->
System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform
System.Runtime.InteropServices.OSPlatform.Windows
|> memoize
/// ## getExecutableSuffix
let inline getExecutableSuffix () =
if isWindows ()
then ".exe"
else ""
/// ## splitCommand
type private CommandParseStep =
| Start
| Path of quoted: bool
| Arguments
let splitCommand (command: string) =
let rec loop (path, args) chars step =
match chars, step with
| ('"' | '\'') ...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module FileSystem =
#if !INTERACTIVE
open Lib
#endif
open Common
open SpiralFileSystem.Operators
/// ## watchDirectory
[[<RequireQualifiedAccess>]]
type FileSystemChangeType =
| Failure
| Changed
| Created
| Deleted
| Renamed
[[<RequireQualifiedAccess>]]
type FileSystemChange =
| Failure of exn: exn
| Changed of path: string * content: string option
| Created of path: string * content: string option
| Deleted of path: string
| Renamed of oldPath: string * (string * string option)
let inline watchDirectoryWithFilter filter shouldReadContent path =
let fullPath = path |> Sys...
── fsharp ──────────────────────────────────────────────────────────────────────
#if !INTERACTIVE
open Lib
#endif
── fsharp ──────────────────────────────────────────────────────────────────────
open Common
open FParsec
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## escapeCell (test) │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let inline escapeCell input =
input
|> SpiralSm.split "\n"
|> Array.map (function
| line when line |> SpiralSm.starts_with "\\#!" || line |>
SpiralSm.starts_with "\\#r" ->
System.Text.RegularExpressions.Regex.Replace (line, "^\\\\#", "#")
| line -> line
)
|> SpiralSm.concat "\n"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
$"a{nl}\\#!magic{nl}b{nl}"
|> escapeCell
|> _assertEqual (
$"a{nl}#!magic{nl}b{nl}"
)
╭─[ 73.00ms - stdout ]─────────────────────────────────────────────────────────╮
│ a │
│ #!magic │
│ b │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## magicMarker │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let magicMarker : Parser<string, unit> = pstring "#!"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!magic"
|> run magicMarker
|> _assertEqual (
Success ("#!", (), Position ("", 2, 1, 3))
)
╭─[ 46.00ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item1: #! │
│ Item2: <null> │
│ Item3: Position │
│ Index: 2 │
│ Line: 1 │
│ Column: 3 │
│ StreamName: │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"##!magic"
|> run magicMarker
|> _assertEqual (
Failure (
$"Error in Ln: 1 Col: 1{nl}##!magic{nl}^{nl}Expecting: '#!'{nl}",
ParserError (
Position ("", 0, 1, 1),
(),
ErrorMessageList (ExpectedString "#!")
),
()
)
)
╭─[ 57.83ms - stdout ]─────────────────────────────────────────────────────────╮
│ Failure │
│ Item1: Error in Ln: 1 Col: 1 │
│ ##!magic │
│ ^ │
│ Expecting: '#!' │
│ │
│ Item2: ParserError │
│ Position: Position │
│ Index: 0 │
│ Line: 1 │
│ Column: 1 │
│ StreamName: │
│ UserState: <null> │
│ Messages: ErrorMessageList │
│ Head: ExpectedString │
│ String: #! │
│ Type: ExpectedString │
│ Tail: <null> │
│ Item3: <null> │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## magicCommand │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let magicCommand =
magicMarker
>>. manyTill anyChar newline
|>> (System.String.Concat >> SpiralSm.trim)
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!magic
a"
|> run magicCommand
|> _assertEqual (
Success ("magic", (), Position ("", 8, 2, 1))
)
╭─[ 51.98ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item1: magic │
│ Item2: <null> │
│ Item3: Position │
│ Index: 8 │
│ Line: 2 │
│ Column: 1 │
│ StreamName: │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
" #!magic
a"
|> run magicCommand
|> _assertEqual (
Failure (
$"Error in Ln: 1 Col: 1{nl} #!magic{nl}^{nl}Expecting: '#!'{nl}",
ParserError (
Position ("", 0, 1, 1),
(),
ErrorMessageList (ExpectedString "#!")
),
()
)
)
╭─[ 38.37ms - stdout ]─────────────────────────────────────────────────────────╮
│ Failure │
│ Item1: Error in Ln: 1 Col: 1 │
│ #!magic │
│ ^ │
│ Expecting: '#!' │
│ │
│ Item2: ParserError │
│ Position: Position │
│ Index: 0 │
│ Line: 1 │
│ Column: 1 │
│ StreamName: │
│ UserState: <null> │
│ Messages: ErrorMessageList │
│ Head: ExpectedString │
│ String: #! │
│ Type: ExpectedString │
│ Tail: <null> │
│ Item3: <null> │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## content │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let content =
(newline >>. magicMarker) <|> (eof >>. preturn "")
|> attempt
|> lookAhead
|> manyTill anyChar
|>> (System.String.Concat >> SpiralSm.trim)
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!magic
a
"
|> run content
|> _assertEqual (
Success ("#!magic
a", (), Position ("", 14, 7, 1))
)
╭─[ 36.74ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item1: #!magic │
│ │
│ │
│ a │
│ Item2: <null> │
│ Item3: Position │
│ Index: 14 │
│ Line: 7 │
│ Column: 1 │
│ StreamName: │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## Block │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
type Block =
{
magic : string
content : string
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## block │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let block =
pipe2
magicCommand
content
(fun magic content ->
{
magic = magic
content = content
})
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!magic
a
"
|> run block
|> _assertEqual (
Success (
{ magic = "magic"; content = "a" },
(),
Position ("", 14, 7, 1)
)
)
╭─[ 39.96ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item1: Block │
│ magic: magic │
│ content: a │
│ Item2: <null> │
│ Item3: Position │
│ Index: 14 │
│ Line: 7 │
│ Column: 1 │
│ StreamName: │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## blocks │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let blocks =
skipMany newline
>>. sepEndBy block (skipMany1 newline)
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!magic1
a
\#!magic2
b
"
|> escapeCell
|> run blocks
|> _assertEqual (
Success (
[[
{ magic = "magic1"; content = "a" }
{ magic = "magic2"; content = "b" }
]],
(),
Position ("", 26, 9, 1)
)
)
╭─[ 59.07ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item1: FSharpList<Block> │
│ - magic: magic1 │
│ content: a │
│ - magic: magic2 │
│ content: b │
│ Item2: <null> │
│ Item3: Position │
│ Index: 26 │
│ Line: 9 │
│ Column: 1 │
│ StreamName: │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## Output │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
type Output =
| Fs
| Md
| Spi
| Spir
let inline kernelOutputs magic =
match magic with
| "fsharp" -> [[ Fs ]]
| "markdown" -> [[ Md ]]
| "spiral" -> [[ Spi; Spir ]]
| _ -> [[]]
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## formatBlock │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline formatBlock output (block : Block) =
match output, block with
| output, { magic = "markdown"; content = content } ->
let markdownComment =
match output with
| Spi | Spir -> "// // "
| Fs -> "/// "
| _ -> ""
content
|> SpiralSm.split "\n"
|> Array.map (SpiralSm.trim_end [[||]])
|> Array.filter (SpiralSm.ends_with " (test)" >> not)
|> Array.map (function
| "" -> markdownComment |> SpiralSm.trim
| line -> System.Text.RegularExpressions.Regex.Replace (line,
"^\\s*", $"$&{markdownComment}")
)
|> SpiralSm.concat "\n"
| Fs, { magic = "fsharp"; content = content } ->
let trimmedContent = content |> SpiralSm.trim
if trimmedContent |> SpiralSm.starts_with "//// test" || trimmedContent
|> SpiralSm.starts_with "//// ignore"
then ""
else
content
|> SpiralSm.split "\n"
|> Array.filter (SpiralSm.trim_start [[||]] >> SpiralSm.starts_with
"#r" >> not)
|> SpiralSm.concat "\n"
| (Spi | Spir), { magic = "spiral"; content = content } ->
let trimmedContent = content |> SpiralSm.trim
if trimmedContent |> SpiralSm.starts_with "// // test" || trimmedContent
|> SpiralSm.starts_with "// // ignore"
then ""
else content
| _ -> ""
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!markdown
a
b
c
\#!markdown
c
\#!fsharp
let a = 1"
|> escapeCell
|> run block
|> function
| Success (block, _, _) -> formatBlock Fs block
| Failure (msg, _, _) -> failwith msg
|> _assertEqual "/// a
///
/// b
///
/// c"
╭─[ 65.88ms - stdout ]─────────────────────────────────────────────────────────╮
│ /// a │
│ /// │
│ /// b │
│ /// │
│ /// c │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## formatBlocks │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline formatBlocks output blocks =
blocks
|> List.map (formatBlock output)
|> List.filter ((<>) "")
|> SpiralSm.concat "\n\n"
|> fun s -> s + "\n"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!markdown
a
b
\#!markdown
c
\#!fsharp
let a = 1
\#!markdown
d (test)
\#!fsharp
//// test
let a = 2
\#!markdown
e
\#!fsharp
let a = 3"
|> escapeCell
|> run blocks
|> function
| Success (blocks, _, _) -> formatBlocks Fs blocks
| Failure (msg, _, _) -> failwith msg
|> _assertEqual "/// a
///
/// b
/// c
let a = 1
/// e
let a = 3
"
╭─[ 62.12ms - stdout ]─────────────────────────────────────────────────────────╮
│ /// a │
│ /// │
│ /// b │
│ │
│ /// c │
│ │
│ let a = 1 │
│ │
│ /// e │
│ │
│ let a = 3 │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## parse │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline parse output input =
match run blocks input with
| Success (blocks, _, _) ->
let blocks =
blocks
|> List.filter (fun block ->
block.magic |> kernelOutputs |> List.contains output ||
block.magic = "markdown"
)
match blocks with
| { magic = "markdown"; content = content } :: _
when output = Fs
&& content |> SpiralSm.starts_with "# "
&& content |> SpiralSm.ends_with ")"
->
let inline indentBlock (block : Block) =
{ block with
content =
block.content
|> SpiralSm.split "\n"
|> Array.fold
(fun (lines, isMultiline) line ->
let trimmedLine = line |> SpiralSm.trim
if trimmedLine = ""
then "" :: lines, isMultiline
else
let inline singleQuoteLine () =
trimmedLine |> Seq.sumBy ((=) '"' >>
System.Convert.ToInt32) = 1
&& trimmedLine |> SpiralSm.contains
@"'""'" |> not
&& trimmedLine |> SpiralSm.ends_with "{"
|> not
&& trimmedLine |> SpiralSm.ends_with
"{|" |> not
&& trimmedLine |> SpiralSm.starts_with
"}" |> not
&& trimmedLine |> SpiralSm.starts_with
"|}" |> not
match isMultiline, trimmedLine |>
SpiralSm.split_string [[| $"{q}{q}{q}" |]] with
| false, [[| _; _ |]] ->
$" {line}" :: lines, true
| true, [[| _; _ |]] ->
line :: lines, false
| false, _ when singleQuoteLine () ->
$" {line}" :: lines, true
| false, _ when line |> SpiralSm.starts_with
"#" && block.magic = "fsharp" ->
line :: lines, false
| false, _ ->
$" {line}" :: lines, false
| true, _ when singleQuoteLine () && line |>
SpiralSm.starts_with " " ->
$" {line}" :: lines, false
| true, _ when singleQuoteLine () ->
line :: lines, false
| true, _ ->
line :: lines, true
)
([[]], false)
|> fst
|> List.rev
|> SpiralSm.concat "\n"
}
let moduleName, namespaceName =
System.Text.RegularExpressions.Regex.Match (content, @"# (.*)
\((.*)\)$")
|> fun m -> m.Groups.[[1]].Value, m.Groups.[[2]].Value
let moduleBlock =
{
magic = "fsharp"
content =
$"#if !INTERACTIVE
namespace {namespaceName}
#endif
module {moduleName} ="
}
blocks
|> List.indexed
|> List.fold
(fun blocks (index, block) ->
match index with
| 0 -> blocks
| 1 -> indentBlock block :: moduleBlock :: blocks
| _ -> indentBlock block :: blocks
)
[[]]
|> List.rev
| _ -> blocks
|> Result.Ok
| Failure (errorMsg, _, _) -> Result.Error errorMsg
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let example1 =
$"""#!meta
{{"kernelInfo":{{"defaultKernelName":"fsharp","items":[[{{"aliases":[[]],"name":
"fsharp"}},{{"aliases":[[]],"name":"fsharp"}}]]}}}}
\#!markdown
# TestModule (TestNamespace)
\#!fsharp
\#!import file.dib
\#!fsharp
\#r "nuget:Expecto"
\#!markdown
## ParserLibrary
\#!fsharp
open System
\#!markdown
## x (test)
\#!fsharp
//// ignore
let x = 1
\#!spiral
// // test
inl x = 0i32
\#!spiral
inl x = 0i32
\#!markdown
### TextInput
\#!fsharp
let str1 = "abc
def"
let str2 =
"abc\
def"
let str3 =
$"1{{
1
}}1"
let str4 =
$"1{{({{|
a = 1
|}}).a}}1"
let str5 =
"abc \
def"
let x =
match '"' with
| '"' -> true
| _ -> false
let long1 = {q}{q}{q}a{q}{q}{q}
let long2 =
{q}{q}{q}
a
{q}{q}{q}
\#!fsharp
type Position =
{{
#if INTERACTIVE
line : string
#else
line : int
#endif
column : int
}}"""
|> escapeCell
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
example1
|> parse Fs
|> Result.toOption
|> Option.get
|> (formatBlocks Fs)
|> _assertEqual $"""#if !INTERACTIVE
namespace TestNamespace
#endif
module TestModule =
/// ## ParserLibrary
open System
/// ### TextInput
let str1 = "abc
def"
let str2 =
"abc\
def"
let str3 =
$"1{{
1
}}1"
let str4 =
$"1{{({{|
a = 1
|}}).a}}1"
let str5 =
"abc \
def"
let x =
match '"' with
| '"' -> true
| _ -> false
let long1 = {q}{q}{q}a{q}{q}{q}
let long2 =
{q}{q}{q}
a
{q}{q}{q}
type Position =
{{
#if INTERACTIVE
line : string
#else
line : int
#endif
column : int
}}
"""
╭─[ 222.90ms - stdout ]────────────────────────────────────────────────────────╮
│ #if !INTERACTIVE │
│ namespace TestNamespace │
│ #endif │
│ │
│ module TestModule = │
│ │
│ /// ## ParserLibrary │
│ │
│ open System │
│ │
│ /// ### TextInput │
│ │
│ let str1 = "abc │
│ def" │
│ │
│ let str2 = │
│ "abc\ │
│ def" │
│ │
│ let str3 = │
│ $"1{ │
│ 1 │
│ }1" │
│ │
│ let str4 = │
│ $"1{({| │
│ a = 1 │
│ |}).a}1" │
│ │
│ let str5 = │
│ "abc \ │
│ def" │
│ │
│ let x = │
│ match '"' with │
│ | '"' -> true │
│ | _ -> false │
│ │
│ let long1 = """a""" │
│ │
│ let long2 = │
│ """ │
│ a │
│ """ │
│ │
│ type Position = │
│ { │
│ #if INTERACTIVE │
│ line : string │
│ #else │
│ line : int │
│ #endif │
│ column : int │
│ } │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
example1
|> parse Md
|> Result.toOption
|> Option.get
|> (formatBlocks Md)
|> _assertEqual "# TestModule (TestNamespace)
## ParserLibrary
### TextInput
"
╭─[ 217.95ms - stdout ]────────────────────────────────────────────────────────╮
│ # TestModule (TestNamespace) │
│ │
│ ## ParserLibrary │
│ │
│ ### TextInput │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
example1
|> parse Spi
|> Result.toOption
|> Option.get
|> (formatBlocks Spi)
|> _assertEqual "// // # TestModule (TestNamespace)
// // ## ParserLibrary
inl x = 0i32
// // ### TextInput
"
╭─[ 189.88ms - stdout ]────────────────────────────────────────────────────────╮
│ // // # TestModule (TestNamespace) │
│ │
│ // // ## ParserLibrary │
│ │
│ inl x = 0i32 │
│ │
│ // // ### TextInput │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## parseDibCode │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline parseDibCode output file = async {
let getLocals () = $"output: {output} / file: {file} / {getLocals ()}"
trace Debug (fun () -> "parseDibCode") getLocals
let! input = file |> SpiralFileSystem.read_all_text_async
match parse output input with
| Result.Ok blocks -> return blocks |> formatBlocks output
| Result.Error msg -> return failwith msg
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## writeDibCode │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline writeDibCode output path = async {
let getLocals () = $"output: {output} / path: {path} / {getLocals ()}"
trace Debug (fun () -> "writeDibCode") getLocals
let! result = parseDibCode output path
let outputPath = path |> SpiralSm.replace ".dib" $".{output |> string |>
SpiralSm.to_lower}"
do! result |> SpiralFileSystem.write_all_text_async outputPath
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## Arguments │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
[[<RequireQualifiedAccess>]]
type Arguments =
| [[<Argu.ArguAttributes.MainCommand; Argu.ArguAttributes.Mandatory>]]
File of file : string * Output
interface Argu.IArgParserTemplate with
member s.Usage =
match s with
| File _ -> nameof File
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
Argu.ArgumentParser.Create<Arguments>().PrintUsage ()
╭─[ 134.65ms - return value ]──────────────────────────────────────────────────╮
│ USAGE: dotnet-repl [--help] <file> <fs|md|spi|spir> │
│ │
│ FILE: │
│ │
│ <file> <fs|md|spi|spir> │
│ File │
│ │
│ OPTIONS: │
│ │
│ --help display this list of options. │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## main │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let main args =
let argsMap = args |> Runtime.parseArgsMap<Arguments>
let files =
argsMap.[[nameof Arguments.File]]
|> List.map (function
| Arguments.File (path, output) -> path, output
)
files
|> List.map (fun (path, output) -> path |> writeDibCode output)
|> Async.Parallel
|> Async.Ignore
|> Async.runWithTimeout 30000
|> function
| Some () -> 0
| None -> 1
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let args =
System.Environment.GetEnvironmentVariable "ARGS"
|> Runtime.splitArgs
|> Seq.toArray
match args with
| [[||]] -> 0
| args -> if main args = 0 then 0 else failwith "main failed"
╭─[ 160.99ms - return value ]──────────────────────────────────────────────────╮
│ <div class="dni-plaintext"><pre>0</pre></div><style> │
│ .dni-code-hint { │
│ font-style: italic; │
│ overflow: hidden; │
│ white-space: nowrap; │
│ } │
│ .dni-treeview { │
│ white-space: nowrap; │
│ } │
│ .dni-treeview td { │
│ vertical-align: top; │
│ text-align: start; │
│ } │
│ details.dni-treeview { │
│ padding-left: 1em; │
│ } │
│ table td { │
│ text-align: start; │
│ } │
│ table tr { │
│ vertical-align: top; │
│ margin: 0em 0px; │
│ } │
│ table tr td pre │
│ { │
│ vertical-align: top !important; │
│ margin: 0em 0px !important; │
│ } │
│ table th { │
│ text-align: start; │
│ } │
│ </style> │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 175.17ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:00 #1 [debug] writeDibCode / output: Fs / path: Builder.dib │
│ 00:00:00 #2 [debug] parseDibCode / output: Fs / file: Builder.dib │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ # Builder (Polyglot) │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/fsharp/Notebooks.dib
#!import ../../lib/fsharp/Testing.dib
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
spNetCore.Html.Abstractions.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.Formatting.dll"
open System
open System.IO
open System.Text
open Microsoft.DotNet.Interactive.Formatting
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
open type Microsoft.DotNet.Interactive.Kernel
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
Formatter.ListExpansionLimit <- 100
── fsharp - import ─────────────────────────────────────────────────────────────
#r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
type AssertExceptionFormatter (ex) =
member _.Text =
ex.ToString()
.Replace("32m", "<span style=\"color: green;\">")
.Replace("36m", "</span>")
.Replace("31m", "<span style=\"color: red;\">")
.Replace("\n", "<br/>\n")
Formatter.Register<AssertExceptionFormatter> ((fun (x :
AssertExceptionFormatter) -> x.Text), "text/html")
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __expect fn log expected actual =
if log then printfn $"{actual.ToDisplayString ()}"
try
"Testing.__expect" |> fn actual expected
with :? Expecto.AssertException as ex ->
AssertExceptionFormatter(ex).Display () |> ignore
failwith (ex.GetType().FullName)
let inline __contains log expected actual = __expect Expecto.Expect.contains log
expected actual
let inline _contains expected actual = __contains true expected actual
let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
expected actual
let inline _assertEqual expected actual = __assertEqual true expected actual
let inline __isGreaterThan log expected actual = __expect
Expecto.Expect.isGreaterThan log ex...
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __isBetween log a b actual =
let inline isBetween actual (a, b) _ =
__isGreaterThanOrEqual log a actual
__isLessThanOrEqual log b actual
__expect isBetween log (a, b) actual
let inline _isBetween a b actual = __isBetween true a b actual
── fsharp ──────────────────────────────────────────────────────────────────────
#r
@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan
dard2.1/FSharp.Control.AsyncSeq.dll"
#r
@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.
0/System.Reactive.dll"
#r
@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/
netstandard2.0/System.Reactive.Linq.dll"
#r
@"../../../../../../../.nuget/packages/argu/6.2.2/lib/netstandard2.0/Argu.dll"
#r
@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li
b/net6.0/System.CommandLine.dll"
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/spiral/common.fsx
#!import ../../lib/spiral/sm.fsx
#!import ../../lib/spiral/date_time.fsx
#!import ../../lib/spiral/file_system.fsx
#!import ../../lib/spiral/trace.fsx
#!import ../../lib/spiral/lib.fsx
#!import ../../lib/fsharp/Common.fs
#!import ../../lib/fsharp/CommonFSharp.fs
#!import ../../lib/fsharp/Async.fs
#!import ../../lib/fsharp/AsyncSeq.fs
#!import ../../lib/fsharp/Networking.fs
#!import ../../lib/fsharp/Runtime.fs
#!import ../../lib/fsharp/FileSystem.fs
── fsharp - import ─────────────────────────────────────────────────────────────
type [[<Struct>]] US0 =
| US0_0
| US0_1
and [[<Struct>]] US1 =
| US1_0 of f0_0 : US0
| US1_1
let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
let v1 : System.IDisposable option = None
let mutable _v1 = v1
#if FABLE_COMPILER_RUST && !WASM && !CONTRACT
let v2 : System.IDisposable = null |> unbox<System.IDisposable>
v2
#endif
#if FABLE_COMPILER_RUST && WASM
let v3 : System.IDisposable = null |> unbox<System.IDisposable>
v3
#endif
#if FABLE_COMPILER_RUST && CONTRACT
let v4 : System.IDisposable = null |> unbox<System.IDisposable>
v4
#endif
#if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
!WASM && !CONTRACT
let v5 : System.ID...
── fsharp - import ─────────────────────────────────────────────────────────────
type Mut0 = {mutable l0 : int32; mutable l1 : string}
and Mut1 = {mutable l0 : int32}
let rec closure1 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.Contains v0
v2
and closure0 () (v0 : string) : (string -> bool) =
closure1(v0)
and closure3 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.EndsWith v0
v2
and closure2 () (v0 : string) : (string -> bool) =
closure3(v0)
and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
let v3 : string = v2.PadLeft (v0, v1)
v3
and closure5 (v0 : int32) (v1 : char) : (string -> string) =
closure6(v0, v1)
and closure4 () (v0 : int32) : (char -> (string -> string)) =
closure5(v0)
and closure8 (v0 : int32) (v1 : string) : string =
let v2 : stri...
── fsharp - import ─────────────────────────────────────────────────────────────
let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
let v2 : (System.Guid -> string) = _.ToString()
let v3 : string = v2 v0
let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
v5
and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
closure1(v0)
and closure5 (v0 : string, v1 : string) (v2 : string) : string =
let v3 : string = v2.Replace (v0, v1)
v3
and closure4 (v0 : string) (v1 : string) : (string -> string) =
closure5(v0, v1)
and closure3 () (v0 : string) : (string -> (string -> string)) =
closure4(v0)
and method0 () : (string -> (string -> (string -> string))) =
closure3()
and closure2 (...
── fsharp - import ─────────────────────────────────────────────────────────────
#if FABLE_COMPILER // file_system.types
[[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
[[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
base64_DecodeError = class end
[[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
serde_json_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
serde_json_Value = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
serde_wasm_bindgen_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
── fsharp - import ─────────────────────────────────────────────────────────────
module State = let mutable trace_state = None
type [[<Struct>]] US0 =
| US0_0
| US0_1
| US0_2
| US0_3
| US0_4
and Mut0 = {mutable l0 : int64}
and Mut1 = {mutable l0 : bool}
and Mut2 = {mutable l0 : US0}
and [[<Struct>]] US1 =
| US1_0 of f0_0 : int64
| US1_1
and [[<Struct>]] US2 =
| US2_0 of f0_0 : int64
| US2_1
let rec method1 (v0 : int64 option) : int64 option =
v0
and method2 (v0 : int64 option) : int64 option =
v0
and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
let v0 : Mut1 = {l0 = true} : Mut1
let v1 : Mut0 = {l0 = 0L} : Mut0
let v2 : US0 = US0_0
let v3 : Mut2 = {l0 = v2} : Mut2
let v4 : Mut1 = {l0 = false} : Mut1
let v5 : int64 option option = None
...
── fsharp - import ─────────────────────────────────────────────────────────────
module SpiralTrace =
let get_trace_state () =
#if !INTERACTIVE
Trace.get_trace_state ()
#else
get_trace_state ()
#endif
let trace x =
#if !INTERACTIVE
Trace.trace x
#else
trace x
#endif
let US0_0 =
#if !INTERACTIVE
Trace.US0_0
#else
US0_0
#endif
let US0_1 =
#if !INTERACTIVE
Trace.US0_1
#else
US0_1
#endif
let US0_2 =
#if !INTERACTIVE
Trace.US0_2
#else
US0_2
#endif
let US0_3 =
#if !INTERACTIVE
Trace.US0_3
#else
US0_3
#endif
let US0_4 =
#if !INTERACTIVE
Trace.US0_4
#else
US0_4
#endif
#if !FABLE_COMPILER && !WASM && !CONTRACT
module SpiralDateTime =
let format x =
#if !INTERACTIVE
Date_ti...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Common =
#if !INTERACTIVE
open Lib
#endif
let nl = System.Environment.NewLine
let q = @""""
let inline cons head tail = head :: tail
/// ## memoize
let inline memoize fn =
let result = lazy fn ()
fun () -> result.Value
/// ## TraceLevel
type TraceLevel =
| Verbose
| Debug
| Info
| Warning
| Critical
let inline getLocals () = ""
/// ## trace
let to_trace_level = function
| Verbose -> SpiralTrace.US0_0
| Debug -> SpiralTrace.US0_1
| Info -> SpiralTrace.US0_2
| Warning -> SpiralTrace.US0_3
| Critical -> SpiralTrace.US0_4
let trace level fn g...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module CommonFSharp =
open Common
/// ## getUnionCaseName
let inline getUnionCaseName<'T> (x: 'T) =
match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with
| case, _ -> case.Name
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Async =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## choice
let inline choice asyncs = async {
let e = Event<_> ()
use cts = new System.Threading.CancellationTokenSource ()
let fn =
asyncs
|> Seq.map (fun a -> async {
let! x = a
e.Trigger x
})
|> Async.Parallel
|> Async.Ignore
Async.Start (fn, cts.Token)
let! result = Async.AwaitEvent e.Publish
cts.Cancel ()
return result
}
/// ## map
let inline map fn a = async {
let! x = a
return fn x
}
/// ## catch
let inline catch a =
...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module AsyncSeq =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## subscribeEvent
let inline subscribeEvent (event: IEvent<'H, 'A>) map =
let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,
'A>(event.AddHandler, event.RemoveHandler)
System.Reactive.Linq.Observable.Select (observable, fun event -> map
event.EventArgs)
|> FSharp.Control.AsyncSeq.ofObservableBuffered
let subscribeToken (token : System.Threading.CancellationToken) =
let tcs = new System.Threading.Tasks.TaskCompletionSource ()
System.Action tcs.SetResult |> token.Register |> ignore
let start = System.DateTime.Now.Ticks
FSharp.Control.A...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Networking =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## testPortOpen
let inline testPortOpen port = async {
let! ct = Async.CancellationToken
use client = new System.Net.Sockets.TcpClient ()
try
do! client.ConnectAsync ("127.0.0.1", port, ct) |>
Async.awaitValueTaskUnit
return true
with ex ->
trace Verbose (fun () -> $"testPortOpen / ex: {ex |>
SpiralSm.format_exception}") getLocals
return false
}
let inline testPortOpenTimeout timeout port = async {
let! result =
testPortOpen port
|> Async.runWithTimeoutAsync timeout
return
...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Runtime =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## isWindows
let isWindows =
fun () ->
System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform
System.Runtime.InteropServices.OSPlatform.Windows
|> memoize
/// ## getExecutableSuffix
let inline getExecutableSuffix () =
if isWindows ()
then ".exe"
else ""
/// ## splitCommand
type private CommandParseStep =
| Start
| Path of quoted: bool
| Arguments
let splitCommand (command: string) =
let rec loop (path, args) chars step =
match chars, step with
| ('"' | '\'') ...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module FileSystem =
#if !INTERACTIVE
open Lib
#endif
open Common
open SpiralFileSystem.Operators
/// ## watchDirectory
[[<RequireQualifiedAccess>]]
type FileSystemChangeType =
| Failure
| Changed
| Created
| Deleted
| Renamed
[[<RequireQualifiedAccess>]]
type FileSystemChange =
| Failure of exn: exn
| Changed of path: string * content: string option
| Created of path: string * content: string option
| Deleted of path: string
| Renamed of oldPath: string * (string * string option)
let inline watchDirectoryWithFilter filter shouldReadContent path =
let fullPath = path |> Sys...
── fsharp ──────────────────────────────────────────────────────────────────────
#if !INTERACTIVE
open Lib
#endif
── fsharp ──────────────────────────────────────────────────────────────────────
open Common
open SpiralFileSystem.Operators
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## buildProject │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline buildProject runtime outputDir path = async {
let fullPath = path |> System.IO.Path.GetFullPath
let fileDir = fullPath |> System.IO.Path.GetDirectoryName
let extension = fullPath |> System.IO.Path.GetExtension
let getLocals () = $"fullPath: {fullPath} / {getLocals ()}"
trace Debug (fun () -> "buildProject") getLocals
match extension with
| ".fsproj" -> ()
| _ -> failwith "Invalid project file"
let runtimes =
runtime
|> Option.map List.singleton
|> Option.defaultValue [[ "linux-x64"; "win-x64" ]]
let outputDir = outputDir |> Option.defaultValue "dist"
return!
runtimes
|> List.map (fun runtime -> async {
let! exitCode, _result =
Runtime.executeWithOptionsAsync
{
Command = $@"dotnet publish ""{path}"" --configuration
Release --output ""{outputDir}"" --runtime {runtime}"
CancellationToken = None
OnLine = None
WorkingDirectory = Some fileDir
}
return exitCode
})
|> Async.Sequential
|> Async.map Array.sum
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## persistCodeProject │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline persistCodeProject packages modules name code = async {
let getLocals () = $"packages: {packages} / modules: {modules} / name:
{name} / code.Length: {code |> String.length} / {getLocals ()}"
trace Debug (fun () -> "persistCodeProject") getLocals
let repositoryRoot = SpiralFileSystem.get_source_directory () |>
SpiralFileSystem.find_parent ".paket" false
let targetDir = repositoryRoot </> "target/polyglot/builder" </> name
System.IO.Directory.CreateDirectory targetDir |> ignore
let filePath = targetDir </> $"{name}.fs" |> System.IO.Path.GetFullPath
do! code |> SpiralFileSystem.write_all_text_exists filePath
let modulesCode =
modules
|> List.map (fun path -> $"""<Compile Include="{repositoryRoot </>
path}" />""")
|> SpiralSm.concat "\n "
let fsprojPath = targetDir </> $"{name}.fsproj"
let fsprojCode = $"""<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net9.0</TargetFramework>
<LangVersion>preview</LangVersion>
<RollForward>Major</RollForward>
<TargetLatestRuntimePatch>true</TargetLatestRuntimePatch>
<PublishAot>false</PublishAot>
<PublishTrimmed>false</PublishTrimmed>
<PublishSingleFile>true</PublishSingleFile>
<SelfContained>true</SelfContained>
<Version>0.0.1-alpha.1</Version>
<OutputType>Exe</OutputType>
</PropertyGroup>
<ItemGroup>
{modulesCode}
<Compile Include="{filePath}" />
</ItemGroup>
<Import Project="{repositoryRoot}/.paket/Paket.Restore.targets" />
</Project>
"""
do! fsprojCode |> SpiralFileSystem.write_all_text_exists fsprojPath
let paketReferencesPath = targetDir </> "paket.references"
let paketReferencesCode =
"FSharp.Core" :: packages
|> SpiralSm.concat "\n"
do! paketReferencesCode |> SpiralFileSystem.write_all_text_exists
paketReferencesPath
return fsprojPath
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## buildCode │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline buildCode runtime packages modules outputDir name code = async {
let! fsprojPath = code |> persistCodeProject packages modules name
return! fsprojPath |> buildProject runtime outputDir
}
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"1 + 1 |> ignore"
|> buildCode None [[]] [[]] None "test1"
|> Async.runWithTimeout 180000
|> _assertEqual (Some 0)
╭─[ 10.99s - stdout ]──────────────────────────────────────────────────────────╮
│ 00:00:00 #1 [debug] persistCodeProject / packages: [] / modules: [] / name: │
│ test1 / code.Length: 15 │
│ 00:00:00 #2 [debug] buildProject / fullPath: │
│ C:\home\git\polyglot\target\polyglot\builder\test1\test1.fsproj │
│ 00:00:00 #3 [debug] executeAsync / options: { Command = │
│ "dotnet publish │
│ "C:\home\git\polyglot\target/polyglot/builder\test1\test1.fsproj" │
│ --configuration Release --output "dist" --runtime linux-x64" │
│ WorkingDirectory = Some │
│ "C:\home\git\polyglot\target\polyglot\builder\test1" │
│ CancellationToken = None │
│ OnLine = None } │
│ 00:00:00 #4 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f │
│ for .NET │
│ 00:00:00 #5 [verbose] > Determining projects to restore... │
│ 00:00:01 #6 [verbose] > Restored │
│ C:\home\git\polyglot\target\polyglot\builder\test1\test1.fsproj (in 422 ms). │
│ 00:00:01 #7 [verbose] > │
│ C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.2 │
│ 4101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInferen │
│ ce.targets(313,5): message NETSDK1057: You are using a preview version of │
│ .NET. See: https://aka.ms/dotnet-support-policy [ │
│ C:\home\git\polyglot\target\polyglot\builder\test1\test1.fsproj] │
│ 00:00:03 #8 [verbose] > test1 -> │
│ C:\home\git\polyglot\target\polyglot\builder\test1\bin\Release\net9.0\linux- │
│ x64\test1.dll │
│ 00:00:04 #9 [verbose] > test1 -> │
│ C:\home\git\polyglot\target\polyglot\builder\test1\dist\ │
│ 00:00:04 #10 [debug] executeAsync / exitCode: 0 / output.Length: 693 │
│ 00:00:04 #11 [debug] executeAsync / options: { Command = │
│ "dotnet publish │
│ "C:\home\git\polyglot\target/polyglot/builder\test1\test1.fsproj" │
│ --configuration Release --output "dist" --runtime win-x64" │
│ WorkingDirectory = Some │
│ "C:\home\git\polyglot\target\polyglot\builder\test1" │
│ CancellationToken = None │
│ OnLine = None } │
│ 00:00:04 #12 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f │
│ for .NET │
│ 00:00:05 #13 [verbose] > Determining projects to restore... │
│ 00:00:06 #14 [verbose] > Restored │
│ C:\home\git\polyglot\target\polyglot\builder\test1\test1.fsproj (in 356 ms). │
│ 00:00:06 #15 [verbose] > │
│ C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.2 │
│ 4101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInferen │
│ ce.targets(313,5): message NETSDK1057: You are using a preview version of │
│ .NET. See: https://aka.ms/dotnet-support-policy [ │
│ C:\home\git\polyglot\target\polyglot\builder\test1\test1.fsproj] │
│ 00:00:07 #16 [verbose] > test1 -> │
│ C:\home\git\polyglot\target\polyglot\builder\test1\bin\Release\net9.0\win-x6 │
│ 4\test1.dll │
│ 00:00:10 #17 [verbose] > test1 -> │
│ C:\home\git\polyglot\target\polyglot\builder\test1\dist\ │
│ 00:00:10 #18 [debug] executeAsync / exitCode: 0 / output.Length: 691 │
│ FSharpOption<Int32> │
│ Value: 0 │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"1 + a |> ignore"
|> buildCode None [[]] [[]] None "test2"
|> Async.runWithTimeout 180000
|> _assertEqual (Some 2)
╭─[ 8.69s - stdout ]───────────────────────────────────────────────────────────╮
│ 00:00:10 #19 [debug] persistCodeProject / packages: [] / modules: [] / name: │
│ test2 / code.Length: 15 │
│ 00:00:10 #20 [debug] buildProject / fullPath: │
│ C:\home\git\polyglot\target\polyglot\builder\test2\test2.fsproj │
│ 00:00:10 #21 [debug] executeAsync / options: { Command = │
│ "dotnet publish │
│ "C:\home\git\polyglot\target/polyglot/builder\test2\test2.fsproj" │
│ --configuration Release --output "dist" --runtime linux-x64" │
│ WorkingDirectory = Some │
│ "C:\home\git\polyglot\target\polyglot\builder\test2" │
│ CancellationToken = None │
│ OnLine = None } │
│ 00:00:11 #22 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f │
│ for .NET │
│ 00:00:12 #23 [verbose] > Determining projects to restore... │
│ 00:00:12 #24 [verbose] > Restored │
│ C:\home\git\polyglot\target\polyglot\builder\test2\test2.fsproj (in 480 ms). │
│ 00:00:13 #25 [verbose] > │
│ C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.2 │
│ 4101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInferen │
│ ce.targets(313,5): message NETSDK1057: You are using a preview version of │
│ .NET. See: https://aka.ms/dotnet-support-policy [ │
│ C:\home\git\polyglot\target\polyglot\builder\test2\test2.fsproj] │
│ 00:00:15 #26 [verbose] > │
│ C:\home\git\polyglot\target\polyglot\builder\test2\test2.fs(1,5): error │
│ FS0039: The value or constructor 'a' is not defined. [ │
│ C:\home\git\polyglot\target\polyglot\builder\test2\test2.fsproj] │
│ 00:00:15 #27 [debug] executeAsync / exitCode: 1 / output.Length: 715 │
│ 00:00:15 #28 [debug] executeAsync / options: { Command = │
│ "dotnet publish │
│ "C:\home\git\polyglot\target/polyglot/builder\test2\test2.fsproj" │
│ --configuration Release --output "dist" --runtime win-x64" │
│ WorkingDirectory = Some │
│ "C:\home\git\polyglot\target\polyglot\builder\test2" │
│ CancellationToken = None │
│ OnLine = None } │
│ 00:00:15 #29 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f │
│ for .NET │
│ 00:00:16 #30 [verbose] > Determining projects to restore... │
│ 00:00:17 #31 [verbose] > Restored │
│ C:\home\git\polyglot\target\polyglot\builder\test2\test2.fsproj (in 401 ms). │
│ 00:00:17 #32 [verbose] > │
│ C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.2 │
│ 4101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInferen │
│ ce.targets(313,5): message NETSDK1057: You are using a preview version of │
│ .NET. See: https://aka.ms/dotnet-support-policy [ │
│ C:\home\git\polyglot\target\polyglot\builder\test2\test2.fsproj] │
│ 00:00:19 #33 [verbose] > │
│ C:\home\git\polyglot\target\polyglot\builder\test2\test2.fs(1,5): error │
│ FS0039: The value or constructor 'a' is not defined. [ │
│ C:\home\git\polyglot\target\polyglot\builder\test2\test2.fsproj] │
│ 00:00:19 #34 [debug] executeAsync / exitCode: 1 / output.Length: 715 │
│ FSharpOption<Int32> │
│ Value: 2 │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## readFile │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline readFile path = async {
let! code = path |> SpiralFileSystem.read_all_text_async
let code = System.Text.RegularExpressions.Regex.Replace (
code,
@"( *)(let\s+main\s+.*?\s*=)",
fun m -> m.Groups.[[1]].Value + "[[<EntryPoint>]]\n" +
m.Groups.[[1]].Value + m.Groups.[[2]].Value
)
let codeTrim = code |> SpiralSm.trim_end [[||]]
return
if codeTrim |> SpiralSm.ends_with "\n()"
then codeTrim |> SpiralSm.slice 0 ((codeTrim |> String.length) - 3)
else code
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## buildFile │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline buildFile runtime packages modules path = async {
let fullPath = path |> System.IO.Path.GetFullPath
let dir = fullPath |> System.IO.Path.GetDirectoryName
let name = fullPath |> System.IO.Path.GetFileNameWithoutExtension
let! code = fullPath |> readFile
return! code |> buildCode runtime packages modules (dir </> "dist" |> Some)
name
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## persistFile │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline persistFile packages modules path = async {
let fullPath = path |> System.IO.Path.GetFullPath
let name = fullPath |> System.IO.Path.GetFileNameWithoutExtension
let! code = fullPath |> readFile
return! code |> persistCodeProject packages modules name
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## Arguments │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
[[<RequireQualifiedAccess>]]
type Arguments =
| [[<Argu.ArguAttributes.MainCommand; Argu.ArguAttributes.ExactlyOnce>]]
Path of path : string
| [[<Argu.ArguAttributes.Unique>]] Packages of packages : string list
| [[<Argu.ArguAttributes.Unique>]] Modules of modules : string list
| [[<Argu.ArguAttributes.Unique>]] Runtime of runtime : string
| [[<Argu.ArguAttributes.Unique>]] Persist_Only
interface Argu.IArgParserTemplate with
member s.Usage =
match s with
| Path _ -> nameof Path
| Packages _ -> nameof Packages
| Modules _ -> nameof Modules
| Runtime _ -> nameof Runtime
| Persist_Only -> nameof Persist_Only
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
Argu.ArgumentParser.Create<Arguments>().PrintUsage ()
╭─[ 124.31ms - return value ]──────────────────────────────────────────────────╮
│ USAGE: dotnet-repl [--help] [--packages [<packages>...]] │
│ [--modules [<modules>...]] [--runtime <runtime>] │
│ [--persist-only] <path> │
│ │
│ PATH: │
│ │
│ <path> Path │
│ │
│ OPTIONS: │
│ │
│ --packages [<packages>...] │
│ Packages │
│ --modules [<modules>...] │
│ Modules │
│ --runtime <runtime> Runtime │
│ --persist-only Persist_Only │
│ --help display this list of options. │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## main │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let main args =
let argsMap = args |> Runtime.parseArgsMap<Arguments>
let path =
match argsMap.[[nameof Arguments.Path]] with
| [[ Arguments.Path path ]] -> Some path
| _ -> None
|> Option.get
let packages =
match argsMap |> Map.tryFind (nameof Arguments.Packages) with
| Some [[ Arguments.Packages packages ]] -> packages
| _ -> [[]]
let modules =
match argsMap |> Map.tryFind (nameof Arguments.Modules) with
| Some [[ Arguments.Modules modules ]] -> modules
| _ -> [[]]
let runtime =
match argsMap |> Map.tryFind (nameof Arguments.Runtime) with
| Some [[ Arguments.Runtime runtime ]] -> Some runtime
| _ -> None
let persistOnly = argsMap |> Map.containsKey (nameof Arguments.Persist_Only)
if persistOnly
then path |> persistFile packages modules |> Async.map (fun _ -> 0)
else path |> buildFile runtime packages modules
|> Async.runWithTimeout (60000 * 60)
|> function
| Some exitCode -> exitCode
| None -> 1
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let args =
System.Environment.GetEnvironmentVariable "ARGS"
|> Runtime.splitArgs
|> Seq.toArray
match args with
| [[||]] -> 0
| args -> if main args = 0 then 0 else failwith "main failed"
╭─[ 30.34s - return value ]────────────────────────────────────────────────────╮
│ <div class="dni-plaintext"><pre>0</pre></div><style> │
│ .dni-code-hint { │
│ font-style: italic; │
│ overflow: hidden; │
│ white-space: nowrap; │
│ } │
│ .dni-treeview { │
│ white-space: nowrap; │
│ } │
│ .dni-treeview td { │
│ vertical-align: top; │
│ text-align: start; │
│ } │
│ details.dni-treeview { │
│ padding-left: 1em; │
│ } │
│ table td { │
│ text-align: start; │
│ } │
│ table tr { │
│ vertical-align: top; │
│ margin: 0em 0px; │
│ } │
│ table tr td pre │
│ { │
│ vertical-align: top !important; │
│ margin: 0em 0px !important; │
│ } │
│ table th { │
│ text-align: start; │
│ } │
│ </style> │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 30.35s - stdout ]──────────────────────────────────────────────────────────╮
│ 00:00:20 #35 [debug] persistCodeProject / packages: [Argu; │
│ FSharp.Control.AsyncSeq; System.CommandLine; ... ] / modules: [ │
│ lib/spiral/common.fsx; lib/spiral/sm.fsx; lib/spiral/date_time.fsx; ... ] / │
│ name: Builder / code.Length: 7189 │
│ 00:00:20 #36 [debug] buildProject / fullPath: │
│ C:\home\git\polyglot\target\polyglot\builder\Builder\Builder.fsproj │
│ 00:00:20 #37 [debug] executeAsync / options: { Command = │
│ "dotnet publish │
│ "C:\home\git\polyglot\target/polyglot/builder\Builder\Builder.fsproj" │
│ --configuration Release --output "C:\home\git\polyglot\apps\builder\dist" │
│ --runtime linux-x64" │
│ WorkingDirectory = Some │
│ "C:\home\git\polyglot\target\polyglot\builder\Builder" │
│ CancellationToken = None │
│ OnLine = None } │
│ 00:00:21 #38 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f │
│ for .NET │
│ 00:00:21 #39 [verbose] > Determining projects to restore... │
│ 00:00:23 #40 [verbose] > Restored │
│ C:\home\git\polyglot\target\polyglot\builder\Builder\Builder.fsproj (in 814 │
│ ms). │
│ 00:00:23 #41 [verbose] > │
│ C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.2 │
│ 4101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInferen │
│ ce.targets(313,5): message NETSDK1057: You are using a preview version of │
│ .NET. See: https://aka.ms/dotnet-support-policy [ │
│ C:\home\git\polyglot\target\polyglot\builder\Builder\Builder.fsproj] │
│ 00:00:31 #42 [verbose] > Builder -> │
│ C:\home\git\polyglot\target\polyglot\builder\Builder\bin\Release\net9.0\linu │
│ x-x64\Builder.dll │
│ 00:00:33 #43 [verbose] > Builder -> │
│ C:\home\git\polyglot\apps\builder\dist\ │
│ 00:00:33 #44 [debug] executeAsync / exitCode: 0 / output.Length: 692 │
│ 00:00:33 #45 [debug] executeAsync / options: { Command = │
│ "dotnet publish │
│ "C:\home\git\polyglot\target/polyglot/builder\Builder\Builder.fsproj" │
│ --configuration Release --output "C:\home\git\polyglot\apps\builder\dist" │
│ --runtime win-x64" │
│ WorkingDirectory = Some │
│ "C:\home\git\polyglot\target\polyglot\builder\Builder" │
│ CancellationToken = None │
│ OnLine = None } │
│ 00:00:34 #46 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f │
│ for .NET │
│ 00:00:34 #47 [verbose] > Determining projects to restore... │
│ 00:00:35 #48 [verbose] > Restored │
│ C:\home\git\polyglot\target\polyglot\builder\Builder\Builder.fsproj (in 404 │
│ ms). │
│ 00:00:35 #49 [verbose] > │
│ C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.2 │
│ 4101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInferen │
│ ce.targets(313,5): message NETSDK1057: You are using a preview version of │
│ .NET. See: https://aka.ms/dotnet-support-policy [ │
│ C:\home\git\polyglot\target\polyglot\builder\Builder\Builder.fsproj] │
│ 00:00:42 #50 [verbose] > Builder -> │
│ C:\home\git\polyglot\target\polyglot\builder\Builder\bin\Release\net9.0\win- │
│ x64\Builder.dll │
│ 00:00:50 #51 [verbose] > Builder -> │
│ C:\home\git\polyglot\apps\builder\dist\ │
│ 00:00:50 #52 [debug] executeAsync / exitCode: 0 / output.Length: 690 │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
[NbConvertApp] Converting notebook Builder.dib.ipynb to html
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
validate(nb)
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
return _pygments_highlight(
[NbConvertApp] Writing 328219 bytes to Builder.dib.html
In [ ]:
{ . "$ScriptDir/../apps/parser/build.ps1" } | Invoke-Block
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ # DibParser (Polyglot) │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/fsharp/Notebooks.dib
#!import ../../lib/fsharp/Testing.dib
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
spNetCore.Html.Abstractions.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.Formatting.dll"
open System
open System.IO
open System.Text
open Microsoft.DotNet.Interactive.Formatting
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
open type Microsoft.DotNet.Interactive.Kernel
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
Formatter.ListExpansionLimit <- 100
── fsharp - import ─────────────────────────────────────────────────────────────
#r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
type AssertExceptionFormatter (ex) =
member _.Text =
ex.ToString()
.Replace("32m", "<span style=\"color: green;\">")
.Replace("36m", "</span>")
.Replace("31m", "<span style=\"color: red;\">")
.Replace("\n", "<br/>\n")
Formatter.Register<AssertExceptionFormatter> ((fun (x :
AssertExceptionFormatter) -> x.Text), "text/html")
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __expect fn log expected actual =
if log then printfn $"{actual.ToDisplayString ()}"
try
"Testing.__expect" |> fn actual expected
with :? Expecto.AssertException as ex ->
AssertExceptionFormatter(ex).Display () |> ignore
failwith (ex.GetType().FullName)
let inline __contains log expected actual = __expect Expecto.Expect.contains log
expected actual
let inline _contains expected actual = __contains true expected actual
let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
expected actual
let inline _assertEqual expected actual = __assertEqual true expected actual
let inline __isGreaterThan log expected actual = __expect
Expecto.Expect.isGreaterThan log ex...
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __isBetween log a b actual =
let inline isBetween actual (a, b) _ =
__isGreaterThanOrEqual log a actual
__isLessThanOrEqual log b actual
__expect isBetween log (a, b) actual
let inline _isBetween a b actual = __isBetween true a b actual
── pwsh ────────────────────────────────────────────────────────────────────────
ls ~/.nuget/packages/argu
╭─[ 664.14ms - stdout ]────────────────────────────────────────────────────────╮
│ │
│ Directory: C:\Users\i574n\.nuget\packages\argu │
│ │
│ Mode LastWriteTime Length[ │
│ 32;1m Name │
│ ---- ------------- ------ [ │
│ 32;1m---- │
│ d---- 2023-05-17 3:38 PM 6.1.1 │
│ d---- 2024-03-12 8:22 PM 6.1.4 │
│ d---- 2024-01-29 5:12 PM 6.1.5 │
│ d---- 2024-03-12 8:20 PM 6.2.0 │
│ d---- 2024-02-23 6:50 PM 6.2.1 │
│ d---- 2024-03-12 8:15 PM 6.2.2 │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
#r
@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan
dard2.1/FSharp.Control.AsyncSeq.dll"
#r
@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.
0/System.Reactive.dll"
#r
@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/
netstandard2.0/System.Reactive.Linq.dll"
#r
@"../../../../../../../.nuget/packages/argu/6.2.2/lib/netstandard2.0/Argu.dll"
#r
@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li
b/net6.0/System.CommandLine.dll"
#r
@"../../../../../../../.nuget/packages/fparsec/2.0.0-beta2/lib/netstandard2.1/FP
arsec.dll"
#r
@"../../../../../../../.nuget/packages/fparsec/2.0.0-beta2/lib/netstandard2.1/FP
arsecCS.dll"
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/spiral/common.fsx
#!import ../../lib/spiral/sm.fsx
#!import ../../lib/spiral/date_time.fsx
#!import ../../lib/spiral/file_system.fsx
#!import ../../lib/spiral/trace.fsx
#!import ../../lib/spiral/lib.fsx
#!import ../../lib/fsharp/Common.fs
#!import ../../lib/fsharp/CommonFSharp.fs
#!import ../../lib/fsharp/Async.fs
#!import ../../lib/fsharp/AsyncSeq.fs
#!import ../../lib/fsharp/Runtime.fs
#!import ../../lib/fsharp/FileSystem.fs
── fsharp - import ─────────────────────────────────────────────────────────────
type [[<Struct>]] US0 =
| US0_0
| US0_1
and [[<Struct>]] US1 =
| US1_0 of f0_0 : US0
| US1_1
let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
let v1 : System.IDisposable option = None
let mutable _v1 = v1
#if FABLE_COMPILER_RUST && !WASM && !CONTRACT
let v2 : System.IDisposable = null |> unbox<System.IDisposable>
v2
#endif
#if FABLE_COMPILER_RUST && WASM
let v3 : System.IDisposable = null |> unbox<System.IDisposable>
v3
#endif
#if FABLE_COMPILER_RUST && CONTRACT
let v4 : System.IDisposable = null |> unbox<System.IDisposable>
v4
#endif
#if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
!WASM && !CONTRACT
let v5 : System.ID...
── fsharp - import ─────────────────────────────────────────────────────────────
type Mut0 = {mutable l0 : int32; mutable l1 : string}
and Mut1 = {mutable l0 : int32}
let rec closure1 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.Contains v0
v2
and closure0 () (v0 : string) : (string -> bool) =
closure1(v0)
and closure3 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.EndsWith v0
v2
and closure2 () (v0 : string) : (string -> bool) =
closure3(v0)
and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
let v3 : string = v2.PadLeft (v0, v1)
v3
and closure5 (v0 : int32) (v1 : char) : (string -> string) =
closure6(v0, v1)
and closure4 () (v0 : int32) : (char -> (string -> string)) =
closure5(v0)
and closure8 (v0 : int32) (v1 : string) : string =
let v2 : stri...
── fsharp - import ─────────────────────────────────────────────────────────────
let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
let v2 : (System.Guid -> string) = _.ToString()
let v3 : string = v2 v0
let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
v5
and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
closure1(v0)
and closure5 (v0 : string, v1 : string) (v2 : string) : string =
let v3 : string = v2.Replace (v0, v1)
v3
and closure4 (v0 : string) (v1 : string) : (string -> string) =
closure5(v0, v1)
and closure3 () (v0 : string) : (string -> (string -> string)) =
closure4(v0)
and method0 () : (string -> (string -> (string -> string))) =
closure3()
and closure2 (...
── fsharp - import ─────────────────────────────────────────────────────────────
#if FABLE_COMPILER // file_system.types
[[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
[[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
base64_DecodeError = class end
[[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
serde_json_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
serde_json_Value = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
serde_wasm_bindgen_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
── fsharp - import ─────────────────────────────────────────────────────────────
module State = let mutable trace_state = None
type [[<Struct>]] US0 =
| US0_0
| US0_1
| US0_2
| US0_3
| US0_4
and Mut0 = {mutable l0 : int64}
and Mut1 = {mutable l0 : bool}
and Mut2 = {mutable l0 : US0}
and [[<Struct>]] US1 =
| US1_0 of f0_0 : int64
| US1_1
and [[<Struct>]] US2 =
| US2_0 of f0_0 : int64
| US2_1
let rec method1 (v0 : int64 option) : int64 option =
v0
and method2 (v0 : int64 option) : int64 option =
v0
and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
let v0 : Mut1 = {l0 = true} : Mut1
let v1 : Mut0 = {l0 = 0L} : Mut0
let v2 : US0 = US0_0
let v3 : Mut2 = {l0 = v2} : Mut2
let v4 : Mut1 = {l0 = false} : Mut1
let v5 : int64 option option = None
...
── fsharp - import ─────────────────────────────────────────────────────────────
module SpiralTrace =
let get_trace_state () =
#if !INTERACTIVE
Trace.get_trace_state ()
#else
get_trace_state ()
#endif
let trace x =
#if !INTERACTIVE
Trace.trace x
#else
trace x
#endif
let US0_0 =
#if !INTERACTIVE
Trace.US0_0
#else
US0_0
#endif
let US0_1 =
#if !INTERACTIVE
Trace.US0_1
#else
US0_1
#endif
let US0_2 =
#if !INTERACTIVE
Trace.US0_2
#else
US0_2
#endif
let US0_3 =
#if !INTERACTIVE
Trace.US0_3
#else
US0_3
#endif
let US0_4 =
#if !INTERACTIVE
Trace.US0_4
#else
US0_4
#endif
#if !FABLE_COMPILER && !WASM && !CONTRACT
module SpiralDateTime =
let format x =
#if !INTERACTIVE
Date_ti...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Common =
#if !INTERACTIVE
open Lib
#endif
let nl = System.Environment.NewLine
let q = @""""
let inline cons head tail = head :: tail
/// ## memoize
let inline memoize fn =
let result = lazy fn ()
fun () -> result.Value
/// ## TraceLevel
type TraceLevel =
| Verbose
| Debug
| Info
| Warning
| Critical
let inline getLocals () = ""
/// ## trace
let to_trace_level = function
| Verbose -> SpiralTrace.US0_0
| Debug -> SpiralTrace.US0_1
| Info -> SpiralTrace.US0_2
| Warning -> SpiralTrace.US0_3
| Critical -> SpiralTrace.US0_4
let trace level fn g...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module CommonFSharp =
open Common
/// ## getUnionCaseName
let inline getUnionCaseName<'T> (x: 'T) =
match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with
| case, _ -> case.Name
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Async =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## choice
let inline choice asyncs = async {
let e = Event<_> ()
use cts = new System.Threading.CancellationTokenSource ()
let fn =
asyncs
|> Seq.map (fun a -> async {
let! x = a
e.Trigger x
})
|> Async.Parallel
|> Async.Ignore
Async.Start (fn, cts.Token)
let! result = Async.AwaitEvent e.Publish
cts.Cancel ()
return result
}
/// ## map
let inline map fn a = async {
let! x = a
return fn x
}
/// ## catch
let inline catch a =
...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module AsyncSeq =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## subscribeEvent
let inline subscribeEvent (event: IEvent<'H, 'A>) map =
let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,
'A>(event.AddHandler, event.RemoveHandler)
System.Reactive.Linq.Observable.Select (observable, fun event -> map
event.EventArgs)
|> FSharp.Control.AsyncSeq.ofObservableBuffered
let subscribeToken (token : System.Threading.CancellationToken) =
let tcs = new System.Threading.Tasks.TaskCompletionSource ()
System.Action tcs.SetResult |> token.Register |> ignore
let start = System.DateTime.Now.Ticks
FSharp.Control.A...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Runtime =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## isWindows
let isWindows =
fun () ->
System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform
System.Runtime.InteropServices.OSPlatform.Windows
|> memoize
/// ## getExecutableSuffix
let inline getExecutableSuffix () =
if isWindows ()
then ".exe"
else ""
/// ## splitCommand
type private CommandParseStep =
| Start
| Path of quoted: bool
| Arguments
let splitCommand (command: string) =
let rec loop (path, args) chars step =
match chars, step with
| ('"' | '\'') ...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module FileSystem =
#if !INTERACTIVE
open Lib
#endif
open Common
open SpiralFileSystem.Operators
/// ## watchDirectory
[[<RequireQualifiedAccess>]]
type FileSystemChangeType =
| Failure
| Changed
| Created
| Deleted
| Renamed
[[<RequireQualifiedAccess>]]
type FileSystemChange =
| Failure of exn: exn
| Changed of path: string * content: string option
| Created of path: string * content: string option
| Deleted of path: string
| Renamed of oldPath: string * (string * string option)
let inline watchDirectoryWithFilter filter shouldReadContent path =
let fullPath = path |> Sys...
── fsharp ──────────────────────────────────────────────────────────────────────
#if !INTERACTIVE
open Lib
#endif
── fsharp ──────────────────────────────────────────────────────────────────────
open Common
open FParsec
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## escapeCell (test) │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let inline escapeCell input =
input
|> SpiralSm.split "\n"
|> Array.map (function
| line when line |> SpiralSm.starts_with "\\#!" || line |>
SpiralSm.starts_with "\\#r" ->
System.Text.RegularExpressions.Regex.Replace (line, "^\\\\#", "#")
| line -> line
)
|> SpiralSm.concat "\n"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
$"a{nl}\\#!magic{nl}b{nl}"
|> escapeCell
|> _assertEqual (
$"a{nl}#!magic{nl}b{nl}"
)
╭─[ 57.92ms - stdout ]─────────────────────────────────────────────────────────╮
│ a │
│ #!magic │
│ b │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## magicMarker │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let magicMarker : Parser<string, unit> = pstring "#!"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!magic"
|> run magicMarker
|> _assertEqual (
Success ("#!", (), Position ("", 2, 1, 3))
)
╭─[ 49.33ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item1: #! │
│ Item2: <null> │
│ Item3: Position │
│ Index: 2 │
│ Line: 1 │
│ Column: 3 │
│ StreamName: │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"##!magic"
|> run magicMarker
|> _assertEqual (
Failure (
$"Error in Ln: 1 Col: 1{nl}##!magic{nl}^{nl}Expecting: '#!'{nl}",
ParserError (
Position ("", 0, 1, 1),
(),
ErrorMessageList (ExpectedString "#!")
),
()
)
)
╭─[ 54.80ms - stdout ]─────────────────────────────────────────────────────────╮
│ Failure │
│ Item1: Error in Ln: 1 Col: 1 │
│ ##!magic │
│ ^ │
│ Expecting: '#!' │
│ │
│ Item2: ParserError │
│ Position: Position │
│ Index: 0 │
│ Line: 1 │
│ Column: 1 │
│ StreamName: │
│ UserState: <null> │
│ Messages: ErrorMessageList │
│ Head: ExpectedString │
│ String: #! │
│ Type: ExpectedString │
│ Tail: <null> │
│ Item3: <null> │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## magicCommand │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let magicCommand =
magicMarker
>>. manyTill anyChar newline
|>> (System.String.Concat >> SpiralSm.trim)
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!magic
a"
|> run magicCommand
|> _assertEqual (
Success ("magic", (), Position ("", 8, 2, 1))
)
╭─[ 58.30ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item1: magic │
│ Item2: <null> │
│ Item3: Position │
│ Index: 8 │
│ Line: 2 │
│ Column: 1 │
│ StreamName: │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
" #!magic
a"
|> run magicCommand
|> _assertEqual (
Failure (
$"Error in Ln: 1 Col: 1{nl} #!magic{nl}^{nl}Expecting: '#!'{nl}",
ParserError (
Position ("", 0, 1, 1),
(),
ErrorMessageList (ExpectedString "#!")
),
()
)
)
╭─[ 41.12ms - stdout ]─────────────────────────────────────────────────────────╮
│ Failure │
│ Item1: Error in Ln: 1 Col: 1 │
│ #!magic │
│ ^ │
│ Expecting: '#!' │
│ │
│ Item2: ParserError │
│ Position: Position │
│ Index: 0 │
│ Line: 1 │
│ Column: 1 │
│ StreamName: │
│ UserState: <null> │
│ Messages: ErrorMessageList │
│ Head: ExpectedString │
│ String: #! │
│ Type: ExpectedString │
│ Tail: <null> │
│ Item3: <null> │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## content │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let content =
(newline >>. magicMarker) <|> (eof >>. preturn "")
|> attempt
|> lookAhead
|> manyTill anyChar
|>> (System.String.Concat >> SpiralSm.trim)
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!magic
a
"
|> run content
|> _assertEqual (
Success ("#!magic
a", (), Position ("", 14, 7, 1))
)
╭─[ 40.04ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item1: #!magic │
│ │
│ │
│ a │
│ Item2: <null> │
│ Item3: Position │
│ Index: 14 │
│ Line: 7 │
│ Column: 1 │
│ StreamName: │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## Block │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
type Block =
{
magic : string
content : string
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## block │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let block =
pipe2
magicCommand
content
(fun magic content ->
{
magic = magic
content = content
})
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!magic
a
"
|> run block
|> _assertEqual (
Success (
{ magic = "magic"; content = "a" },
(),
Position ("", 14, 7, 1)
)
)
╭─[ 44.82ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item1: Block │
│ magic: magic │
│ content: a │
│ Item2: <null> │
│ Item3: Position │
│ Index: 14 │
│ Line: 7 │
│ Column: 1 │
│ StreamName: │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## blocks │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let blocks =
skipMany newline
>>. sepEndBy block (skipMany1 newline)
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!magic1
a
\#!magic2
b
"
|> escapeCell
|> run blocks
|> _assertEqual (
Success (
[[
{ magic = "magic1"; content = "a" }
{ magic = "magic2"; content = "b" }
]],
(),
Position ("", 26, 9, 1)
)
)
╭─[ 53.03ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item1: FSharpList<Block> │
│ - magic: magic1 │
│ content: a │
│ - magic: magic2 │
│ content: b │
│ Item2: <null> │
│ Item3: Position │
│ Index: 26 │
│ Line: 9 │
│ Column: 1 │
│ StreamName: │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## Output │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
type Output =
| Fs
| Md
| Spi
| Spir
let inline kernelOutputs magic =
match magic with
| "fsharp" -> [[ Fs ]]
| "markdown" -> [[ Md ]]
| "spiral" -> [[ Spi; Spir ]]
| _ -> [[]]
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## formatBlock │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline formatBlock output (block : Block) =
match output, block with
| output, { magic = "markdown"; content = content } ->
let markdownComment =
match output with
| Spi | Spir -> "// // "
| Fs -> "/// "
| _ -> ""
content
|> SpiralSm.split "\n"
|> Array.map (SpiralSm.trim_end [[||]])
|> Array.filter (SpiralSm.ends_with " (test)" >> not)
|> Array.map (function
| "" -> markdownComment |> SpiralSm.trim
| line -> System.Text.RegularExpressions.Regex.Replace (line,
"^\\s*", $"$&{markdownComment}")
)
|> SpiralSm.concat "\n"
| Fs, { magic = "fsharp"; content = content } ->
let trimmedContent = content |> SpiralSm.trim
if trimmedContent |> SpiralSm.starts_with "//// test" || trimmedContent
|> SpiralSm.starts_with "//// ignore"
then ""
else
content
|> SpiralSm.split "\n"
|> Array.filter (SpiralSm.trim_start [[||]] >> SpiralSm.starts_with
"#r" >> not)
|> SpiralSm.concat "\n"
| (Spi | Spir), { magic = "spiral"; content = content } ->
let trimmedContent = content |> SpiralSm.trim
if trimmedContent |> SpiralSm.starts_with "// // test" || trimmedContent
|> SpiralSm.starts_with "// // ignore"
then ""
else content
| _ -> ""
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!markdown
a
b
c
\#!markdown
c
\#!fsharp
let a = 1"
|> escapeCell
|> run block
|> function
| Success (block, _, _) -> formatBlock Fs block
| Failure (msg, _, _) -> failwith msg
|> _assertEqual "/// a
///
/// b
///
/// c"
╭─[ 62.35ms - stdout ]─────────────────────────────────────────────────────────╮
│ /// a │
│ /// │
│ /// b │
│ /// │
│ /// c │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## formatBlocks │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline formatBlocks output blocks =
blocks
|> List.map (formatBlock output)
|> List.filter ((<>) "")
|> SpiralSm.concat "\n\n"
|> fun s -> s + "\n"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"#!markdown
a
b
\#!markdown
c
\#!fsharp
let a = 1
\#!markdown
d (test)
\#!fsharp
//// test
let a = 2
\#!markdown
e
\#!fsharp
let a = 3"
|> escapeCell
|> run blocks
|> function
| Success (blocks, _, _) -> formatBlocks Fs blocks
| Failure (msg, _, _) -> failwith msg
|> _assertEqual "/// a
///
/// b
/// c
let a = 1
/// e
let a = 3
"
╭─[ 64.06ms - stdout ]─────────────────────────────────────────────────────────╮
│ /// a │
│ /// │
│ /// b │
│ │
│ /// c │
│ │
│ let a = 1 │
│ │
│ /// e │
│ │
│ let a = 3 │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## parse │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline parse output input =
match run blocks input with
| Success (blocks, _, _) ->
let blocks =
blocks
|> List.filter (fun block ->
block.magic |> kernelOutputs |> List.contains output ||
block.magic = "markdown"
)
match blocks with
| { magic = "markdown"; content = content } :: _
when output = Fs
&& content |> SpiralSm.starts_with "# "
&& content |> SpiralSm.ends_with ")"
->
let inline indentBlock (block : Block) =
{ block with
content =
block.content
|> SpiralSm.split "\n"
|> Array.fold
(fun (lines, isMultiline) line ->
let trimmedLine = line |> SpiralSm.trim
if trimmedLine = ""
then "" :: lines, isMultiline
else
let inline singleQuoteLine () =
trimmedLine |> Seq.sumBy ((=) '"' >>
System.Convert.ToInt32) = 1
&& trimmedLine |> SpiralSm.contains
@"'""'" |> not
&& trimmedLine |> SpiralSm.ends_with "{"
|> not
&& trimmedLine |> SpiralSm.ends_with
"{|" |> not
&& trimmedLine |> SpiralSm.starts_with
"}" |> not
&& trimmedLine |> SpiralSm.starts_with
"|}" |> not
match isMultiline, trimmedLine |>
SpiralSm.split_string [[| $"{q}{q}{q}" |]] with
| false, [[| _; _ |]] ->
$" {line}" :: lines, true
| true, [[| _; _ |]] ->
line :: lines, false
| false, _ when singleQuoteLine () ->
$" {line}" :: lines, true
| false, _ when line |> SpiralSm.starts_with
"#" && block.magic = "fsharp" ->
line :: lines, false
| false, _ ->
$" {line}" :: lines, false
| true, _ when singleQuoteLine () && line |>
SpiralSm.starts_with " " ->
$" {line}" :: lines, false
| true, _ when singleQuoteLine () ->
line :: lines, false
| true, _ ->
line :: lines, true
)
([[]], false)
|> fst
|> List.rev
|> SpiralSm.concat "\n"
}
let moduleName, namespaceName =
System.Text.RegularExpressions.Regex.Match (content, @"# (.*)
\((.*)\)$")
|> fun m -> m.Groups.[[1]].Value, m.Groups.[[2]].Value
let moduleBlock =
{
magic = "fsharp"
content =
$"#if !INTERACTIVE
namespace {namespaceName}
#endif
module {moduleName} ="
}
blocks
|> List.indexed
|> List.fold
(fun blocks (index, block) ->
match index with
| 0 -> blocks
| 1 -> indentBlock block :: moduleBlock :: blocks
| _ -> indentBlock block :: blocks
)
[[]]
|> List.rev
| _ -> blocks
|> Result.Ok
| Failure (errorMsg, _, _) -> Result.Error errorMsg
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let example1 =
$"""#!meta
{{"kernelInfo":{{"defaultKernelName":"fsharp","items":[[{{"aliases":[[]],"name":
"fsharp"}},{{"aliases":[[]],"name":"fsharp"}}]]}}}}
\#!markdown
# TestModule (TestNamespace)
\#!fsharp
\#!import file.dib
\#!fsharp
\#r "nuget:Expecto"
\#!markdown
## ParserLibrary
\#!fsharp
open System
\#!markdown
## x (test)
\#!fsharp
//// ignore
let x = 1
\#!spiral
// // test
inl x = 0i32
\#!spiral
inl x = 0i32
\#!markdown
### TextInput
\#!fsharp
let str1 = "abc
def"
let str2 =
"abc\
def"
let str3 =
$"1{{
1
}}1"
let str4 =
$"1{{({{|
a = 1
|}}).a}}1"
let str5 =
"abc \
def"
let x =
match '"' with
| '"' -> true
| _ -> false
let long1 = {q}{q}{q}a{q}{q}{q}
let long2 =
{q}{q}{q}
a
{q}{q}{q}
\#!fsharp
type Position =
{{
#if INTERACTIVE
line : string
#else
line : int
#endif
column : int
}}"""
|> escapeCell
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
example1
|> parse Fs
|> Result.toOption
|> Option.get
|> (formatBlocks Fs)
|> _assertEqual $"""#if !INTERACTIVE
namespace TestNamespace
#endif
module TestModule =
/// ## ParserLibrary
open System
/// ### TextInput
let str1 = "abc
def"
let str2 =
"abc\
def"
let str3 =
$"1{{
1
}}1"
let str4 =
$"1{{({{|
a = 1
|}}).a}}1"
let str5 =
"abc \
def"
let x =
match '"' with
| '"' -> true
| _ -> false
let long1 = {q}{q}{q}a{q}{q}{q}
let long2 =
{q}{q}{q}
a
{q}{q}{q}
type Position =
{{
#if INTERACTIVE
line : string
#else
line : int
#endif
column : int
}}
"""
╭─[ 184.13ms - stdout ]────────────────────────────────────────────────────────╮
│ #if !INTERACTIVE │
│ namespace TestNamespace │
│ #endif │
│ │
│ module TestModule = │
│ │
│ /// ## ParserLibrary │
│ │
│ open System │
│ │
│ /// ### TextInput │
│ │
│ let str1 = "abc │
│ def" │
│ │
│ let str2 = │
│ "abc\ │
│ def" │
│ │
│ let str3 = │
│ $"1{ │
│ 1 │
│ }1" │
│ │
│ let str4 = │
│ $"1{({| │
│ a = 1 │
│ |}).a}1" │
│ │
│ let str5 = │
│ "abc \ │
│ def" │
│ │
│ let x = │
│ match '"' with │
│ | '"' -> true │
│ | _ -> false │
│ │
│ let long1 = """a""" │
│ │
│ let long2 = │
│ """ │
│ a │
│ """ │
│ │
│ type Position = │
│ { │
│ #if INTERACTIVE │
│ line : string │
│ #else │
│ line : int │
│ #endif │
│ column : int │
│ } │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
example1
|> parse Md
|> Result.toOption
|> Option.get
|> (formatBlocks Md)
|> _assertEqual "# TestModule (TestNamespace)
## ParserLibrary
### TextInput
"
╭─[ 182.63ms - stdout ]────────────────────────────────────────────────────────╮
│ # TestModule (TestNamespace) │
│ │
│ ## ParserLibrary │
│ │
│ ### TextInput │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
example1
|> parse Spi
|> Result.toOption
|> Option.get
|> (formatBlocks Spi)
|> _assertEqual "// // # TestModule (TestNamespace)
// // ## ParserLibrary
inl x = 0i32
// // ### TextInput
"
╭─[ 174.37ms - stdout ]────────────────────────────────────────────────────────╮
│ // // # TestModule (TestNamespace) │
│ │
│ // // ## ParserLibrary │
│ │
│ inl x = 0i32 │
│ │
│ // // ### TextInput │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## parseDibCode │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline parseDibCode output file = async {
let getLocals () = $"output: {output} / file: {file} / {getLocals ()}"
trace Debug (fun () -> "parseDibCode") getLocals
let! input = file |> SpiralFileSystem.read_all_text_async
match parse output input with
| Result.Ok blocks -> return blocks |> formatBlocks output
| Result.Error msg -> return failwith msg
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## writeDibCode │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline writeDibCode output path = async {
let getLocals () = $"output: {output} / path: {path} / {getLocals ()}"
trace Debug (fun () -> "writeDibCode") getLocals
let! result = parseDibCode output path
let outputPath = path |> SpiralSm.replace ".dib" $".{output |> string |>
SpiralSm.to_lower}"
do! result |> SpiralFileSystem.write_all_text_async outputPath
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## Arguments │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
[[<RequireQualifiedAccess>]]
type Arguments =
| [[<Argu.ArguAttributes.MainCommand; Argu.ArguAttributes.Mandatory>]]
File of file : string * Output
interface Argu.IArgParserTemplate with
member s.Usage =
match s with
| File _ -> nameof File
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
Argu.ArgumentParser.Create<Arguments>().PrintUsage ()
╭─[ 117.81ms - return value ]──────────────────────────────────────────────────╮
│ USAGE: dotnet-repl [--help] <file> <fs|md|spi|spir> │
│ │
│ FILE: │
│ │
│ <file> <fs|md|spi|spir> │
│ File │
│ │
│ OPTIONS: │
│ │
│ --help display this list of options. │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## main │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let main args =
let argsMap = args |> Runtime.parseArgsMap<Arguments>
let files =
argsMap.[[nameof Arguments.File]]
|> List.map (function
| Arguments.File (path, output) -> path, output
)
files
|> List.map (fun (path, output) -> path |> writeDibCode output)
|> Async.Parallel
|> Async.Ignore
|> Async.runWithTimeout 30000
|> function
| Some () -> 0
| None -> 1
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let args =
System.Environment.GetEnvironmentVariable "ARGS"
|> Runtime.splitArgs
|> Seq.toArray
match args with
| [[||]] -> 0
| args -> if main args = 0 then 0 else failwith "main failed"
╭─[ 155.14ms - return value ]──────────────────────────────────────────────────╮
│ <div class="dni-plaintext"><pre>0</pre></div><style> │
│ .dni-code-hint { │
│ font-style: italic; │
│ overflow: hidden; │
│ white-space: nowrap; │
│ } │
│ .dni-treeview { │
│ white-space: nowrap; │
│ } │
│ .dni-treeview td { │
│ vertical-align: top; │
│ text-align: start; │
│ } │
│ details.dni-treeview { │
│ padding-left: 1em; │
│ } │
│ table td { │
│ text-align: start; │
│ } │
│ table tr { │
│ vertical-align: top; │
│ margin: 0em 0px; │
│ } │
│ table tr td pre │
│ { │
│ vertical-align: top !important; │
│ margin: 0em 0px !important; │
│ } │
│ table th { │
│ text-align: start; │
│ } │
│ </style> │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 169.44ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:00 #1 [debug] writeDibCode / output: Fs / path: DibParser.dib │
│ 00:00:00 #2 [debug] parseDibCode / output: Fs / file: DibParser.dib │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
[NbConvertApp] Converting notebook DibParser.dib.ipynb to html
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
validate(nb)
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
return _pygments_highlight(
[NbConvertApp] Writing 369746 bytes to DibParser.dib.html
00:00:00 #1 [debug] persistCodeProject / packages: [Argu; FParsec; FSharp.Control.AsyncSeq; ... ] / modules: [lib/spiral/common.fsx; lib/spiral/sm.fsx; lib/spiral/date_time.fsx; ... ] / name: DibParser / code.Length: 9188
00:00:00 #2 [debug] buildProject / fullPath: C:\home\git\polyglot\target\polyglot\builder\DibParser\DibParser.fsproj
00:00:00 #3 [debug] executeAsync / options: { Command =
"dotnet publish "C:\home\git\polyglot\target/polyglot/builder\DibParser\DibParser.fsproj" --configuration Release --output "C:\home\git\polyglot\apps\parser\dist" --runtime linux-x64"
WorkingDirectory =
Some "C:\home\git\polyglot\target\polyglot\builder\DibParser"
CancellationToken = None
OnLine = None }
00:00:00 #4 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f for .NET
00:00:01 #5 [verbose] > Determining projects to restore...
00:00:02 #6 [verbose] > Restored C:\home\git\polyglot\target\polyglot\builder\DibParser\DibParser.fsproj (in 465 ms).
00:00:02 #7 [verbose] > C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.24101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(313,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\target\polyglot\builder\DibParser\DibParser.fsproj]
00:00:10 #8 [verbose] > DibParser -> C:\home\git\polyglot\target\polyglot\builder\DibParser\bin\Release\net9.0\linux-x64\DibParser.dll
00:00:11 #9 [verbose] > DibParser -> C:\home\git\polyglot\apps\parser\dist\
00:00:11 #10 [debug] executeAsync / exitCode: 0 / output.Length: 707
00:00:11 #11 [debug] executeAsync / options: { Command =
"dotnet publish "C:\home\git\polyglot\target/polyglot/builder\DibParser\DibParser.fsproj" --configuration Release --output "C:\home\git\polyglot\apps\parser\dist" --runtime win-x64"
WorkingDirectory =
Some "C:\home\git\polyglot\target\polyglot\builder\DibParser"
CancellationToken = None
OnLine = None }
00:00:12 #12 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f for .NET
00:00:12 #13 [verbose] > Determining projects to restore...
00:00:13 #14 [verbose] > Restored C:\home\git\polyglot\target\polyglot\builder\DibParser\DibParser.fsproj (in 412 ms).
00:00:13 #15 [verbose] > C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.24101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(313,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\target\polyglot\builder\DibParser\DibParser.fsproj]
00:00:21 #16 [verbose] > DibParser -> C:\home\git\polyglot\target\polyglot\builder\DibParser\bin\Release\net9.0\win-x64\DibParser.dll
00:00:26 #17 [verbose] > DibParser -> C:\home\git\polyglot\apps\parser\dist\
00:00:26 #18 [debug] executeAsync / exitCode: 0 / output.Length: 705
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ # JsonParser (Polyglot) │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/fsharp/Notebooks.dib
#!import ../../lib/fsharp/Testing.dib
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
spNetCore.Html.Abstractions.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.Formatting.dll"
open System
open System.IO
open System.Text
open Microsoft.DotNet.Interactive.Formatting
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
open type Microsoft.DotNet.Interactive.Kernel
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
Formatter.ListExpansionLimit <- 100
── fsharp - import ─────────────────────────────────────────────────────────────
#r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
type AssertExceptionFormatter (ex) =
member _.Text =
ex.ToString()
.Replace("32m", "<span style=\"color: green;\">")
.Replace("36m", "</span>")
.Replace("31m", "<span style=\"color: red;\">")
.Replace("\n", "<br/>\n")
Formatter.Register<AssertExceptionFormatter> ((fun (x :
AssertExceptionFormatter) -> x.Text), "text/html")
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __expect fn log expected actual =
if log then printfn $"{actual.ToDisplayString ()}"
try
"Testing.__expect" |> fn actual expected
with :? Expecto.AssertException as ex ->
AssertExceptionFormatter(ex).Display () |> ignore
failwith (ex.GetType().FullName)
let inline __contains log expected actual = __expect Expecto.Expect.contains log
expected actual
let inline _contains expected actual = __contains true expected actual
let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
expected actual
let inline _assertEqual expected actual = __assertEqual true expected actual
let inline __isGreaterThan log expected actual = __expect
Expecto.Expect.isGreaterThan log ex...
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __isBetween log a b actual =
let inline isBetween actual (a, b) _ =
__isGreaterThanOrEqual log a actual
__isLessThanOrEqual log b actual
__expect isBetween log (a, b) actual
let inline _isBetween a b actual = __isBetween true a b actual
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/spiral/common.fsx
#!import ../../lib/spiral/sm.fsx
#!import ../../lib/spiral/date_time.fsx
#!import ../../lib/spiral/file_system.fsx
#!import ../../lib/spiral/trace.fsx
#!import ../../lib/spiral/lib.fsx
#!import ../../lib/fsharp/Common.fs
#!import Parser.fs
── fsharp - import ─────────────────────────────────────────────────────────────
type [[<Struct>]] US0 =
| US0_0
| US0_1
and [[<Struct>]] US1 =
| US1_0 of f0_0 : US0
| US1_1
let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
let v1 : System.IDisposable option = None
let mutable _v1 = v1
#if FABLE_COMPILER_RUST && !WASM && !CONTRACT
let v2 : System.IDisposable = null |> unbox<System.IDisposable>
v2
#endif
#if FABLE_COMPILER_RUST && WASM
let v3 : System.IDisposable = null |> unbox<System.IDisposable>
v3
#endif
#if FABLE_COMPILER_RUST && CONTRACT
let v4 : System.IDisposable = null |> unbox<System.IDisposable>
v4
#endif
#if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
!WASM && !CONTRACT
let v5 : System.ID...
── fsharp - import ─────────────────────────────────────────────────────────────
type Mut0 = {mutable l0 : int32; mutable l1 : string}
and Mut1 = {mutable l0 : int32}
let rec closure1 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.Contains v0
v2
and closure0 () (v0 : string) : (string -> bool) =
closure1(v0)
and closure3 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.EndsWith v0
v2
and closure2 () (v0 : string) : (string -> bool) =
closure3(v0)
and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
let v3 : string = v2.PadLeft (v0, v1)
v3
and closure5 (v0 : int32) (v1 : char) : (string -> string) =
closure6(v0, v1)
and closure4 () (v0 : int32) : (char -> (string -> string)) =
closure5(v0)
and closure8 (v0 : int32) (v1 : string) : string =
let v2 : stri...
── fsharp - import ─────────────────────────────────────────────────────────────
let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
let v2 : (System.Guid -> string) = _.ToString()
let v3 : string = v2 v0
let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
v5
and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
closure1(v0)
and closure5 (v0 : string, v1 : string) (v2 : string) : string =
let v3 : string = v2.Replace (v0, v1)
v3
and closure4 (v0 : string) (v1 : string) : (string -> string) =
closure5(v0, v1)
and closure3 () (v0 : string) : (string -> (string -> string)) =
closure4(v0)
and method0 () : (string -> (string -> (string -> string))) =
closure3()
and closure2 (...
── fsharp - import ─────────────────────────────────────────────────────────────
#if FABLE_COMPILER // file_system.types
[[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
[[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
base64_DecodeError = class end
[[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
serde_json_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
serde_json_Value = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
serde_wasm_bindgen_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
── fsharp - import ─────────────────────────────────────────────────────────────
module State = let mutable trace_state = None
type [[<Struct>]] US0 =
| US0_0
| US0_1
| US0_2
| US0_3
| US0_4
and Mut0 = {mutable l0 : int64}
and Mut1 = {mutable l0 : bool}
and Mut2 = {mutable l0 : US0}
and [[<Struct>]] US1 =
| US1_0 of f0_0 : int64
| US1_1
and [[<Struct>]] US2 =
| US2_0 of f0_0 : int64
| US2_1
let rec method1 (v0 : int64 option) : int64 option =
v0
and method2 (v0 : int64 option) : int64 option =
v0
and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
let v0 : Mut1 = {l0 = true} : Mut1
let v1 : Mut0 = {l0 = 0L} : Mut0
let v2 : US0 = US0_0
let v3 : Mut2 = {l0 = v2} : Mut2
let v4 : Mut1 = {l0 = false} : Mut1
let v5 : int64 option option = None
...
── fsharp - import ─────────────────────────────────────────────────────────────
module SpiralTrace =
let get_trace_state () =
#if !INTERACTIVE
Trace.get_trace_state ()
#else
get_trace_state ()
#endif
let trace x =
#if !INTERACTIVE
Trace.trace x
#else
trace x
#endif
let US0_0 =
#if !INTERACTIVE
Trace.US0_0
#else
US0_0
#endif
let US0_1 =
#if !INTERACTIVE
Trace.US0_1
#else
US0_1
#endif
let US0_2 =
#if !INTERACTIVE
Trace.US0_2
#else
US0_2
#endif
let US0_3 =
#if !INTERACTIVE
Trace.US0_3
#else
US0_3
#endif
let US0_4 =
#if !INTERACTIVE
Trace.US0_4
#else
US0_4
#endif
#if !FABLE_COMPILER && !WASM && !CONTRACT
module SpiralDateTime =
let format x =
#if !INTERACTIVE
Date_ti...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Common =
#if !INTERACTIVE
open Lib
#endif
let nl = System.Environment.NewLine
let q = @""""
let inline cons head tail = head :: tail
/// ## memoize
let inline memoize fn =
let result = lazy fn ()
fun () -> result.Value
/// ## TraceLevel
type TraceLevel =
| Verbose
| Debug
| Info
| Warning
| Critical
let inline getLocals () = ""
/// ## trace
let to_trace_level = function
| Verbose -> SpiralTrace.US0_0
| Debug -> SpiralTrace.US0_1
| Info -> SpiralTrace.US0_2
| Warning -> SpiralTrace.US0_3
| Critical -> SpiralTrace.US0_4
let trace level fn g...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Parser =
open Common
/// ### TextInput
type Position =
{
line : int
column : int
}
let initialPos = { line = 0; column = 0 }
let inline incrCol (pos : Position) =
{ pos with column = pos.column + 1 }
let inline incrLine pos =
{ line = pos.line + 1; column = 0 }
type InputState =
{
lines : string[[]]
position : Position
}
let inline fromStr str =
{
lines =
if str |> String.IsNullOrEmpty
then [[||]]
else str |> SpiralSm.split_string [[| "\r\n"; "\n" |]]
position = initialPos
}
...
── fsharp ──────────────────────────────────────────────────────────────────────
open Common
open Parser
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## JsonParser │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
(*
// --------------------------------
JSON spec from http://www.json.org/
// --------------------------------
The JSON spec is available at [[json.org]](http://www.json.org/). I'll paraphase
it here:
* A `value` can be a `string` or a `number` or a `bool` or `null` or an `object`
or an `array`.
* These structures can be nested.
* A `string` is a sequence of zero or more Unicode characters, wrapped in double
quotes, using backslash escapes.
* A `number` is very much like a C or Java number, except that the octal and
hexadecimal formats are not used.
* A `boolean` is the literal `true` or `false`
* A `null` is the literal `null`
* An `object` is an unordered set of name/value pairs.
* An object begins with { (left brace) and ends with } (right brace).
* Each name is followed by : (colon) and the name/value pairs are separated by
, (comma).
* An `array` is an ordered collection of values.
* An array begins with [[ (left bracket) and ends with ]] (right bracket).
* Values are separated by , (comma).
* Whitespace can be inserted between any pair of tokens.
*)
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let inline parserEqual (expected : ParseResult<'a>) (actual : ParseResult<'a *
Input>) =
match actual, expected with
| Success (_actual, _), Success _expected ->
printResult actual
_actual |> _assertEqual _expected
| Failure (l1, e1, p1), Failure (l2, e2, p2) when l1 = l2 && e1 = e2 && p1 =
p2 ->
printResult actual
| _ ->
printfn $"Actual: {actual}"
printfn $"Expected: {expected}"
failwith "Parse failed"
actual
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### JValue │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
type JValue =
| JString of string
| JNumber of float
| JBool of bool
| JNull
| JObject of Map<string, JValue>
| JArray of JValue list
── fsharp ──────────────────────────────────────────────────────────────────────
let jValue, jValueRef = createParserForwardedToRef<JValue> ()
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### jNull │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let jNull =
pstring "null"
>>% JNull
<?> "null"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
jValueRef <|
choice
[[
jNull
]]
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jValue "null"
|> parserEqual (Success JNull)
╭─[ 247.88ms - return value ]──────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JNull, { lines = [ │
│ |"null"|]<br/> position = { line = 0<br/> │
│ column = 4 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JNull, { lines = [|"null"|]<br/> │
│ position = { line = 0<br/> column = 4 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JNull</code></span></summary><div><table><thead> │
│ <tr></tr></thead><tbody><tr><td>IsJString</td><td><d... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 258.21ms - stdout ]────────────────────────────────────────────────────────╮
│ JNull │
│ JValue │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: True │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNull "nulp"
|> parserEqual (
Failure (
"null",
"Unexpected 'p'",
{ currentLine = "nulp"; line = 0; column = 3 }
)
)
╭─[ 47.77ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Failure ("null", "Unexpected │
│ 'p'", { currentLine = "nulp"<br/> │
│ line = 0<br/> column = 3 │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div │
│ class="dni-plaintext"><pre>null</pre></div></td></tr><tr><td>Item2</td><td>< │
│ div class="dni-plaintext"><pre>Unexpected │
│ 'p'</pre></div></td></tr><tr><td>Item3</td><td><details │
│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{ │
│ currentLine = "nulp"<br/> line = 0<br/> column = 3 │
│ }</code></span></summary><div><table><thead><tr></tr></thead... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 55.57ms - stdout ]─────────────────────────────────────────────────────────╮
│ Line:0 Col:3 Error parsing null │
│ nulp │
│ ^Unexpected 'p' │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### jBool │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let jBool =
let jtrue =
pstring "true"
>>% JBool true
let jfalse =
pstring "false"
>>% JBool false
jtrue <|> jfalse
<?> "bool"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
jValueRef <|
choice
[[
jNull
jBool
]]
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jBool "true"
|> parserEqual (Success (JBool true))
╭─[ 74.26ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JBool true, { lines = [ │
│ |"true"|]<br/> position = { line = 0<br/> │
│ column = 4 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JBool true, { lines = [|"true"|]<br/> │
│ position = { line = 0<br/> column = 4 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JBool │
│ true</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr.. │
│ . │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 85.46ms - stdout ]─────────────────────────────────────────────────────────╮
│ JBool true │
│ JBool │
│ Item: True │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: True │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jBool "false"
|> parserEqual (Success (JBool false))
╭─[ 72.11ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JBool false, { lines = [ │
│ |"false"|]<br/> position = { line = 0<br/> │
│ column = 5 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JBool false, { lines = [ │
│ |"false"|]<br/> position = { line = 0<br/> column = │
│ 5 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JBool │
│ false</code></span></summary><div><table><thead><tr></tr></thead><tb... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 84.07ms - stdout ]─────────────────────────────────────────────────────────╮
│ JBool false │
│ JBool │
│ Item: False │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: True │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jBool "truX"
|> parserEqual (
Failure (
"bool",
"Unexpected 't'",
{ currentLine = "truX"; line = 0; column = 0 }
)
)
╭─[ 54.37ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Failure ("bool", "Unexpected │
│ 't'", { currentLine = "truX"<br/> │
│ line = 0<br/> column = 0 │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div │
│ class="dni-plaintext"><pre>bool</pre></div></td></tr><tr><td>Item2</td><td>< │
│ div class="dni-plaintext"><pre>Unexpected │
│ 't'</pre></div></td></tr><tr><td>Item3</td><td><details │
│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{ │
│ currentLine = "truX"<br/> line = 0<br/> column = 0 │
│ }</code></span></summary><div><table><thead><tr></tr></thead... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 63.67ms - stdout ]─────────────────────────────────────────────────────────╮
│ Line:0 Col:0 Error parsing bool │
│ truX │
│ ^Unexpected 't' │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### jUnescapedChar │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let jUnescapedChar =
satisfy (fun ch -> ch <> '\\' && ch <> '\"') "char"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jUnescapedChar "a"
|> parserEqual (Success 'a')
╭─[ 82.69ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success ('a', { lines = [ │
│ |"a"|]<br/> position = { line = 0<br/> │
│ column = 1 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(a, { lines = [|"a"|]<br/> position = │
│ { line = 0<br/> column = 1 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div │
│ class="dni-plaintext"><pre>a</pre></div></td></tr><tr><td>Item2</td><td><det │
│ ails class="dni-treeview"><summary><span class="dni-code-hint"><code>{ lines │
│ = [|"a"|]<br/... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 94.04ms - stdout ]─────────────────────────────────────────────────────────╮
│ 'a' │
│ a │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jUnescapedChar "\\"
|> parserEqual (
Failure (
"char",
"Unexpected '\\'",
{ currentLine = "\\"; line = 0; column = 0 }
)
)
╭─[ 43.55ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Failure ("char", "Unexpected │
│ '\'", { currentLine = "\"<br/> │
│ line = 0<br/> column = 0 │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div │
│ class="dni-plaintext"><pre>char</pre></div></td></tr><tr><td>Item2</td><td>< │
│ div class="dni-plaintext"><pre>Unexpected │
│ '\'</pre></div></td></tr><tr><td>Item3</td><td><details │
│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{ │
│ currentLine = "\"<br/> line = 0<br/> column = 0 │
│ }</code></span></summary><div><table><thead><tr></tr></thead><tbod... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 51.22ms - stdout ]─────────────────────────────────────────────────────────╮
│ Line:0 Col:0 Error parsing char │
│ \ │
│ ^Unexpected '\' │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### jEscapedChar │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let jEscapedChar =
[[
("\\\"",'\"')
("\\\\",'\\')
("\\/",'/')
("\\b",'\b')
("\\f",'\f')
("\\n",'\n')
("\\r",'\r')
("\\t",'\t')
]]
|> List.map (fun (toMatch, result) ->
pstring toMatch >>% result
)
|> choice
<?> "escaped char"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jEscapedChar "\\\\"
|> parserEqual (Success '\\')
╭─[ 50.84ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success ('\\', { lines = [ │
│ |"\\"|]<br/> position = { line = 0<br/> │
│ column = 2 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(\, { lines = [|"\\"|]<br/> position │
│ = { line = 0<br/> column = 2 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div │
│ class="dni-plaintext"><pre>\</pre></div></td></tr><tr><td>Item2</td><td><det │
│ ails class="dni-treeview"><summary><span class="dni-code-hint"><code>{ lines │
│ = [|"\\"... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 60.75ms - stdout ]─────────────────────────────────────────────────────────╮
│ '\\' │
│ \ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jEscapedChar "\\t"
|> parserEqual (Success '\t')
╭─[ 43.96ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success ('\009', { lines = [ │
│ |"\t"|]<br/> position = { line = 0<br/> │
│ column = 2 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>( , { lines = [|"\t"|]<br/> position = │
│ { line = 0<br/> column = 2 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div class="dni-plaintext"><pre> │
│ </pre></div></td></tr><tr><td>Item2</td><td><details │
│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{ lines = [ │
│ |"\t... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 54.29ms - stdout ]─────────────────────────────────────────────────────────╮
│ '\009' │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jEscapedChar @"\\"
|> parserEqual (Success '\\')
╭─[ 71.92ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success ('\\', { lines = [ │
│ |"\\"|]<br/> position = { line = 0<br/> │
│ column = 2 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(\, { lines = [|"\\"|]<br/> position │
│ = { line = 0<br/> column = 2 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div │
│ class="dni-plaintext"><pre>\</pre></div></td></tr><tr><td>Item2</td><td><det │
│ ails class="dni-treeview"><summary><span class="dni-code-hint"><code>{ lines │
│ = [|"\\"... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 85.97ms - stdout ]─────────────────────────────────────────────────────────╮
│ '\\' │
│ \ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jEscapedChar @"\n"
|> parserEqual (Success '\n')
╭─[ 82.84ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success ('\010', { lines = [ │
│ |"<br/>"|]<br/> position = { line = 0<br/> │
│ column = 2 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(<br/>, { lines = [|"<br/>"|]<br/> │
│ position = { line = 0<br/> column = 2 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div class="dni-plaintext"><pre> │
│ </pre></div></td></tr><tr><td>Item2</td><td><details │
│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{ lines = │
│ ... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 93.80ms - stdout ]─────────────────────────────────────────────────────────╮
│ '\010' │
│ │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jEscapedChar "a"
|> parserEqual (
Failure (
"escaped char",
"Unexpected 'a'",
{ currentLine = "a"; line = 0; column = 0 }
)
)
╭─[ 62.29ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Failure ("escaped char", │
│ "Unexpected 'a'", { currentLine = "a"<br/> │
│ line = 0<br/> column = 0 │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div class="dni-plaintext"><pre>escaped │
│ char</pre></div></td></tr><tr><td>Item2</td><td><div │
│ class="dni-plaintext"><pre>Unexpected │
│ 'a'</pre></div></td></tr><tr><td>Item3</td><td><details │
│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{ │
│ currentLine = "a"<br/> line = 0<br/> column = 0 │
│ }</code></span></summary><div><tab... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 76.07ms - stdout ]─────────────────────────────────────────────────────────╮
│ Line:0 Col:0 Error parsing escaped char │
│ a │
│ ^Unexpected 'a' │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### jUnicodeChar │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let jUnicodeChar =
let backslash = pchar '\\'
let uChar = pchar 'u'
let hexdigit = anyOf ([[ '0' .. '9' ]] @ [[ 'A' .. 'F' ]] @ [[ 'a' .. 'f'
]])
let fourHexDigits = hexdigit .>>. hexdigit .>>. hexdigit .>>. hexdigit
let inline convertToChar (((h1, h2), h3), h4) =
let str = $"%c{h1}%c{h2}%c{h3}%c{h4}"
Int32.Parse (str, Globalization.NumberStyles.HexNumber) |> char
backslash >>. uChar >>. fourHexDigits
|>> convertToChar
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jUnicodeChar "\\u263A"
|> parserEqual (Success '☺')
╭─[ 55.34ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success ('☺', { lines = [ │
│ |"\u263A"|]<br/> position = { line = 0<br/> │
│ column = 6 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(☺, { lines = [|"\u263A"|]<br/> │
│ position = { line = 0<br/> column = 6 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div │
│ class="dni-plaintext"><pre>☺</pre></div></td></tr><tr><td>Item2</td><td><det │
│ ails class="dni-treeview"><summary><span class="dni-code-hint"><code>{ lines │
│ = [|"\u2... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 63.86ms - stdout ]─────────────────────────────────────────────────────────╮
│ '☺' │
│ ☺ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### jString │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let quotedString =
let quote = pchar '\"' <?> "quote"
let jchar = jUnescapedChar <|> jEscapedChar <|> jUnicodeChar
quote >>. manyChars jchar .>> quote
── fsharp ──────────────────────────────────────────────────────────────────────
let jString =
quotedString
|>> JString
<?> "quoted string"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
jValueRef <|
choice
[[
jNull
jBool
jString
]]
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jString "\"\""
|> parserEqual (Success (JString ""))
╭─[ 62.01ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JString "", { lines = [ │
│ |""""|]<br/> position = { line = │
│ 0<br/> column = 2 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JString "", { lines = [ │
│ |""""|]<br/> position = { line = 0<br/> │
│ column = 2 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JString ""</code></span></summary>... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 69.79ms - stdout ]─────────────────────────────────────────────────────────╮
│ JString "" │
│ JString │
│ Item: │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jString "\"a\""
|> parserEqual (Success (JString "a"))
╭─[ 39.13ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JString "a", { lines = [ │
│ |""a""|]<br/> position = { line = │
│ 0<br/> column = 3 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JString "a", { lines = [ │
│ |""a""|]<br/> position = { line = 0<br/> │
│ column = 3 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JString "a"</code></span></s... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 47.11ms - stdout ]─────────────────────────────────────────────────────────╮
│ JString "a" │
│ JString │
│ Item: a │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jString "\"ab\""
|> parserEqual (Success (JString "ab"))
╭─[ 40.31ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JString "ab", { lines = [ │
│ |""ab""|]<br/> position = { line │
│ = 0<br/> column = 4 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JString "ab", { lines = [ │
│ |""ab""|]<br/> position = { line = 0<br/> │
│ column = 4 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JString "ab"</code></s... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 49.47ms - stdout ]─────────────────────────────────────────────────────────╮
│ JString "ab" │
│ JString │
│ Item: ab │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jString "\"ab\\tde\""
|> parserEqual (Success (JString "ab\tde"))
╭─[ 46.92ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JString "ab de", { lines = [ │
│ |""ab\tde""|]<br/> position = │
│ { line = 0<br/> column = 8 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JString "ab de", { lines = [ │
│ |""ab\tde""|]<br/> position = { line = 0<br/> │
│ column = 8 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JString &quo... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 54.44ms - stdout ]─────────────────────────────────────────────────────────╮
│ JString "ab de" │
│ JString │
│ Item: ab de │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jString "\"ab\\u263Ade\""
|> parserEqual (Success (JString "ab☺de"))
╭─[ 42.65ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JString "ab☺de", { lines = [ │
│ |""ab\u263Ade""|]<br/> │
│ position = { line = 0<br/> column = │
│ 12 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JString "ab☺de", { lines = [ │
│ |""ab\u263Ade""|]<br/> position = { line = 0<br/> │
│ column = 12 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JS... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 52.28ms - stdout ]─────────────────────────────────────────────────────────╮
│ JString "ab☺de" │
│ JString │
│ Item: ab☺de │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### jNumber │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let jNumber =
let optSign = opt (pchar '-')
let zero = pstring "0"
let digitOneNine =
satisfy (fun ch -> Char.IsDigit ch && ch <> '0') "1-9"
let digit =
satisfy Char.IsDigit "digit"
let point = pchar '.'
let e = pchar 'e' <|> pchar 'E'
let optPlusMinus = opt (pchar '-' <|> pchar '+')
let nonZeroInt =
digitOneNine .>>. manyChars digit
|>> fun (first, rest) -> string first + rest
let intPart = zero <|> nonZeroInt
let fractionPart = point >>. manyChars1 digit
let exponentPart = e >>. optPlusMinus .>>. manyChars1 digit
let inline (|>?) opt f =
match opt with
| None -> ""
| Some x -> f x
let inline convertToJNumber (((optSign, intPart), fractionPart), expPart) =
let signStr =
optSign
|>? string
let fractionPartStr =
fractionPart
|>? (fun digits -> "." + digits)
let expPartStr =
expPart
|>? fun (optSign, digits) ->
let sign = optSign |>? string
"e" + sign + digits
(signStr + intPart + fractionPartStr + expPartStr)
|> float
|> JNumber
optSign .>>. intPart .>>. opt fractionPart .>>. opt exponentPart
|>> convertToJNumber
<?> "number"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
jValueRef <|
choice
[[
jNull
jBool
jString
jNumber
]]
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber "123"
|> parserEqual (Success (JNumber 123.0))
╭─[ 73.19ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JNumber 123.0, { lines = [ │
│ |"123"|]<br/> position = { line = 0<br/> │
│ column = 3 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JNumber 123.0, { lines = [ │
│ |"123"|]<br/> position = { line = 0<br/> column = 3 │
│ } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JNumber │
│ 123.0</code></span></summary><div><table><thead><tr></tr></the... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 82.30ms - stdout ]─────────────────────────────────────────────────────────╮
│ JNumber 123.0 │
│ JNumber │
│ Item: 123 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber "-123"
|> parserEqual (Success (JNumber -123.0))
╭─[ 42.71ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JNumber -123.0, { lines = [ │
│ |"-123"|]<br/> position = { line = │
│ 0<br/> column = 4 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JNumber -123.0, { lines = [ │
│ |"-123"|]<br/> position = { line = 0<br/> column = │
│ 4 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JNumber │
│ -123.0</code></span></summary><div><table><thead><tr></t... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 51.22ms - stdout ]─────────────────────────────────────────────────────────╮
│ JNumber -123.0 │
│ JNumber │
│ Item: -123 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber "123.4"
|> parserEqual (Success (JNumber 123.4))
╭─[ 54.48ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JNumber 123.4, { lines = [ │
│ |"123.4"|]<br/> position = { line = │
│ 0<br/> column = 5 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JNumber 123.4, { lines = [ │
│ |"123.4"|]<br/> position = { line = 0<br/> column = │
│ 5 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JNumber │
│ 123.4</code></span></summary><div><table><thead><tr></tr><... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 63.10ms - stdout ]─────────────────────────────────────────────────────────╮
│ JNumber 123.4 │
│ JNumber │
│ Item: 123.4 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber "-123."
|> parserEqual (Success (JNumber -123.0))
╭─[ 36.97ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JNumber -123.0, { lines = [ │
│ |"-123."|]<br/> position = { line = │
│ 0<br/> column = 4 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JNumber -123.0, { lines = [ │
│ |"-123."|]<br/> position = { line = 0<br/> column = │
│ 4 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JNumber │
│ -123.0</code></span></summary><div><table><thead><tr><... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 45.15ms - stdout ]─────────────────────────────────────────────────────────╮
│ JNumber -123.0 │
│ JNumber │
│ Item: -123 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber "00.1"
|> parserEqual (Success (JNumber 0.0))
╭─[ 37.52ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JNumber 0.0, { lines = [ │
│ |"00.1"|]<br/> position = { line = 0<br/> │
│ column = 1 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JNumber 0.0, { lines = [ │
│ |"00.1"|]<br/> position = { line = 0<br/> column = │
│ 1 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JNumber │
│ 0.0</code></span></summary><div><table><thead><tr></tr></thead><tbod... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 45.75ms - stdout ]─────────────────────────────────────────────────────────╮
│ JNumber 0.0 │
│ JNumber │
│ Item: 0 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let jNumber_ = jNumber .>> spaces1
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber_ "123"
|> parserEqual (Success (JNumber 123.0))
╭─[ 45.35ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JNumber 123.0, { lines = [ │
│ |"123"|]<br/> position = { line = 1<br/> │
│ column = 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JNumber 123.0, { lines = [ │
│ |"123"|]<br/> position = { line = 1<br/> column = 0 │
│ } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JNumber │
│ 123.0</code></span></summary><div><table><thead><tr></tr></the... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 53.23ms - stdout ]─────────────────────────────────────────────────────────╮
│ JNumber 123.0 │
│ JNumber │
│ Item: 123 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber_ "-123"
|> parserEqual (Success (JNumber -123.0))
╭─[ 57.19ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JNumber -123.0, { lines = [ │
│ |"-123"|]<br/> position = { line = │
│ 1<br/> column = 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JNumber -123.0, { lines = [ │
│ |"-123"|]<br/> position = { line = 1<br/> column = │
│ 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JNumber │
│ -123.0</code></span></summary><div><table><thead><tr></t... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 68.37ms - stdout ]─────────────────────────────────────────────────────────╮
│ JNumber -123.0 │
│ JNumber │
│ Item: -123 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber_ "-123."
|> parserEqual (
Failure (
"number andThen many1 whitespace",
"Unexpected '.'",
{ currentLine = "-123."; line = 0; column = 4 }
)
)
╭─[ 58.00ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Failure<br/> ("number andThen many1 │
│ whitespace", "Unexpected '.'", { currentLine = │
│ "-123."<br/> │
│ line = 0<br/> │
│ column = 4 │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div class="dni-plaintext"><pre>number andThen many1 │
│ whitespace</pre></div></td></tr><tr><td>Item2</td><td><div │
│ class="dni-plaintext"><pre>Unexpected │
│ '.'</pre></div></td></tr><tr><td>Item3</td><td><details │
│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{ │
│ currentLine = "... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 66.76ms - stdout ]─────────────────────────────────────────────────────────╮
│ Line:0 Col:4 Error parsing number andThen many1 whitespace │
│ -123. │
│ ^Unexpected '.' │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber_ "123.4"
|> parserEqual (Success (JNumber 123.4))
╭─[ 76.69ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JNumber 123.4, { lines = [ │
│ |"123.4"|]<br/> position = { line = │
│ 1<br/> column = 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JNumber 123.4, { lines = [ │
│ |"123.4"|]<br/> position = { line = 1<br/> column = │
│ 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JNumber │
│ 123.4</code></span></summary><div><table><thead><tr></tr><... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 91.25ms - stdout ]─────────────────────────────────────────────────────────╮
│ JNumber 123.4 │
│ JNumber │
│ Item: 123.4 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber_ "00.4"
|> parserEqual (
Failure (
"number andThen many1 whitespace",
"Unexpected '0'",
{ currentLine = "00.4"; line = 0; column = 1 }
)
)
╭─[ 47.85ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Failure<br/> ("number andThen many1 │
│ whitespace", "Unexpected '0'", { currentLine = │
│ "00.4"<br/> │
│ line = 0<br/> │
│ column = 1 │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div class="dni-plaintext"><pre>number andThen many1 │
│ whitespace</pre></div></td></tr><tr><td>Item2</td><td><div │
│ class="dni-plaintext"><pre>Unexpected │
│ '0'</pre></div></td></tr><tr><td>Item3</td><td><details │
│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{ │
│ currentLine = "0... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 57.99ms - stdout ]─────────────────────────────────────────────────────────╮
│ Line:0 Col:1 Error parsing number andThen many1 whitespace │
│ 00.4 │
│ ^Unexpected '0' │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber_ "123e4"
|> parserEqual (Success (JNumber 1230000.0))
╭─[ 75.06ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JNumber 1230000.0, { lines = [ │
│ |"123e4"|]<br/> position = { line = │
│ 1<br/> column = 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JNumber 1230000.0, { lines = [ │
│ |"123e4"|]<br/> position = { line = 1<br/> column = │
│ 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JNumber │
│ 1230000.0</code></span></summary><div><tab... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 86.81ms - stdout ]─────────────────────────────────────────────────────────╮
│ JNumber 1230000.0 │
│ JNumber │
│ Item: 1230000 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber_ "123.4e5"
|> parserEqual (Success (JNumber 12340000.0))
╭─[ 46.35ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JNumber 12340000.0, { lines = [ │
│ |"123.4e5"|]<br/> position = { line │
│ = 1<br/> column = 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JNumber 12340000.0, { lines = [ │
│ |"123.4e5"|]<br/> position = { line = 1<br/> column │
│ = 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JNumber 12340000.0</code></span></summary>... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 53.81ms - stdout ]─────────────────────────────────────────────────────────╮
│ JNumber 12340000.0 │
│ JNumber │
│ Item: 12340000 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jNumber_ "123.4e-5"
|> parserEqual (Success (JNumber 0.001234))
╭─[ 55.93ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JNumber 0.001234, { lines = [ │
│ |"123.4e-5"|]<br/> position = { line = │
│ 1<br/> column = 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JNumber 0.001234, { lines = [ │
│ |"123.4e-5"|]<br/> position = { line = 1<br/> │
│ column = 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>JNumber │
│ 0.001234</code></span></summary><div><ta... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 66.04ms - stdout ]─────────────────────────────────────────────────────────╮
│ JNumber 0.001234 │
│ JNumber │
│ Item: 0.001234 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### jArray │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let jArray =
let left = pchar '[[' .>> spaces
let right = pchar ']]' .>> spaces
let comma = pchar ',' .>> spaces
let value = jValue .>> spaces
let values = sepBy value comma
between left values right
|>> JArray
<?> "array"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
jValueRef <|
choice
[[
jNull
jBool
jString
jNumber
jArray
]]
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jArray "[[ 1, 2 ]]"
|> parserEqual (Success (JArray [[ JNumber 1.0; JNumber 2.0 ]]))
╭─[ 98.63ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success (JArray [JNumber 1.0; JNumber 2.0], { │
│ lines = [|"[ 1, 2 ]"|]<br/> │
│ position = { line = 1<br/> │
│ column = 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JArray [JNumber 1.0; JNumber 2.0], { lines = [ │
│ |"[ 1, 2 ]"|]<br/> position = { line = 1<br/> │
│ column = 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><details class="dni-treeview"><summary><span class="d... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 106.09ms - stdout ]────────────────────────────────────────────────────────╮
│ JArray [JNumber 1.0; JNumber 2.0] │
│ JArray │
│ Item: FSharpList<JValue> │
│ - Item: 1 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Item: 2 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: True │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jArray "[[ 1, 2, ]]"
|> parserEqual (
Failure (
"array",
"Unexpected ','",
{ currentLine = "[[ 1, 2, ]]"; line = 0; column = 6 }
)
)
╭─[ 35.66ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Failure ("array", "Unexpected │
│ ','", { currentLine = "[ 1, 2, ]"<br/> │
│ line = 0<br/> column = 6 │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div │
│ class="dni-plaintext"><pre>array</pre></div></td></tr><tr><td>Item2</td><td> │
│ <div class="dni-plaintext"><pre>Unexpected │
│ ','</pre></div></td></tr><tr><td>Item3</td><td><details │
│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{ │
│ currentLine = "[ 1, 2, ]"<br/> line = 0<br/> column = 6 │
│ }</code></span></summary><div><table><thead><t... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 44.02ms - stdout ]─────────────────────────────────────────────────────────╮
│ Line:0 Col:6 Error parsing array │
│ [ 1, 2, ] │
│ ^Unexpected ',' │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### jObject │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let jObject =
let left = spaces >>. pchar '{' .>> spaces
let right = pchar '}' .>> spaces
let colon = pchar ':' .>> spaces
let comma = pchar ',' .>> spaces
let key = quotedString .>> spaces
let value = jValue .>> spaces
let keyValue = (key .>> colon) .>>. value
let keyValues = sepBy keyValue comma
between left keyValues right
|>> Map.ofList
|>> JObject
<?> "object"
── fsharp ──────────────────────────────────────────────────────────────────────
jValueRef <|
choice
[[
jNull
jBool
jString
jNumber
jArray
jObject
]]
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jObject """{ "a":1, "b" : 2 }"""
|> parserEqual (
Success (
JObject (
Map.ofList [[
"a", JNumber 1.0
"b", JNumber 2.0
]]
)
)
)
╭─[ 111.19ms - return value ]──────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success<br/> (JObject (map [("a", │
│ JNumber 1.0); ("b", JNumber 2.0)]),<br/> { lines = [|"{ │
│ "a":1, "b" : 2 }"|]<br/> position = { line = │
│ 1<br/> column = 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JObject (map [("a", JNumber 1.0); │
│ ("b", JNumber 2.0)]), { lines = [|"{ "a":1, │
│ "b" : 2 }"|]<br/> position = { line = 1<br/> │
│ column = 0 } │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbod... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 119.11ms - stdout ]────────────────────────────────────────────────────────╮
│ JObject (map [("a", JNumber 1.0); ("b", JNumber 2.0)]) │
│ JObject │
│ Item: FSharpMap<String,JValue> │
│ - Key: a │
│ Value: JNumber │
│ Item: 1 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Key: b │
│ Value: JNumber │
│ Item: 2 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: True │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run jObject """{ "a":1, "b" : 2, }"""
|> parserEqual (
Failure (
"object",
"Unexpected ','",
{ currentLine = """{ "a":1, "b" : 2, }"""; line = 0; column = 18 }
)
)
╭─[ 38.92ms - return value ]───────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Failure ("object", "Unexpected │
│ ','", { currentLine = "{ "a":1, "b" : │
│ 2, }"<br/> line = 0<br/> │
│ column = 18 │
│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
│ >Item1</td><td><div │
│ class="dni-plaintext"><pre>object</pre></div></td></tr><tr><td>Item2</td><td │
│ ><div class="dni-plaintext"><pre>Unexpected │
│ ','</pre></div></td></tr><tr><td>Item3</td><td><details │
│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{ │
│ currentLine = "{ "a":1, "b" : 2, }"<br/> │
│ lin... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 47.34ms - stdout ]─────────────────────────────────────────────────────────╮
│ Line:0 Col:18 Error parsing object │
│ { "a":1, "b" : 2, } │
│ ^Unexpected ',' │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### jValue │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let example1 = """{
"name" : "Scott",
"isMale" : true,
"bday" : {"year":2001, "month":12, "day":25 },
"favouriteColors" : [["blue", "green"]],
"emptyArray" : [[]],
"emptyObject" : {}
}"""
run jValue example1
|> parserEqual (
Success (
JObject (
Map.ofList [[
"name", JString "Scott"
"isMale", JBool true
"bday", JObject (
Map.ofList [[
"year", JNumber 2001.0
"month", JNumber 12.0
"day", JNumber 25.0
]]
)
"favouriteColors", JArray [[ JString "blue"; JString "green" ]]
"emptyArray", JArray [[]]
"emptyObject", JObject Map.empty
]]
)
)
)
╭─[ 177.00ms - return value ]──────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success<br/> (JObject<br/> (map<br/> │
│ [("bday",<br/> JObject<br/> (map<br/> │
│ [("day", JNumber 25.0); ("month", JNumber 12.0);<br/> │
│ ("year", JNumber 2001.0)])); ("emptyArray", JArray [ │
│ ]);<br/> ("emptyObject", JObject (map []));<br/> │
│ ("favouriteColors", │
│ ...</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><t │
│ d>Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JObject<br/> (map<br/> [ │
│ ("bday",<br/> JObject<br/> (map<br/> [ │
│ (... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 183.81ms - stdout ]────────────────────────────────────────────────────────╮
│ JObject │
│ (map │
│ [("bday", │
│ JObject │
│ (map │
│ [("day", JNumber 25.0); ("month", JNumber 12.0); │
│ ("year", JNumber 2001.0)])); ("emptyArray", JArray []); │
│ ("emptyObject", JObject (map [])); │
│ ("favouriteColors", JArray [JString "blue"; JString "green"]); │
│ ("isMale", JBool true); ("name", JString "Scott")]) │
│ JObject │
│ Item: FSharpMap<String,JValue> │
│ - Key: bday │
│ Value: JObject │
│ Item: FSharpMap<String,JValue> │
│ - Key: day │
│ Value: JNumber 25.0 │
│ - Key: month │
│ Value: JNumber 12.0 │
│ - Key: year │
│ Value: JNumber 2001.0 │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: True │
│ IsJArray: False │
│ - Key: emptyArray │
│ Value: JArray │
│ Item: FSharpList<JValue> │
│ │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: True │
│ - Key: emptyObject │
│ Value: JObject │
│ Item: FSharpMap<String,JValue> │
│ │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: True │
│ IsJArray: False │
│ - Key: favouriteColors │
│ Value: JArray │
│ Item: FSharpList<JValue> │
│ - Item: blue │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Item: green │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: True │
│ - Key: isMale │
│ Value: JBool │
│ Item: True │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: True │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Key: name │
│ Value: JString │
│ Item: Scott │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: True │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let example2 = """{"widget": {
"debug": "on",
"window": {
"title": "Sample Konfabulator Widget",
"name": "main_window",
"width": 500,
"height": 500
},
"image": {
"src": "Images/Sun.png",
"name": "sun1",
"hOffset": 250,
"vOffset": 250,
"alignment": "center"
},
"text": {
"data": "Click Here",
"size": 36,
"style": "bold",
"name": "text1",
"hOffset": 250,
"vOffset": 100,
"alignment": "center",
"onMouseUp": "sun1.opacity = (sun1.opacity / 100) * 90;"
}
}}"""
run jValue example2
|> parserEqual (
Success (
JObject (
Map.ofList [[
"widget", JObject (
Map.ofList [[
"debug", JString "on"
"window", JObject (
Map.ofList [[
"title", JString "Sample Konfabulator Widget"
"name", JString "main_window"
"width", JNumber 500.0
"height", JNumber 500.0
]]
)
"image", JObject (
Map.ofList [[
"src", JString "Images/Sun.png"
"name", JString "sun1"
"hOffset", JNumber 250.0
"vOffset", JNumber 250.0
"alignment", JString "center"
]]
)
"text", JObject (
Map.ofList [[
"data", JString "Click Here"
"size", JNumber 36.0
"style", JString "bold"
"name", JString "text1"
"hOffset", JNumber 250.0
"vOffset", JNumber 100.0
"alignment", JString "center"
"onMouseUp", JString "sun1.opacity =
(sun1.opacity / 100) * 90;"
]]
)
]]
)
]]
)
)
)
╭─[ 329.68ms - return value ]──────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success<br/> (JObject<br/> (map<br/> │
│ [("widget",<br/> JObject<br/> (map<br/> │
│ [("debug", JString "on");<br/> │
│ ("image",<br/> JObject<br/> │
│ (map<br/> [("alignment", JString │
│ "center");<br/> │
│ ("hOffset"...</code></span></summary><div><table><thead><tr></tr>< │
│ /thead><tbody><tr><td>Item</td><td><details │
│ class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JObject<br/> (map<br/> [ │
│ ("widget",<br/> JObject<br/> (map<br/> ... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 339.39ms - stdout ]────────────────────────────────────────────────────────╮
│ JObject │
│ (map │
│ [("widget", │
│ JObject │
│ (map │
│ [("debug", JString "on"); │
│ ("image", │
│ JObject │
│ (map │
│ [("alignment", JString "center"); ("hOffset", JNumber │
│ 250.0); │
│ ("name", JString "sun1"); ("src", JString │
│ "Images/Sun.png"); │
│ ("vOffset", JNumber 250.0)])); │
│ ("text", │
│ JObject │
│ (map │
│ [("alignment", JString "center"); │
│ ("data", JString "Click Here"); ("hOffset", JNumber │
│ 250.0); │
│ ("name", JString "text1"); │
│ ("onMouseUp", │
│ JString "sun1.opacity = (sun1.opacity / 100) * 90;"); │
│ ("size", JNumber 36.0); ("style", JString "bold"); │
│ ("vOffset", JNumber 100.0)])); │
│ ("window", │
│ JObject │
│ (map │
│ [("height", JNumber 500.0); ("name", JString │
│ "main_window"); │
│ ("title", JString "Sample Konfabulator Widget"); │
│ ("width", JNumber 500.0)]))]))]) │
│ JObject │
│ Item: FSharpMap<String,JValue> │
│ - Key: widget │
│ Value: JObject │
│ Item: FSharpMap<String,JValue> │
│ - Key: debug │
│ Value: JString "on" │
│ - Key: image │
│ Value: JObject │
│ (map │
│ [("alignment", JString "center"); ("hOffset", JNumber 250.0); │
│ ("name", JString "sun1"); ("src", JString "Images/Sun.png"); │
│ ("vOffset", JNumber 250.0)]) │
│ - Key: text │
│ Value: JObject │
│ (map │
│ [("alignment", JString "center"); ("data", JString "Click Here"); │
│ ("hOffset", JNumber 250.0); ("name", JString "text1"); │
│ ("onMouseUp", JString "sun1.opacity = (sun1.opacity / 100) * 90;"); │
│ ("size", JNumber 36.0); ("style", JString "bold"); │
│ ("vOffset", JNumber 100.0)]) │
│ - Key: window │
│ Value: JObject │
│ (map │
│ [("height", JNumber 500.0); ("name", JString "main_window"); │
│ ("title", JString "Sample Konfabulator Widget"); ("width", JNumber │
│ 500.0)]) │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: True │
│ IsJArray: False │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: True │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let example3 = """{
"string": "Hello, \"World\"!",
"escapedString": "This string contains \\/\\\\\\b\\f\\n\\r\\t\\\"\\'",
"number": 42,
"scientificNumber": 3.14e-10,
"boolean": true,
"nullValue": null,
"array": [[1, 2, 3, 4, 5]],
"unicodeString1": "프리마",
"unicodeString2": "\u0048\u0065\u006C\u006C\u006F,
\u0022\u0057\u006F\u0072\u006C\u0064\u0022!",
"specialCharacters": "!@#$%^&*()",
"emptyArray": [[]],
"emptyObject": {},
"nestedArrays": [[[[1, 2, 3]], [[4, 5, 6]]]],
"object": {
"nestedString": "Nested Value",
"nestedNumber": 3.14,
"nestedBoolean": false,
"nestedNull": null,
"nestedArray": [["a", "b", "c"]],
"nestedObject": {
"nestedProperty": "Nested Object Value"
}
},
"nestedObjects": [[
{"name": "Alice", "age": 25},
{"name": "Bob", "age": 30}
]]
}"""
run jValue example3
|> parserEqual (
Success (
JObject (
Map.ofList [[
"string", JString @"Hello, ""World""!"
"escapedString", JString @"This string contains
\/\\\b\f\n\r\t\""\'"
"number", JNumber 42.0
"scientificNumber", JNumber 3.14e-10
"boolean", JBool true
"nullValue", JNull
"array", JArray [[
JNumber 1.0; JNumber 2.0; JNumber 3.0; JNumber 4.0; JNumber
5.0
]]
"unicodeString1", JString "프리마"
"unicodeString2", JString @"Hello, ""World""!"
"specialCharacters", JString "!@#$%^&*()"
"emptyArray", JArray [[]]
"emptyObject", JObject Map.empty
"nestedArrays", JArray [[
JArray [[ JNumber 1.0; JNumber 2.0; JNumber 3.0 ]]
JArray [[ JNumber 4.0; JNumber 5.0; JNumber 6.0 ]]
]]
"object", JObject (
Map.ofList [[
"nestedString", JString "Nested Value"
"nestedNumber", JNumber 3.14
"nestedBoolean", JBool false
"nestedNull", JNull
"nestedArray", JArray [[JString "a"; JString "b";
JString "c"]]
"nestedObject", JObject (
Map.ofList [[
"nestedProperty", JString "Nested Object Value"
]]
)
]]
)
"nestedObjects", JArray [[
JObject (Map.ofList [[ "name", JString "Alice"; "age", JNumber
25.0 ]])
JObject (Map.ofList [[ "name", JString "Bob"; "age", JNumber
30.0 ]])
]]
]]
)
)
)
╭─[ 476.87ms - return value ]──────────────────────────────────────────────────╮
│ <details open="open" class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>Success<br/> (JObject<br/> (map<br/> │
│ [("array",<br/> JArray<br/> [JNumber 1.0; │
│ JNumber 2.0; JNumber 3.0; JNumber 4.0; JNumber 5.0]);<br/> │
│ ("boolean", JBool true); ("emptyArray", JArray []);<br/> │
│ ("emptyObject", JObject (map []));<br/> │
│ ("escapedString", JString "This │
│ s...</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr>< │
│ td>Item</td><td><details class="dni-treeview"><summary><span │
│ class="dni-code-hint"><code>(JObject<br/> (map<br/> [ │
│ ("array",<br/> JArray [JNumber 1.0; JNumber 2.0; JNumber │
│ 3.0; JNumber 4.0; J... │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─[ 487.46ms - stdout ]────────────────────────────────────────────────────────╮
│ JObject │
│ (map │
│ [("array", │
│ JArray [JNumber 1.0; JNumber 2.0; JNumber 3.0; JNumber 4.0; JNumber │
│ 5.0]); │
│ ("boolean", JBool true); ("emptyArray", JArray []); │
│ ("emptyObject", JObject (map [])); │
│ ("escapedString", JString "This string contains \/\\\b\f\n\r\t\"\'"); │
│ ("nestedArrays", │
│ JArray │
│ [JArray [JNumber 1.0; JNumber 2.0; JNumber 3.0]; │
│ JArray [JNumber 4.0; JNumber 5.0; JNumber 6.0]]); │
│ ("nestedObjects", │
│ JArray │
│ [JObject (map [("age", JNumber 25.0); ("name", JString "Alice")]); │
│ JObject (map [("age", JNumber 30.0); ("name", JString "Bob")])]); │
│ ("nullValue", JNull); ("number", JNumber 42.0); ...]) │
│ JObject │
│ Item: FSharpMap<String,JValue> │
│ - Key: array │
│ Value: JArray │
│ Item: FSharpList<JValue> │
│ - Item: 1 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Item: 2 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Item: 3 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Item: 4 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Item: 5 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: True │
│ - Key: boolean │
│ Value: JBool │
│ Item: True │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: True │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Key: emptyArray │
│ Value: JArray │
│ Item: FSharpList<JValue> │
│ │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: True │
│ - Key: emptyObject │
│ Value: JObject │
│ Item: FSharpMap<String,JValue> │
│ │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: True │
│ IsJArray: False │
│ - Key: escapedString │
│ Value: JString │
│ Item: This string contains \/\\\b\f\n\r\t\"\' │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Key: nestedArrays │
│ Value: JArray │
│ Item: FSharpList<JValue> │
│ - Item: [ JNumber 1.0, JNumber 2.0, JNumber 3.0 ] │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: True │
│ - Item: [ JNumber 4.0, JNumber 5.0, JNumber 6.0 ] │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: True │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: True │
│ - Key: nestedObjects │
│ Value: JArray │
│ Item: FSharpList<JValue> │
│ - Item: [ [age, JNumber 25.0], [name, JString "Alice"] ] │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: True │
│ IsJArray: False │
│ - Item: [ [age, JNumber 30.0], [name, JString "Bob"] ] │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: True │
│ IsJArray: False │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: True │
│ - Key: nullValue │
│ Value: JValue │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: True │
│ IsJObject: False │
│ IsJArray: False │
│ - Key: number │
│ Value: JNumber │
│ Item: 42 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Key: object │
│ Value: JObject │
│ Item: FSharpMap<String,JValue> │
│ - Key: nestedArray │
│ Value: JArray [JString "a"; JString "b"; JString "c"] │
│ - Key: nestedBoolean │
│ Value: JBool false │
│ - Key: nestedNull │
│ Value: JNull │
│ - Key: nestedNumber │
│ Value: JNumber 3.14 │
│ - Key: nestedObject │
│ Value: JObject (map [("nestedProperty", JString "Nested │
│ Object Value")]) │
│ - Key: nestedString │
│ Value: JString "Nested Value" │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: True │
│ IsJArray: False │
│ - Key: scientificNumber │
│ Value: JNumber │
│ Item: 3.14E-10 │
│ IsJString: False │
│ IsJNumber: True │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Key: specialCharacters │
│ Value: JString │
│ Item: !@#$%^&*() │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Key: string │
│ Value: JString │
│ Item: Hello, "World"! │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Key: unicodeString1 │
│ Value: JString │
│ Item: 프리마 │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ - Key: unicodeString2 │
│ Value: JString │
│ Item: Hello, "World"! │
│ IsJString: True │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: False │
│ IsJArray: False │
│ IsJString: False │
│ IsJNumber: False │
│ IsJBool: False │
│ IsJNull: False │
│ IsJObject: True │
│ IsJArray: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
[NbConvertApp] Converting notebook JsonParser.dib.ipynb to html
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
validate(nb)
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
return _pygments_highlight(
[NbConvertApp] Writing 545819 bytes to JsonParser.dib.html
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ # Parser (Polyglot) │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/fsharp/Notebooks.dib
#!import ../../lib/fsharp/Testing.dib
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
spNetCore.Html.Abstractions.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.Formatting.dll"
open System
open System.IO
open System.Text
open Microsoft.DotNet.Interactive.Formatting
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
open type Microsoft.DotNet.Interactive.Kernel
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
Formatter.ListExpansionLimit <- 100
── fsharp - import ─────────────────────────────────────────────────────────────
#r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
type AssertExceptionFormatter (ex) =
member _.Text =
ex.ToString()
.Replace("32m", "<span style=\"color: green;\">")
.Replace("36m", "</span>")
.Replace("31m", "<span style=\"color: red;\">")
.Replace("\n", "<br/>\n")
Formatter.Register<AssertExceptionFormatter> ((fun (x :
AssertExceptionFormatter) -> x.Text), "text/html")
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __expect fn log expected actual =
if log then printfn $"{actual.ToDisplayString ()}"
try
"Testing.__expect" |> fn actual expected
with :? Expecto.AssertException as ex ->
AssertExceptionFormatter(ex).Display () |> ignore
failwith (ex.GetType().FullName)
let inline __contains log expected actual = __expect Expecto.Expect.contains log
expected actual
let inline _contains expected actual = __contains true expected actual
let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
expected actual
let inline _assertEqual expected actual = __assertEqual true expected actual
let inline __isGreaterThan log expected actual = __expect
Expecto.Expect.isGreaterThan log ex...
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __isBetween log a b actual =
let inline isBetween actual (a, b) _ =
__isGreaterThanOrEqual log a actual
__isLessThanOrEqual log b actual
__expect isBetween log (a, b) actual
let inline _isBetween a b actual = __isBetween true a b actual
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/spiral/common.fsx
#!import ../../lib/spiral/sm.fsx
#!import ../../lib/spiral/date_time.fsx
#!import ../../lib/spiral/file_system.fsx
#!import ../../lib/spiral/trace.fsx
#!import ../../lib/spiral/lib.fsx
#!import ../../lib/fsharp/Common.fs
── fsharp - import ─────────────────────────────────────────────────────────────
type [[<Struct>]] US0 =
| US0_0
| US0_1
and [[<Struct>]] US1 =
| US1_0 of f0_0 : US0
| US1_1
let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
let v1 : System.IDisposable option = None
let mutable _v1 = v1
#if FABLE_COMPILER_RUST && !WASM && !CONTRACT
let v2 : System.IDisposable = null |> unbox<System.IDisposable>
v2
#endif
#if FABLE_COMPILER_RUST && WASM
let v3 : System.IDisposable = null |> unbox<System.IDisposable>
v3
#endif
#if FABLE_COMPILER_RUST && CONTRACT
let v4 : System.IDisposable = null |> unbox<System.IDisposable>
v4
#endif
#if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
!WASM && !CONTRACT
let v5 : System.ID...
── fsharp - import ─────────────────────────────────────────────────────────────
type Mut0 = {mutable l0 : int32; mutable l1 : string}
and Mut1 = {mutable l0 : int32}
let rec closure1 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.Contains v0
v2
and closure0 () (v0 : string) : (string -> bool) =
closure1(v0)
and closure3 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.EndsWith v0
v2
and closure2 () (v0 : string) : (string -> bool) =
closure3(v0)
and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
let v3 : string = v2.PadLeft (v0, v1)
v3
and closure5 (v0 : int32) (v1 : char) : (string -> string) =
closure6(v0, v1)
and closure4 () (v0 : int32) : (char -> (string -> string)) =
closure5(v0)
and closure8 (v0 : int32) (v1 : string) : string =
let v2 : stri...
── fsharp - import ─────────────────────────────────────────────────────────────
let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
let v2 : (System.Guid -> string) = _.ToString()
let v3 : string = v2 v0
let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
v5
and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
closure1(v0)
and closure5 (v0 : string, v1 : string) (v2 : string) : string =
let v3 : string = v2.Replace (v0, v1)
v3
and closure4 (v0 : string) (v1 : string) : (string -> string) =
closure5(v0, v1)
and closure3 () (v0 : string) : (string -> (string -> string)) =
closure4(v0)
and method0 () : (string -> (string -> (string -> string))) =
closure3()
and closure2 (...
── fsharp - import ─────────────────────────────────────────────────────────────
#if FABLE_COMPILER // file_system.types
[[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
[[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
base64_DecodeError = class end
[[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
serde_json_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
serde_json_Value = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
serde_wasm_bindgen_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
── fsharp - import ─────────────────────────────────────────────────────────────
module State = let mutable trace_state = None
type [[<Struct>]] US0 =
| US0_0
| US0_1
| US0_2
| US0_3
| US0_4
and Mut0 = {mutable l0 : int64}
and Mut1 = {mutable l0 : bool}
and Mut2 = {mutable l0 : US0}
and [[<Struct>]] US1 =
| US1_0 of f0_0 : int64
| US1_1
and [[<Struct>]] US2 =
| US2_0 of f0_0 : int64
| US2_1
let rec method1 (v0 : int64 option) : int64 option =
v0
and method2 (v0 : int64 option) : int64 option =
v0
and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
let v0 : Mut1 = {l0 = true} : Mut1
let v1 : Mut0 = {l0 = 0L} : Mut0
let v2 : US0 = US0_0
let v3 : Mut2 = {l0 = v2} : Mut2
let v4 : Mut1 = {l0 = false} : Mut1
let v5 : int64 option option = None
...
── fsharp - import ─────────────────────────────────────────────────────────────
module SpiralTrace =
let get_trace_state () =
#if !INTERACTIVE
Trace.get_trace_state ()
#else
get_trace_state ()
#endif
let trace x =
#if !INTERACTIVE
Trace.trace x
#else
trace x
#endif
let US0_0 =
#if !INTERACTIVE
Trace.US0_0
#else
US0_0
#endif
let US0_1 =
#if !INTERACTIVE
Trace.US0_1
#else
US0_1
#endif
let US0_2 =
#if !INTERACTIVE
Trace.US0_2
#else
US0_2
#endif
let US0_3 =
#if !INTERACTIVE
Trace.US0_3
#else
US0_3
#endif
let US0_4 =
#if !INTERACTIVE
Trace.US0_4
#else
US0_4
#endif
#if !FABLE_COMPILER && !WASM && !CONTRACT
module SpiralDateTime =
let format x =
#if !INTERACTIVE
Date_ti...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Common =
#if !INTERACTIVE
open Lib
#endif
let nl = System.Environment.NewLine
let q = @""""
let inline cons head tail = head :: tail
/// ## memoize
let inline memoize fn =
let result = lazy fn ()
fun () -> result.Value
/// ## TraceLevel
type TraceLevel =
| Verbose
| Debug
| Info
| Warning
| Critical
let inline getLocals () = ""
/// ## trace
let to_trace_level = function
| Verbose -> SpiralTrace.US0_0
| Debug -> SpiralTrace.US0_1
| Info -> SpiralTrace.US0_2
| Warning -> SpiralTrace.US0_3
| Critical -> SpiralTrace.US0_4
let trace level fn g...
── fsharp ──────────────────────────────────────────────────────────────────────
open Common
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### TextInput │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
type Position =
{
line : int
column : int
}
── fsharp ──────────────────────────────────────────────────────────────────────
let initialPos = { line = 0; column = 0 }
── fsharp ──────────────────────────────────────────────────────────────────────
let inline incrCol (pos : Position) =
{ pos with column = pos.column + 1 }
── fsharp ──────────────────────────────────────────────────────────────────────
let inline incrLine pos =
{ line = pos.line + 1; column = 0 }
── fsharp ──────────────────────────────────────────────────────────────────────
type InputState =
{
lines : string[[]]
position : Position
}
── fsharp ──────────────────────────────────────────────────────────────────────
let inline fromStr str =
{
lines =
if str |> String.IsNullOrEmpty
then [[||]]
else str |> SpiralSm.split_string [[| "\r\n"; "\n" |]]
position = initialPos
}
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
fromStr "" |> _assertEqual {
lines = [[||]]
position = { line = 0; column = 0 }
}
╭─[ 64.45ms - stdout ]─────────────────────────────────────────────────────────╮
│ InputState │
│ lines: [ ] │
│ position: Position │
│ line: 0 │
│ column: 0 │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
fromStr "Hello \n World" |> _assertEqual {
lines = [[| "Hello "; " World" |]]
position = { line = 0; column = 0 }
}
╭─[ 27.46ms - stdout ]─────────────────────────────────────────────────────────╮
│ InputState │
│ lines: [ Hello , World ] │
│ position: Position │
│ line: 0 │
│ column: 0 │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline currentLine inputState =
let linePos = inputState.position.line
if linePos < inputState.lines.Length
then inputState.lines.[[linePos]]
else "end of file"
── fsharp ──────────────────────────────────────────────────────────────────────
let inline nextChar input =
let linePos = input.position.line
let colPos = input.position.column
if linePos >= input.lines.Length
then input, None
else
let currentLine = currentLine input
if colPos < currentLine.Length then
let char = currentLine.[[colPos]]
let newPos = incrCol input.position
let newState = { input with position = newPos }
newState, Some char
else
let char = '\n'
let newPos = incrLine input.position
let newState = { input with position = newPos }
newState, Some char
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let newInput, charOpt = fromStr "Hello World" |> nextChar
newInput |> _assertEqual {
lines = [[| "Hello World" |]]
position = { line = 0; column = 1 }
}
charOpt |> _assertEqual (Some 'H')
╭─[ 42.60ms - stdout ]─────────────────────────────────────────────────────────╮
│ InputState │
│ lines: [ Hello World ] │
│ position: Position │
│ line: 0 │
│ column: 1 │
│ FSharpOption<Char> │
│ Value: H │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let newInput, charOpt = fromStr "Hello\n\nWorld" |> nextChar
newInput |> _assertEqual {
lines = [[| "Hello"; ""; "World" |]]
position = { line = 0; column = 1 }
}
charOpt |> _assertEqual (Some 'H')
╭─[ 43.00ms - stdout ]─────────────────────────────────────────────────────────╮
│ InputState │
│ lines: [ Hello, , World ] │
│ position: Position │
│ line: 0 │
│ column: 1 │
│ FSharpOption<Char> │
│ Value: H │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ### Parser │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
type Input = InputState
type ParserLabel = string
type ParserError = string
type ParserPosition =
{
currentLine : string
line : int
column : int
}
type ParseResult<'a> =
| Success of 'a
| Failure of ParserLabel * ParserError * ParserPosition
type Parser<'a> =
{
label : ParserLabel
parseFn : Input -> ParseResult<'a * Input>
}
── fsharp ──────────────────────────────────────────────────────────────────────
let inline printResult result =
match result with
| Success (value, input) ->
printfn $"%A{value}"
| Failure (label, error, parserPos) ->
let errorLine = parserPos.currentLine
let colPos = parserPos.column
let linePos = parserPos.line
let failureCaret = $"{' ' |> string |> String.replicate colPos}^{error}"
printfn $"Line:%i{linePos} Col:%i{colPos} Error parsing
%s{label}\n%s{errorLine}\n%s{failureCaret}"
── fsharp ──────────────────────────────────────────────────────────────────────
let inline runOnInput parser input =
parser.parseFn input
── fsharp ──────────────────────────────────────────────────────────────────────
let inline run parser inputStr =
runOnInput parser (fromStr inputStr)
── fsharp ──────────────────────────────────────────────────────────────────────
let inline parserPositionFromInputState (inputState : Input) =
{
currentLine = currentLine inputState
line = inputState.position.line
column = inputState.position.column
}
── fsharp ──────────────────────────────────────────────────────────────────────
let inline getLabel parser =
parser.label
── fsharp ──────────────────────────────────────────────────────────────────────
let inline setLabel parser newLabel =
{
label = newLabel
parseFn = fun input ->
match parser.parseFn input with
| Success s -> Success s
| Failure (oldLabel, err, pos) -> Failure (newLabel, err, pos)
}
── fsharp ──────────────────────────────────────────────────────────────────────
let (<?>) = setLabel
── fsharp ──────────────────────────────────────────────────────────────────────
let inline satisfy predicate label =
{
label = label
parseFn = fun input ->
let remainingInput, charOpt = nextChar input
match charOpt with
| None ->
let err = "No more input"
let pos = parserPositionFromInputState input
Failure (label, err, pos)
| Some first ->
if predicate first
then Success (first, remainingInput)
else
let err = $"Unexpected '%c{first}'"
let pos = parserPositionFromInputState input
Failure (label, err, pos)
}
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "Hello"
let parser = satisfy (fun c -> c = 'H') "H"
runOnInput parser input |> _assertEqual (
Success (
'H',
{
lines = [[| "Hello" |]]
position = { line = 0; column = 1 }
}
)
)
╭─[ 49.54ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - H │
│ - InputState │
│ lines: [ Hello ] │
│ position: Position │
│ line: 0 │
│ column: 1 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "World"
let parser = satisfy (fun c -> c = 'H') "H"
runOnInput parser input |> _assertEqual (
Failure (
"H",
"Unexpected 'W'",
{
currentLine = "World"
line = 0
column = 0
}
)
)
╭─[ 42.87ms - stdout ]─────────────────────────────────────────────────────────╮
│ Failure │
│ Item1: H │
│ Item2: Unexpected 'W' │
│ Item3: ParserPosition │
│ currentLine: World │
│ line: 0 │
│ column: 0 │
│ IsSuccess: False │
│ IsFailure: True │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline bindP f p =
{
label = "unknown"
parseFn = fun input ->
match runOnInput p input with
| Failure (label, err, pos) -> Failure (label, err, pos)
| Success (value1, remainingInput) -> runOnInput (f value1)
remainingInput
}
── fsharp ──────────────────────────────────────────────────────────────────────
let inline (>>=) p f = bindP f p
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "Hello"
let parser = satisfy (fun c -> c = 'H') "H"
let parser2 = parser >>= fun c -> satisfy (fun c -> c = 'e') "e"
runOnInput parser2 input |> _assertEqual (
Success (
'e',
{
lines = [[| "Hello" |]]
position = { line = 0; column = 2 }
}
)
)
╭─[ 42.33ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - e │
│ - InputState │
│ lines: [ Hello ] │
│ position: Position │
│ line: 0 │
│ column: 2 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "World"
let parser = satisfy (fun c -> c = 'W') "W"
let parser2 = parser >>= fun c -> satisfy (fun c -> c = 'e') "e"
runOnInput parser2 input |> _assertEqual (
Failure (
"e",
"Unexpected 'o'",
{
currentLine = "World"
line = 0
column = 1
}
)
)
╭─[ 41.47ms - stdout ]─────────────────────────────────────────────────────────╮
│ Failure │
│ Item1: e │
│ Item2: Unexpected 'o' │
│ Item3: ParserPosition │
│ currentLine: World │
│ line: 0 │
│ column: 1 │
│ IsSuccess: False │
│ IsFailure: True │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline returnP x =
{
label = $"%A{x}"
parseFn = fun input -> Success (x, input)
}
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "Hello"
let parser = returnP "Hello"
runOnInput parser input |> _assertEqual (
Success (
"Hello",
{
lines = [[| "Hello" |]]
position = { line = 0; column = 0 }
}
)
)
╭─[ 39.70ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - Hello │
│ - InputState │
│ lines: [ Hello ] │
│ position: Position │
│ line: 0 │
│ column: 0 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline mapP f =
bindP (f >> returnP)
── fsharp ──────────────────────────────────────────────────────────────────────
let (<!>) = mapP
── fsharp ──────────────────────────────────────────────────────────────────────
let inline (|>>) x f = f <!> x
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "Hello"
let parser = satisfy (fun c -> c = 'H') "H"
let parser2 = parser |>> string
runOnInput parser2 input |> _assertEqual (
Success (
"H",
{
lines = [[| "Hello" |]]
position = { line = 0; column = 1 }
}
)
)
╭─[ 41.41ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - H │
│ - InputState │
│ lines: [ Hello ] │
│ position: Position │
│ line: 0 │
│ column: 1 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline applyP fP xP =
fP >>=
fun f ->
xP >>=
fun x ->
returnP (f x)
── fsharp ──────────────────────────────────────────────────────────────────────
let (<*>) = applyP
── fsharp ──────────────────────────────────────────────────────────────────────
let inline lift2 f xP yP =
returnP f <*> xP <*> yP
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "Hello"
let parser = satisfy (fun c -> c = 'H') "H"
let parser2 = satisfy (fun c -> c = 'e') "e"
let parser3 = lift2 (fun c1 c2 -> string c1 + string c2) parser parser2
runOnInput parser3 input |> _assertEqual (
Success (
"He",
{
lines = [[| "Hello" |]]
position = { line = 0; column = 2 }
}
)
)
╭─[ 69.21ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - He │
│ - InputState │
│ lines: [ Hello ] │
│ position: Position │
│ line: 0 │
│ column: 2 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline andThen p1 p2 =
p1 >>=
fun p1Result ->
p2 >>=
fun p2Result ->
returnP (p1Result, p2Result)
<?> $"{getLabel p1} andThen {getLabel p2}"
── fsharp ──────────────────────────────────────────────────────────────────────
let (.>>.) = andThen
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "Hello"
let parser = satisfy (fun c -> c = 'H') "H"
let parser2 = satisfy (fun c -> c = 'e') "e"
let parser3 = parser .>>. parser2
runOnInput parser3 input |> _assertEqual (
Success (
('H', 'e'),
{
lines = [[| "Hello" |]]
position = { line = 0; column = 2 }
}
)
)
╭─[ 66.30ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - ( H, e ) │
│ - InputState │
│ lines: [ Hello ] │
│ position: Position │
│ line: 0 │
│ column: 2 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline orElse p1 p2 =
{
label = $"{getLabel p1} orElse {getLabel p2}"
parseFn = fun input ->
match runOnInput p1 input with
| Success _ as result -> result
| Failure _ -> runOnInput p2 input
}
── fsharp ──────────────────────────────────────────────────────────────────────
let (<|>) = orElse
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "hello"
let parser = satisfy (fun c -> c = 'H') "H"
let parser2 = satisfy (fun c -> c = 'h') "h"
let parser3 = parser <|> parser2
runOnInput parser3 input |> _assertEqual (
Success (
'h',
{
lines = [[| "hello" |]]
position = { line = 0; column = 1 }
}
)
)
╭─[ 39.89ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - h │
│ - InputState │
│ lines: [ hello ] │
│ position: Position │
│ line: 0 │
│ column: 1 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline choice listOfParsers =
listOfParsers |> List.reduce (<|>)
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "hello"
let parser = satisfy (fun c -> c = 'H') "H"
let parser2 = satisfy (fun c -> c = 'h') "h"
let parser3 = choice [[ parser; parser2 ]]
runOnInput parser3 input |> _assertEqual (
Success (
'h',
{
lines = [[| "hello" |]]
position = { line = 0; column = 1 }
}
)
)
╭─[ 42.57ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - h │
│ - InputState │
│ lines: [ hello ] │
│ position: Position │
│ line: 0 │
│ column: 1 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let rec sequence parserList =
match parserList with
| [[]] -> returnP [[]]
| head :: tail -> (lift2 cons) head (sequence tail)
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "Hello"
let parser = satisfy (fun c -> c = 'H') "H"
let parser2 = satisfy (fun c -> c = 'e') "e"
let parser3 = sequence [[ parser; parser2 ]]
runOnInput parser3 input |> _assertEqual (
Success (
[[ 'H'; 'e' ]],
{
lines = [[| "Hello" |]]
position = { line = 0; column = 2 }
}
)
)
╭─[ 62.12ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - [ H, e ] │
│ - InputState │
│ lines: [ Hello ] │
│ position: Position │
│ line: 0 │
│ column: 2 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let rec parseZeroOrMore parser input =
match runOnInput parser input with
| Failure (_, _, _) ->
[[]], input
| Success (firstValue, inputAfterFirstParse) ->
let subsequentValues, remainingInput = parseZeroOrMore parser
inputAfterFirstParse
firstValue :: subsequentValues, remainingInput
── fsharp ──────────────────────────────────────────────────────────────────────
let inline many parser =
{
label = $"many {getLabel parser}"
parseFn = fun input -> Success (parseZeroOrMore parser input)
}
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "hello"
let parser = satisfy (fun c -> c = 'H') "H"
let parser2 = many parser
runOnInput parser2 input |> _assertEqual (
Success (
[[]],
{
lines = [[| "hello" |]]
position = { line = 0; column = 0 }
}
)
)
╭─[ 40.83ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - [ ] │
│ - InputState │
│ lines: [ hello ] │
│ position: Position │
│ line: 0 │
│ column: 0 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline many1 p =
p >>=
fun head ->
many p >>=
fun tail ->
returnP (head :: tail)
<?> $"many1 {getLabel p}"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "hello"
let parser = satisfy (fun c -> c = 'H') "H"
let parser2 = many1 parser
runOnInput parser2 input |> _assertEqual (
Failure (
"many1 H",
"Unexpected 'h'",
{
currentLine = "hello"
line = 0
column = 0
}
)
)
╭─[ 51.95ms - stdout ]─────────────────────────────────────────────────────────╮
│ Failure │
│ Item1: many1 H │
│ Item2: Unexpected 'h' │
│ Item3: ParserPosition │
│ currentLine: hello │
│ line: 0 │
│ column: 0 │
│ IsSuccess: False │
│ IsFailure: True │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline opt p =
let some = p |>> Some
let none = returnP None
(some <|> none)
<?> $"opt {getLabel p}"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "hello"
let parser = satisfy (fun c -> c = 'H') "H"
let parser2 = opt parser
runOnInput parser2 input |> _assertEqual (
Success (
None,
{
lines = [[| "hello" |]]
position = { line = 0; column = 0 }
}
)
)
╭─[ 48.48ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - <null> │
│ - InputState │
│ lines: [ hello ] │
│ position: Position │
│ line: 0 │
│ column: 0 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline (.>>) p1 p2 =
p1 .>>. p2
|> mapP fst
── fsharp ──────────────────────────────────────────────────────────────────────
let inline (>>.) p1 p2 =
p1 .>>. p2
|> mapP snd
── fsharp ──────────────────────────────────────────────────────────────────────
let inline between p1 p2 p3 =
p1 >>. p2 .>> p3
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "[[Hello]]"
let parser =
between
(satisfy (fun c -> c = '[[') "[[")
(many (satisfy (fun c -> [[ 'a' .. 'z' ]] @ [[ 'A' .. 'Z' ]] |>
List.contains c) "letter"))
(satisfy (fun c -> c = ']]') "]]")
runOnInput parser input |> _assertEqual (
Success (
[[ 'H'; 'e'; 'l'; 'l'; 'o' ]],
{
lines = [[| "[[Hello]]" |]]
position = { line = 0; column = 7 }
}
)
)
╭─[ 146.09ms - stdout ]────────────────────────────────────────────────────────╮
│ Success │
│ Item: - [ H, e, l, l, o ] │
│ - InputState │
│ lines: [ [Hello] ] │
│ position: Position │
│ line: 0 │
│ column: 7 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline sepBy1 p sep =
let sepThenP = sep >>. p
p .>>. many sepThenP
|>> fun (p, pList) -> p :: pList
── fsharp ──────────────────────────────────────────────────────────────────────
let inline sepBy p sep =
sepBy1 p sep <|> returnP [[]]
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "Hello,World"
let parser = sepBy (many (satisfy (fun c -> c <> ',') "not comma")) (satisfy
(fun c -> c = ',') "comma")
runOnInput parser input |> _assertEqual (
Success (
[[ [[ 'H'; 'e'; 'l'; 'l'; 'o' ]]; [[ 'W'; 'o'; 'r'; 'l'; 'd'; '\n' ]]
]],
{
lines = [[| "Hello,World" |]]
position = { line = 1; column = 0 }
}
)
)
╭─[ 89.13ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - FSharpList<FSharpList<Char>> │
│ [ H, e, l, l, o ] │
│ [ W, o, r, l, d, │
│ ] │
│ - InputState │
│ lines: [ Hello,World ] │
│ position: Position │
│ line: 1 │
│ column: 0 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline pchar charToMatch =
satisfy ((=) charToMatch) $"%c{charToMatch}"
── fsharp ──────────────────────────────────────────────────────────────────────
let inline anyOf listOfChars =
listOfChars
|> List.map pchar
|> choice
<?> $"anyOf %A{listOfChars}"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "Hello"
let parser = anyOf [[ 'H'; 'e'; 'l'; 'o' ]] |> many
runOnInput parser input |> _assertEqual (
Success (
[[ 'H'; 'e'; 'l'; 'l'; 'o' ]],
{
lines = [[| "Hello" |]]
position = { line = 0; column = 5 }
}
)
)
╭─[ 43.28ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - [ H, e, l, l, o ] │
│ - InputState │
│ lines: [ Hello ] │
│ position: Position │
│ line: 0 │
│ column: 5 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline charListToStr charList =
charList |> List.toArray |> String
── fsharp ──────────────────────────────────────────────────────────────────────
let inline manyChars cp =
many cp
|>> charListToStr
── fsharp ──────────────────────────────────────────────────────────────────────
let inline manyChars1 cp =
many1 cp
|>> charListToStr
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "Hello"
let parser = manyChars1 (anyOf [[ 'H'; 'e'; 'l'; 'o' ]])
runOnInput parser input |> _assertEqual (
Success (
"Hello",
{
lines = [[| "Hello" |]]
position = { line = 0; column = 5 }
}
)
)
╭─[ 131.89ms - stdout ]────────────────────────────────────────────────────────╮
│ Success │
│ Item: - Hello │
│ - InputState │
│ lines: [ Hello ] │
│ position: Position │
│ line: 0 │
│ column: 5 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline pstring str =
str
|> List.ofSeq
|> List.map pchar
|> sequence
|> mapP charListToStr
<?> str
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "Hello"
let parser = pstring "Hello"
runOnInput parser input |> _assertEqual (
Success (
"Hello",
{
lines = [[| "Hello" |]]
position = { line = 0; column = 5 }
}
)
)
╭─[ 62.02ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - Hello │
│ - InputState │
│ lines: [ Hello ] │
│ position: Position │
│ line: 0 │
│ column: 5 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let whitespaceChar =
satisfy Char.IsWhiteSpace "whitespace"
── fsharp ──────────────────────────────────────────────────────────────────────
let spaces = many whitespaceChar
── fsharp ──────────────────────────────────────────────────────────────────────
let spaces1 = many1 whitespaceChar
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr " Hello"
let parser = spaces1 .>>. pstring "Hello"
runOnInput parser input |> _assertEqual (
Success (
([[ ' '; ' ' ]], "Hello"),
{
lines = [[| " Hello" |]]
position = { line = 0; column = 7 }
}
)
)
╭─[ 65.27ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - - [ , ] │
│ - Hello │
│ - InputState │
│ lines: [ Hello ] │
│ position: Position │
│ line: 0 │
│ column: 7 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let digitChar =
satisfy Char.IsDigit "digit"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let input = fromStr "Hello"
let parser = digitChar
runOnInput parser input |> _assertEqual (
Failure (
"digit",
"Unexpected 'H'",
{
currentLine = "Hello"
line = 0
column = 0
}
)
)
╭─[ 27.47ms - stdout ]─────────────────────────────────────────────────────────╮
│ Failure │
│ Item1: digit │
│ Item2: Unexpected 'H' │
│ Item3: ParserPosition │
│ currentLine: Hello │
│ line: 0 │
│ column: 0 │
│ IsSuccess: False │
│ IsFailure: True │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let pint =
let inline resultToInt (sign, digits) =
let i = int digits
match sign with
| Some ch -> -i
| None -> i
let digits = manyChars1 digitChar
opt (pchar '-') .>>. digits
|> mapP resultToInt
<?> "integer"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run pint "-123"
|> _assertEqual (
Success (
-123,
{
lines = [[| "-123" |]]
position = { line = 0; column = 4 }
}
)
)
╭─[ 52.60ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - -123 │
│ - InputState │
│ lines: [ -123 ] │
│ position: Position │
│ line: 0 │
│ column: 4 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let pfloat =
let inline resultToFloat (((sign, digits1), point), digits2) =
let fl = float $"{digits1}.{digits2}"
match sign with
| Some ch -> -fl
| None -> fl
let digits = manyChars1 digitChar
opt (pchar '-') .>>. digits .>>. pchar '.' .>>. digits
|> mapP resultToFloat
<?> "float"
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
run pfloat "-123.45"
|> _assertEqual (
Success (
-123.45,
{
lines = [[| "-123.45" |]]
position = { line = 0; column = 7 }
}
)
)
╭─[ 52.59ms - stdout ]─────────────────────────────────────────────────────────╮
│ Success │
│ Item: - -123.45 │
│ - InputState │
│ lines: [ -123.45 ] │
│ position: Position │
│ line: 0 │
│ column: 7 │
│ - IsSuccess: True │
│ IsFailure: False │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline createParserForwardedToRef<'a> () =
let mutable parserRef : Parser<'a> =
{
label = "unknown"
parseFn = fun _ -> failwith "unfixed forwarded parser"
}
let wrapperParser =
{ parserRef with
parseFn = fun input -> runOnInput parserRef input
}
wrapperParser, (fun v -> parserRef <- v)
── fsharp ──────────────────────────────────────────────────────────────────────
let inline (>>%) p x =
p
|>> fun _ -> x
[NbConvertApp] Converting notebook Parser.dib.ipynb to html
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
validate(nb)
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
return _pygments_highlight(
[NbConvertApp] Writing 415639 bytes to Parser.dib.html
00:00:00 #1 [debug] writeDibCode / output: Fs / path: JsonParser.dib
00:00:00 #1 [debug] writeDibCode / output: Fs / path: Parser.dib
00:00:00 #3 [debug] parseDibCode / output: Fs / file: Parser.dib
00:00:00 #3 [debug] parseDibCode / output: Fs / file: JsonParser.dib
In [ ]:
{ . "$ScriptDir/../apps/spiral/build.ps1" } | Invoke-Block
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ # Supervisor (Polyglot) │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/fsharp/Notebooks.dib
#!import ../../lib/fsharp/Testing.dib
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
spNetCore.Html.Abstractions.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.Formatting.dll"
open System
open System.IO
open System.Text
open Microsoft.DotNet.Interactive.Formatting
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
open type Microsoft.DotNet.Interactive.Kernel
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
Formatter.ListExpansionLimit <- 100
── fsharp - import ─────────────────────────────────────────────────────────────
#r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
type AssertExceptionFormatter (ex) =
member _.Text =
ex.ToString()
.Replace("32m", "<span style=\"color: green;\">")
.Replace("36m", "</span>")
.Replace("31m", "<span style=\"color: red;\">")
.Replace("\n", "<br/>\n")
Formatter.Register<AssertExceptionFormatter> ((fun (x :
AssertExceptionFormatter) -> x.Text), "text/html")
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __expect fn log expected actual =
if log then printfn $"{actual.ToDisplayString ()}"
try
"Testing.__expect" |> fn actual expected
with :? Expecto.AssertException as ex ->
AssertExceptionFormatter(ex).Display () |> ignore
failwith (ex.GetType().FullName)
let inline __contains log expected actual = __expect Expecto.Expect.contains log
expected actual
let inline _contains expected actual = __contains true expected actual
let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
expected actual
let inline _assertEqual expected actual = __assertEqual true expected actual
let inline __isGreaterThan log expected actual = __expect
Expecto.Expect.isGreaterThan log ex...
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __isBetween log a b actual =
let inline isBetween actual (a, b) _ =
__isGreaterThanOrEqual log a actual
__isLessThanOrEqual log b actual
__expect isBetween log (a, b) actual
let inline _isBetween a b actual = __isBetween true a b actual
── fsharp ──────────────────────────────────────────────────────────────────────
#r
@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan
dard2.1/FSharp.Control.AsyncSeq.dll"
#r
@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.
0/System.Reactive.dll"
#r
@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/
netstandard2.0/System.Reactive.Linq.dll"
#r
@"../../../../../../../.nuget/packages/argu/6.2.2/lib/netstandard2.0/Argu.dll"
#r
@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li
b/net6.0/System.CommandLine.dll"
#r
@"../../../../../../../.nuget/packages/microsoft.aspnetcore.http.connections.com
mon/7.0.0/lib/net7.0/Microsoft.AspNetCore.Http.Connections.Common.dll"
#r
@"../../../../../../../.nuget/packages/microsoft.aspnetcore.http.connections.cli
ent/7.0.0/lib/net7.0/Microsoft.AspNetCore.Http.Connections.Client.dll"
#r
@"../../../../../../../.nuget/packages/microsoft.aspnetcore.signalr.common/7.0.0
/lib/net7.0/Microsoft.AspNetCore.SignalR.Common.dll"
#r
@"../../../../../../../.nuget/packages/microsoft.aspnetcore.signalr.client/7.0.0
/lib/net7.0/Microsoft.AspNetCore.SignalR.Client.dll"
#r
@"../../../../../../../.nuget/packages/microsoft.aspnetcore.signalr.client.core/
7.0.0/lib/net7.0/Microsoft.AspNetCore.SignalR.Client.Core.dll"
#r
@"../../../../../../../.nuget/packages/fsharp.json/0.4.1/lib/netstandard2.0/FSha
rp.Json.dll"
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/spiral/common.fsx
#!import ../../lib/spiral/sm.fsx
#!import ../../lib/spiral/date_time.fsx
#!import ../../lib/spiral/file_system.fsx
#!import ../../lib/spiral/trace.fsx
#!import ../../lib/spiral/lib.fsx
#!import ../../lib/fsharp/Common.fs
#!import ../../lib/fsharp/CommonFSharp.fs
#!import ../../lib/fsharp/Threading.fs
#!import ../../lib/fsharp/Crypto.fs
#!import ../../lib/fsharp/Async.fs
#!import ../../lib/fsharp/AsyncSeq.fs
#!import ../../lib/fsharp/Networking.fs
#!import ../../lib/fsharp/Runtime.fs
#!import ../../lib/fsharp/FileSystem.fs
── fsharp - import ─────────────────────────────────────────────────────────────
type [[<Struct>]] US0 =
| US0_0
| US0_1
and [[<Struct>]] US1 =
| US1_0 of f0_0 : US0
| US1_1
let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
let v1 : System.IDisposable option = None
let mutable _v1 = v1
#if FABLE_COMPILER_RUST && !WASM && !CONTRACT
let v2 : System.IDisposable = null |> unbox<System.IDisposable>
v2
#endif
#if FABLE_COMPILER_RUST && WASM
let v3 : System.IDisposable = null |> unbox<System.IDisposable>
v3
#endif
#if FABLE_COMPILER_RUST && CONTRACT
let v4 : System.IDisposable = null |> unbox<System.IDisposable>
v4
#endif
#if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
!WASM && !CONTRACT
let v5 : System.ID...
── fsharp - import ─────────────────────────────────────────────────────────────
type Mut0 = {mutable l0 : int32; mutable l1 : string}
and Mut1 = {mutable l0 : int32}
let rec closure1 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.Contains v0
v2
and closure0 () (v0 : string) : (string -> bool) =
closure1(v0)
and closure3 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.EndsWith v0
v2
and closure2 () (v0 : string) : (string -> bool) =
closure3(v0)
and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
let v3 : string = v2.PadLeft (v0, v1)
v3
and closure5 (v0 : int32) (v1 : char) : (string -> string) =
closure6(v0, v1)
and closure4 () (v0 : int32) : (char -> (string -> string)) =
closure5(v0)
and closure8 (v0 : int32) (v1 : string) : string =
let v2 : stri...
── fsharp - import ─────────────────────────────────────────────────────────────
let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
let v2 : (System.Guid -> string) = _.ToString()
let v3 : string = v2 v0
let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
v5
and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
closure1(v0)
and closure5 (v0 : string, v1 : string) (v2 : string) : string =
let v3 : string = v2.Replace (v0, v1)
v3
and closure4 (v0 : string) (v1 : string) : (string -> string) =
closure5(v0, v1)
and closure3 () (v0 : string) : (string -> (string -> string)) =
closure4(v0)
and method0 () : (string -> (string -> (string -> string))) =
closure3()
and closure2 (...
── fsharp - import ─────────────────────────────────────────────────────────────
#if FABLE_COMPILER // file_system.types
[[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
[[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
base64_DecodeError = class end
[[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
serde_json_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
serde_json_Value = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
serde_wasm_bindgen_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
── fsharp - import ─────────────────────────────────────────────────────────────
module State = let mutable trace_state = None
type [[<Struct>]] US0 =
| US0_0
| US0_1
| US0_2
| US0_3
| US0_4
and Mut0 = {mutable l0 : int64}
and Mut1 = {mutable l0 : bool}
and Mut2 = {mutable l0 : US0}
and [[<Struct>]] US1 =
| US1_0 of f0_0 : int64
| US1_1
and [[<Struct>]] US2 =
| US2_0 of f0_0 : int64
| US2_1
let rec method1 (v0 : int64 option) : int64 option =
v0
and method2 (v0 : int64 option) : int64 option =
v0
and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
let v0 : Mut1 = {l0 = true} : Mut1
let v1 : Mut0 = {l0 = 0L} : Mut0
let v2 : US0 = US0_0
let v3 : Mut2 = {l0 = v2} : Mut2
let v4 : Mut1 = {l0 = false} : Mut1
let v5 : int64 option option = None
...
── fsharp - import ─────────────────────────────────────────────────────────────
module SpiralTrace =
let get_trace_state () =
#if !INTERACTIVE
Trace.get_trace_state ()
#else
get_trace_state ()
#endif
let trace x =
#if !INTERACTIVE
Trace.trace x
#else
trace x
#endif
let US0_0 =
#if !INTERACTIVE
Trace.US0_0
#else
US0_0
#endif
let US0_1 =
#if !INTERACTIVE
Trace.US0_1
#else
US0_1
#endif
let US0_2 =
#if !INTERACTIVE
Trace.US0_2
#else
US0_2
#endif
let US0_3 =
#if !INTERACTIVE
Trace.US0_3
#else
US0_3
#endif
let US0_4 =
#if !INTERACTIVE
Trace.US0_4
#else
US0_4
#endif
#if !FABLE_COMPILER && !WASM && !CONTRACT
module SpiralDateTime =
let format x =
#if !INTERACTIVE
Date_ti...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Common =
#if !INTERACTIVE
open Lib
#endif
let nl = System.Environment.NewLine
let q = @""""
let inline cons head tail = head :: tail
/// ## memoize
let inline memoize fn =
let result = lazy fn ()
fun () -> result.Value
/// ## TraceLevel
type TraceLevel =
| Verbose
| Debug
| Info
| Warning
| Critical
let inline getLocals () = ""
/// ## trace
let to_trace_level = function
| Verbose -> SpiralTrace.US0_0
| Debug -> SpiralTrace.US0_1
| Info -> SpiralTrace.US0_2
| Warning -> SpiralTrace.US0_3
| Critical -> SpiralTrace.US0_4
let trace level fn g...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module CommonFSharp =
open Common
/// ## getUnionCaseName
let inline getUnionCaseName<'T> (x: 'T) =
match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with
| case, _ -> case.Name
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Threading =
open Common
/// ## newDisposableToken
let inline newDisposableToken (mergeToken:
System.Threading.CancellationToken option) =
let cts = new System.Threading.CancellationTokenSource ()
let cts =
match mergeToken with
| None -> cts
| Some mergeToken ->
System.Threading.CancellationTokenSource.CreateLinkedTokenSource
[[| cts.Token; mergeToken |]]
let disposable = new_disposable cts.Cancel
cts.Token, disposable
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Crypto =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## hashText
let hashText (input : string) =
use sha256 = System.Security.Cryptography.SHA256.Create ()
input
|> System.Text.Encoding.UTF8.GetBytes
|> sha256.ComputeHash
|> Array.map (fun b -> b.ToString "x2")
|> SpiralSm.concat ""
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Async =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## choice
let inline choice asyncs = async {
let e = Event<_> ()
use cts = new System.Threading.CancellationTokenSource ()
let fn =
asyncs
|> Seq.map (fun a -> async {
let! x = a
e.Trigger x
})
|> Async.Parallel
|> Async.Ignore
Async.Start (fn, cts.Token)
let! result = Async.AwaitEvent e.Publish
cts.Cancel ()
return result
}
/// ## map
let inline map fn a = async {
let! x = a
return fn x
}
/// ## catch
let inline catch a =
...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module AsyncSeq =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## subscribeEvent
let inline subscribeEvent (event: IEvent<'H, 'A>) map =
let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,
'A>(event.AddHandler, event.RemoveHandler)
System.Reactive.Linq.Observable.Select (observable, fun event -> map
event.EventArgs)
|> FSharp.Control.AsyncSeq.ofObservableBuffered
let subscribeToken (token : System.Threading.CancellationToken) =
let tcs = new System.Threading.Tasks.TaskCompletionSource ()
System.Action tcs.SetResult |> token.Register |> ignore
let start = System.DateTime.Now.Ticks
FSharp.Control.A...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Networking =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## testPortOpen
let inline testPortOpen port = async {
let! ct = Async.CancellationToken
use client = new System.Net.Sockets.TcpClient ()
try
do! client.ConnectAsync ("127.0.0.1", port, ct) |>
Async.awaitValueTaskUnit
return true
with ex ->
trace Verbose (fun () -> $"testPortOpen / ex: {ex |>
SpiralSm.format_exception}") getLocals
return false
}
let inline testPortOpenTimeout timeout port = async {
let! result =
testPortOpen port
|> Async.runWithTimeoutAsync timeout
return
...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Runtime =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## isWindows
let isWindows =
fun () ->
System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform
System.Runtime.InteropServices.OSPlatform.Windows
|> memoize
/// ## getExecutableSuffix
let inline getExecutableSuffix () =
if isWindows ()
then ".exe"
else ""
/// ## splitCommand
type private CommandParseStep =
| Start
| Path of quoted: bool
| Arguments
let splitCommand (command: string) =
let rec loop (path, args) chars step =
match chars, step with
| ('"' | '\'') ...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module FileSystem =
#if !INTERACTIVE
open Lib
#endif
open Common
open SpiralFileSystem.Operators
/// ## watchDirectory
[[<RequireQualifiedAccess>]]
type FileSystemChangeType =
| Failure
| Changed
| Created
| Deleted
| Renamed
[[<RequireQualifiedAccess>]]
type FileSystemChange =
| Failure of exn: exn
| Changed of path: string * content: string option
| Created of path: string * content: string option
| Deleted of path: string
| Renamed of oldPath: string * (string * string option)
let inline watchDirectoryWithFilter filter shouldReadContent path =
let fullPath = path |> Sys...
── fsharp ──────────────────────────────────────────────────────────────────────
#if !INTERACTIVE
open Lib
#endif
── fsharp ──────────────────────────────────────────────────────────────────────
open Common
open SpiralFileSystem.Operators
open Microsoft.AspNetCore.SignalR.Client
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## sendJson │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline sendJson (port : int) (json : string) = async {
let! portOpen = Networking.testPortOpen port
if portOpen then
try
let connection =
HubConnectionBuilder().WithUrl($"http://127.0.0.1:{port}").Build()
do! connection.StartAsync () |> Async.AwaitTask
let! result = connection.InvokeAsync<string>("ClientToServerMsg",
json) |> Async.AwaitTask
do! connection.StopAsync () |> Async.AwaitTask
trace Debug (fun () -> $"sendJson / port: {port} / json: {json} /
result.Length: {result |> Option.ofObj |> Option.map String.length}") getLocals
return Some result
with ex ->
trace Critical (fun () -> $"sendJson / port: {port} / json: {json} /
ex: {ex |> SpiralSm.format_exception}") getLocals
return None
else
trace Debug (fun () -> "sendJson / error: port not open") getLocals
return None
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## sendObj │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline sendObj port obj =
obj
|> System.Text.Json.JsonSerializer.Serialize
|> sendJson port
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## awaitCompiler │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
type VSCPos = {| line : int; character : int |}
type VSCRange = VSCPos * VSCPos
type RString = VSCRange * string
type TracedError = {| trace : string list; message : string |}
type ClientErrorsRes =
| FatalError of string
| TracedError of TracedError
| PackageErrors of {| uri : string; errors : RString list |}
| TokenizerErrors of {| uri : string; errors : RString list |}
| ParserErrors of {| uri : string; errors : RString list |}
| TypeErrors of {| uri : string; errors : RString list |}
── fsharp ──────────────────────────────────────────────────────────────────────
let inline awaitCompiler port cancellationToken = async {
let ct, disposable = cancellationToken |> Threading.newDisposableToken
let! ct = ct |> Async.mergeCancellationTokenWithDefaultAsync
let compiler = MailboxProcessor.Start (fun inbox -> async {
let! availablePort = Networking.getAvailablePort (Some 60) port
if availablePort <> port then
inbox.Post (port, false)
else
let repositoryRoot = SpiralFileSystem.get_source_directory () |>
SpiralFileSystem.find_parent ".paket" false
let compilerPath =
repositoryRoot </> "deps/The-Spiral-Language/The Spiral Language
2/artifacts/bin/The Spiral Language 2/release"
|> System.IO.Path.GetFullPath
let dllPath = compilerPath </> "Spiral.dll"
let! exitCode, result =
Runtime.executeWithOptionsAsync
{
Command = $@"dotnet ""{dllPath}"" --port {availablePort}
--default-int i32 --default-float f64"
CancellationToken = Some ct
WorkingDirectory = None
OnLine = Some <| fun { Line = line } -> async {
if line |> SpiralSm.contains $"Server bound to:
http://localhost:{availablePort}" then
do! Networking.waitForPortAccess (Some 500) true
availablePort |> Async.Ignore
let rec loop retry = async {
let getLocals () = $"port: {availablePort} /
retry: {retry} / {getLocals ()}"
try
let pingObj = {| Ping = true |}
let! pingResult = pingObj |> sendObj
availablePort
trace Verbose (fun () -> $"awaitCompiler
/ Ping / result: {pingResult}") getLocals
with ex ->
trace Verbose (fun () -> $"awaitCompiler
/ Ping / ex: {ex |> SpiralSm.format_exception}") getLocals
do! Async.Sleep 10
do! loop (retry + 1)
}
do! loop 0
inbox.Post (availablePort, true)
}
}
trace Debug (fun () -> $"awaitCompiler / exitCode: {exitCode} /
result: {result}") getLocals
disposable.Dispose ()
}, ct)
let! serverPort, managed = compiler.Receive ()
let connection =
HubConnectionBuilder().WithUrl($"http://127.0.0.1:{serverPort}").Build ()
do! connection.StartAsync () |> Async.AwaitTask
let event = Event<_> ()
let disposable' = connection.On<string> ("ServerToClientMsg", event.Trigger)
let stream =
FSharp.Control.AsyncSeq.unfoldAsync
(fun () -> async {
let! msg = event.Publish |> Async.AwaitEvent
return Some (msg |>
FSharp.Json.Json.deserialize<ClientErrorsRes>, ())
})
()
let disposable' =
new_disposable (fun () ->
async {
disposable'.Dispose ()
do! connection.StopAsync () |> Async.AwaitTask
disposable.Dispose ()
if managed
then do! Networking.waitForPortAccess (Some 2000) false
serverPort |> Async.Ignore
}
|> Async.RunSynchronously
)
return
serverPort,
stream,
ct,
disposable'
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## getFileUri │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline getFileUri (path : string) =
let path =
if Runtime.isWindows () |> not
then path
else $"{path.[[0]] |> System.Char.ToLower}{path.[[1..]]}" |>
SpiralSm.replace "\\" "/"
$"file:///{path |> SpiralSm.trim_start [[| '/' |]]}"
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## getFilePathFromUri │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline getFilePathFromUri uri =
match System.Uri.TryCreate (uri, System.UriKind.Absolute) with
| true, uri -> uri.AbsolutePath |> System.IO.Path.GetFullPath
| _ -> failwith "invalid uri"
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## getCompilerPort │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline getCompilerPort () =
13805
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## serialize_obj │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let serializeObj obj =
obj
|> FSharp.Json.Json.serialize
|> SpiralSm.replace "\\\\" "\\"
|> SpiralSm.replace "\\r\\n" "\n"
|> SpiralSm.replace "\\n" "\n"
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## buildFile │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline buildFile timeout port cancellationToken path = async {
let fullPath = path |> System.IO.Path.GetFullPath
let fileDir = fullPath |> System.IO.Path.GetDirectoryName
let fileName = fullPath |> System.IO.Path.GetFileNameWithoutExtension
let! code = fullPath |> SpiralFileSystem.read_all_text_async
let stream, disposable = fileDir |> FileSystem.watchDirectory (fun _ ->
false)
use _ = disposable
let token, disposable = Threading.newDisposableToken cancellationToken
use _ = disposable
let! serverPort, errors, ct, disposable = awaitCompiler port (Some token)
use _ = disposable
let fsxContentSeq =
stream
|> FSharp.Control.AsyncSeq.chooseAsync (function
| _, (FileSystem.FileSystemChange.Changed (path, _))
when (path |> System.IO.Path.GetFileName) = $"{fileName}.fsx"
->
fileDir </> path |>
SpiralFileSystem.read_all_text_retry_async
| _ -> None |> Async.init
)
|> FSharp.Control.AsyncSeq.map (fun content ->
Some (content |> SpiralSm.replace "\r\n" "\n"), None
)
let inline printErrorData (data : {| uri : string; errors : RString list |})
=
let fileName = data.uri |> System.IO.Path.GetFileName
let errors =
data.errors
|> List.map snd
|> SpiralSm.concat "\n"
$"{fileName}:\n{errors}"
let errorsSeq =
errors
|> FSharp.Control.AsyncSeq.choose (fun error ->
match error with
| FatalError message ->
Some (message, error)
| TracedError data ->
Some (data.message, error)
| PackageErrors data when data.errors |> List.isEmpty |> not ->
Some (data |> printErrorData, error)
| TokenizerErrors data when data.errors |> List.isEmpty |> not ->
Some (data |> printErrorData, error)
| ParserErrors data when data.errors |> List.isEmpty |> not ->
Some (data |> printErrorData, error)
| TypeErrors data when data.errors |> List.isEmpty |> not ->
Some (data |> printErrorData, error)
| _ -> None
)
|> FSharp.Control.AsyncSeq.map (fun (message, error) ->
None, Some (message, error)
)
let timerSeq =
1000
|> FSharp.Control.AsyncSeq.intervalMs
|> FSharp.Control.AsyncSeq.map (fun _ -> None, None)
let outputSeq =
[[ fsxContentSeq; errorsSeq; timerSeq ]]
|> FSharp.Control.AsyncSeq.mergeAll
let! outputChild =
((None, [[]], 0), outputSeq)
||> FSharp.Control.AsyncSeq.scan (
fun (fsxContentResult, errors, typeErrorCount) (fsxContent, error)
->
match fsxContent, error with
| Some fsxContent, None -> Some fsxContent, errors,
typeErrorCount
| None, Some (_, FatalError "File main has a type error
somewhere in its path.") ->
fsxContentResult, errors, typeErrorCount + 1
| None, Some error -> fsxContentResult, error :: errors,
typeErrorCount
| None, None when typeErrorCount >= 1 ->
fsxContentResult, errors, typeErrorCount + 1
| _ -> fsxContentResult, errors, typeErrorCount
)
|> FSharp.Control.AsyncSeq.takeWhileInclusive (fun (fsxContent, errors,
typeErrorCount) ->
trace Debug (fun () -> $"buildFile / takeWhileInclusive /
fsxContent: {fsxContent |> Option.defaultValue System.String.Empty |>
SpiralSm.ellipsis 750} / errors: {errors |> serializeObj} / typeErrorCount:
{typeErrorCount}") getLocals
#if INTERACTIVE
let errorWait = 2
#else
let errorWait = 10
#endif
match fsxContent, errors with
| None, [[]] when typeErrorCount > errorWait -> false
| None, [[]] -> true
| _ -> false
)
|> FSharp.Control.AsyncSeq.tryLast
|> Async.withCancellationToken ct
|> Async.catch
|> Async.runWithTimeoutAsync timeout
|> Async.StartChild
let fileOpenObj = {| FileOpen = {| uri = fullPath |> getFileUri; spiText =
code |} |}
let! _fileOpenResult = fileOpenObj |> sendObj serverPort
do! Async.Sleep 60
let buildFileObj = {| BuildFile = {| uri = fullPath |> getFileUri; backend =
"Fsharp" |} |}
let! _buildFileResult = buildFileObj |> sendObj serverPort
return!
outputChild
|> Async.map (function
| Some (Ok (Some (message, errors, _))) ->
message, errors |> List.distinct |> List.rev
| Some (Error ex) ->
trace Critical (fun () -> $"buildFile / error: {ex |>
serializeObj}") getLocals
None, [[]]
| _ -> None, [[]]
)
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## persistCode │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline persistCode code = async {
let repositoryRoot = SpiralFileSystem.get_source_directory () |>
SpiralFileSystem.find_parent ".paket" false
let targetDir = repositoryRoot </> "target/polyglot/spiral_eval"
let packagesDir = targetDir </> "packages"
let hashHex = code |> Crypto.hashText
let codeDir = packagesDir </> hashHex
codeDir |> System.IO.Directory.CreateDirectory |> ignore
let mainPath = codeDir </> "main.spi"
do! code |> SpiralFileSystem.write_all_text_exists mainPath
let spiprojPath = codeDir </> "package.spiproj"
let spiprojCode =
$"""packageDir: {repositoryRoot </> "lib"}
packages:
|core-
spiral-
modules:
main
"""
do! spiprojCode |> SpiralFileSystem.write_all_text_exists spiprojPath
return mainPath
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## buildCode │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline buildCode timeout cancellationToken code = async {
let! mainPath = persistCode code
let port = getCompilerPort ()
return! mainPath |> buildFile timeout port cancellationToken
}
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let buildCode timeout cancellationToken code = buildCode timeout
cancellationToken code
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"""inl app () =
console.write_line "text"
1i32
inl main () =
app
|> dyn
|> ignore
"""
|> buildCode 15000 None
|> Async.runWithTimeout 15000
|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)
|> _assertEqual (
Some (
Some """let rec closure0 () () : int32 =
let v0 : string = "text"
System.Console.WriteLine v0
1
let v0 : (unit -> int32) = closure0()
()
""",
[[]]
)
)
╭─[ 1.28s - stdout ]───────────────────────────────────────────────────────────╮
│ 00:00:00 #1 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:00 #2 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:00 #3 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:00 #4 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"inl app () =\n console.write_line │
│ \u0022text\u0022\n 1i32\n\ninl main () =\n app\n |\u003E dyn\n │
│ |\u003E │
│ ignore\n","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_eval/pa │
│ ckages/0ad2ee90a0886647a7d9c334e1811a0c3ae5599125952e30eba9d5e3b57a56e0/main │
│ .spi"}} / result.Length: │
│ 00:00:00 #5 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/target/ │
│ polyglot/spiral_eval/packages/0ad2ee90a0886647a7d9c334e1811a0c3ae5599125952e │
│ 30eba9d5e3b57a56e0/main.spi"}} / result.Length: │
│ 00:00:00 #6 [debug] buildFile / takeWhileInclusive / fsxContent: let rec │
│ closure0 () () : int32 = │
│ let v0 : string = "text" │
│ System.Console.WriteLine v0 │
│ 1 │
│ let v0 : (unit -> int32) = closure0() │
│ () │
│ / errors: [] / typeErrorCount: 0 │
│ 00:00:00 #7 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>> │
│ Value: - FSharpOption<String> │
│ Value: let rec closure0 () () : int32 = │
│ let v0 : string = "text" │
│ System.Console.WriteLine v0 │
│ 1 │
│ let v0 : (unit -> int32) = closure0() │
│ () │
│ │
│ - [ ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
""
|> buildCode 10000 None
|> Async.runWithTimeout 10000
|> _assertEqual None
╭─[ 10.22s - stdout ]──────────────────────────────────────────────────────────╮
│ 00:00:01 #8 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:01 #9 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:01 #10 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:01 #11 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"","uri":"file:///c:/home/git/polyglot/target/polyglo │
│ t/spiral_eval/packages/e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca4959 │
│ 91b7852b855/main.spi"}} / result.Length: │
│ 00:00:01 #12 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/target/ │
│ polyglot/spiral_eval/packages/e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b93 │
│ 4ca495991b7852b855/main.spi"}} / result.Length: │
│ 00:00:02 #13 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:03 #14 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:04 #15 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:05 #16 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:06 #17 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:07 #18 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:08 #19 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:09 #20 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:10 #21 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:11 #22 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ 00:00:11 #23 [debug] runWithTimeoutChildAsync / timeout: 10000 │
│ <null> │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"inl app () =
0i32
inl a = 1
inl main () =
app
|> dyn
|> ignore
"
|> buildCode 10000 None
|> Async.runWithTimeout 10000
|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)
|> _assertEqual (
Some (
None,
[[ "main.spi:
Global inl/let statements should all return functions known at parse time." ]]
)
)
╭─[ 764.49ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:11 #24 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:11 #25 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:11 #26 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:11 #27 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"inl app () =\n 0i32\n\ninl a = 1\n\ninl main () │
│ =\n app\n |\u003E dyn\n |\u003E │
│ ignore\n","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_eval/pa │
│ ckages/348c96764a8f66af39dd3ea799f5e487a51761b1e220b84a7038f033a002a481/main │
│ .spi"}} / result.Length: │
│ 00:00:11 #28 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/target/ │
│ polyglot/spiral_eval/packages/348c96764a8f66af39dd3ea799f5e487a51761b1e220b8 │
│ 4a7038f033a002a481/main.spi"}} / result.Length: │
│ 00:00:11 #29 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [ │
│ [ │
│ "main.spi: │
│ Global inl/let statements should all return functions known at parse time.", │
│ { │
│ "ParserErrors": { │
│ "errors": [ │
│ [ │
│ [ │
│ { │
│ "character": 0, │
│ "line": 3 │
│ }, │
│ { │
│ "character": 9, │
│ "line": 3 │
│ } │
│ ], │
│ "Global inl/let statements should all return functions known at │
│ parse time." │
│ ] │
│ ], │
│ "uri": │
│ "file:///c:\home\git\polyglot\target\polyglot\spiral_eval\packages\348c96764 │
│ a8f66af39dd3ea799f5e487a51761b1e220b84a7038f033a002a481\main.spi" │
│ } │
│ } │
│ ] │
│ ] / typeErrorCount: 0 │
│ 00:00:11 #30 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>> │
│ Value: - <null> │
│ - [ main.spi: │
│ Global inl/let statements should all return functions known at parse time. ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"""inl main () =
1i32 / 0i32
"""
|> buildCode 10000 None
|> Async.runWithTimeout 10000
|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)
|> _assertEqual (
Some (
None,
[[ "An attempt to divide by zero has been detected at compile time." ]]
)
)
╭─[ 660.20ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:12 #31 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:12 #32 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:12 #33 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:12 #34 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"inl main () =\n 1i32 / │
│ 0i32\n","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_eval/pack │
│ ages/232df6d862bb0667133bf3fbc55c0b33286bde4b85cdb17fe93dda9c433ec620/main.s │
│ pi"}} / result.Length: │
│ 00:00:12 #35 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/target/ │
│ polyglot/spiral_eval/packages/232df6d862bb0667133bf3fbc55c0b33286bde4b85cdb1 │
│ 7fe93dda9c433ec620/main.spi"}} / result.Length: │
│ 00:00:12 #36 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [ │
│ [ │
│ "An attempt to divide by zero has been detected at compile time.", │
│ { │
│ "TracedError": { │
│ "message": "An attempt to divide by zero has been detected at │
│ compile time.", │
│ "trace": [ │
│ "Error trace on line: 1, column: 10 in module: │
│ c:\home\git\polyglot\target\polyglot\spiral_eval\packages\232df6d862bb066713 │
│ 3bf3fbc55c0b33286bde4b85cdb17fe93dda9c433ec620\main.spi. │
│ inl main () = │
│ ^ │
│ ", │
│ "Error trace on line: 2, column: 5 in module: │
│ c:\home\git\polyglot\target\polyglot\spiral_eval\packages\232df6d862bb066713 │
│ 3bf3fbc55c0b33286bde4b85cdb17fe93dda9c433ec620\main.spi. │
│ 1i32 / 0i32 │
│ ^ │
│ " │
│ ] │
│ } │
│ } │
│ ] │
│ ] / typeErrorCount: 0 │
│ 00:00:12 #37 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>> │
│ Value: - <null> │
│ - [ An attempt to divide by zero has been detected at compile time. ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"""inl main () =
1 + ""
"""
|> buildCode 10000 None
|> Async.runWithTimeout 10000
|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)
|> _assertEqual (
Some (
None,
[[
"main.spi:
Constraint satisfaction error.
Got: string
Fails to satisfy: number"
]]
)
)
╭─[ 471.49ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:13 #38 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:13 #39 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:13 #40 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:13 #41 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"inl main () =\n 1 \u002B │
│ \u0022\u0022\n","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_e │
│ val/packages/2278923ce88b0e473e77d4d93e25afa6e5e4f5efe803982e504cc198d4c4d82 │
│ d/main.spi"}} / result.Length: │
│ 00:00:13 #42 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [ │
│ [ │
│ "main.spi: │
│ Constraint satisfaction error. │
│ Got: string │
│ Fails to satisfy: number", │
│ { │
│ "TypeErrors": { │
│ "errors": [ │
│ [ │
│ [ │
│ { │
│ "character": 8, │
│ "line": 1 │
│ }, │
│ { │
│ "character": 10, │
│ "line": 1 │
│ } │
│ ], │
│ "Constraint satisfaction error. │
│ Got: string │
│ Fails to satisfy: number" │
│ ] │
│ ], │
│ "uri": │
│ "file:///c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2278923ce │
│ 88b0e473e77d4d93e25afa6e5e4f5efe803982e504cc198d4c4d82d\main.spi" │
│ } │
│ } │
│ ] │
│ ] / typeErrorCount: 0 │
│ 00:00:13 #43 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/target/ │
│ polyglot/spiral_eval/packages/2278923ce88b0e473e77d4d93e25afa6e5e4f5efe80398 │
│ 2e504cc198d4c4d82d/main.spi"}} / result.Length: │
│ 00:00:13 #44 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>> │
│ Value: - <null> │
│ - [ main.spi: │
│ Constraint satisfaction error. │
│ Got: string │
│ Fails to satisfy: number ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"""inl main () =
x + y
"""
|> buildCode 10000 None
|> Async.runWithTimeout 10000
|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)
|> _assertEqual (
Some (
None,
[[
"main.spi:
Unbound variable: x.
Unbound variable: y."
]]
)
)
╭─[ 322.09ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:13 #45 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:13 #46 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:13 #47 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:13 #48 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"inl main () =\n x \u002B │
│ y\n","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_eval/package │
│ s/5d8d0e66f59ab13f3bfd8d88f05ce13771ab005b08581d99225216170ba6489b/main.spi" │
│ }} / result.Length: │
│ 00:00:13 #49 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [ │
│ [ │
│ "main.spi: │
│ Unbound variable: x. │
│ Unbound variable: y.", │
│ { │
│ "TypeErrors": { │
│ "errors": [ │
│ [ │
│ [ │
│ { │
│ "character": 4, │
│ "line": 1 │
│ }, │
│ { │
│ "character": 5, │
│ "line": 1 │
│ } │
│ ], │
│ "Unbound variable: x." │
│ ], │
│ [ │
│ [ │
│ { │
│ "character": 8, │
│ "line": 1 │
│ }, │
│ { │
│ "character": 9, │
│ "line": 1 │
│ } │
│ ], │
│ "Unbound variable: y." │
│ ] │
│ ], │
│ "uri": │
│ "file:///c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5d8d0e66f │
│ 59ab13f3bfd8d88f05ce13771ab005b08581d99225216170ba6489b\main.spi" │
│ } │
│ } │
│ ] │
│ ] / typeErrorCount: 0 │
│ 00:00:13 #50 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/target/ │
│ polyglot/spiral_eval/packages/5d8d0e66f59ab13f3bfd8d88f05ce13771ab005b08581d │
│ 99225216170ba6489b/main.spi"}} / result.Length: │
│ 00:00:13 #51 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>> │
│ Value: - <null> │
│ - [ main.spi: │
│ Unbound variable: x. │
│ Unbound variable: y. ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"""union a =
| B
| c
inl main () =
()
"""
|> buildCode 10000 None
|> Async.runWithTimeout 10000
|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)
|> _assertEqual (
Some (
None,
[[ "main.spi:
Expected: uppercase variable" ]]
)
)
╭─[ 432.25ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:13 #52 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:13 #53 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:13 #54 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:13 #55 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"union a =\n | B\n | c\n\ninl main () =\n │
│ ()\n","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_eval/packag │
│ es/e711a7af82ac8ecfc9df9208c576e0745b2b4e6fbb3a46a168b4c4f56921eb3a/main.spi │
│ "}} / result.Length: │
│ 00:00:13 #56 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [ │
│ [ │
│ "main.spi: │
│ Expected: uppercase variable", │
│ { │
│ "ParserErrors": { │
│ "errors": [ │
│ [ │
│ [ │
│ { │
│ "character": 6, │
│ "line": 2 │
│ }, │
│ { │
│ "character": 7, │
│ "line": 2 │
│ } │
│ ], │
│ "Expected: uppercase variable" │
│ ] │
│ ], │
│ "uri": │
│ "file:///c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e711a7af8 │
│ 2ac8ecfc9df9208c576e0745b2b4e6fbb3a46a168b4c4f56921eb3a\main.spi" │
│ } │
│ } │
│ ] │
│ ] / typeErrorCount: 0 │
│ 00:00:14 #57 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/target/ │
│ polyglot/spiral_eval/packages/e711a7af82ac8ecfc9df9208c576e0745b2b4e6fbb3a46 │
│ a168b4c4f56921eb3a/main.spi"}} / result.Length: │
│ 00:00:14 #58 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>> │
│ Value: - <null> │
│ - [ main.spi: │
│ Expected: uppercase variable ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"""
/// abc
inl main () =
()
"""
|> buildCode 10000 None
|> Async.runWithTimeout 10000
|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)
|> _assertEqual (
Some (
None,
[[ "main.spi:
Expected: whitespace" ]]
)
)
╭─[ 376.11ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:14 #59 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:14 #60 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:14 #61 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:14 #62 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"\n/// abc\ninl main () =\n │
│ ()\n","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_eval/packag │
│ es/e83597a8ca85933ec91ea140faca562c6789f98f5348e641a1c44c73de804631/main.spi │
│ "}} / result.Length: │
│ 00:00:14 #63 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [ │
│ [ │
│ "main.spi: │
│ Expected: whitespace", │
│ { │
│ "TokenizerErrors": { │
│ "errors": [ │
│ [ │
│ [ │
│ { │
│ "character": 2, │
│ "line": 1 │
│ }, │
│ { │
│ "character": 3, │
│ "line": 1 │
│ } │
│ ], │
│ "Expected: whitespace" │
│ ] │
│ ], │
│ "uri": │
│ "file:///c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e83597a8c │
│ a85933ec91ea140faca562c6789f98f5348e641a1c44c73de804631\main.spi" │
│ } │
│ } │
│ ] │
│ ] / typeErrorCount: 0 │
│ 00:00:14 #64 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/target/ │
│ polyglot/spiral_eval/packages/e83597a8ca85933ec91ea140faca562c6789f98f5348e6 │
│ 41a1c44c73de804631/main.spi"}} / result.Length: │
│ 00:00:14 #65 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>> │
│ Value: - <null> │
│ - [ main.spi: │
│ Expected: whitespace ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"""
inl main () =
real
inl real_unbox forall a. (obj : a) : a =
typecase obj with
| _ => obj
real_unbox ()
()
"""
|> buildCode 10000 None
|> Async.runWithTimeout 10000
|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)
|> _assertEqual (
Some (
None,
[[ "Cannot apply a forall with a term." ]]
)
)
╭─[ 516.88ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:14 #66 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:14 #67 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:14 #68 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:14 #69 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"\ninl main () =\n real\n inl real_unbox │
│ forall a. (obj : a) : a =\n typecase obj with\n | _ │
│ =\u003E obj\n real_unbox ()\n │
│ ()\n","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_eval/packag │
│ es/a2aa158e3d25dde470018a814a2045bf437bae1760d98ab33335c72b076d4d50/main.spi │
│ "}} / result.Length: │
│ 00:00:14 #70 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/target/ │
│ polyglot/spiral_eval/packages/a2aa158e3d25dde470018a814a2045bf437bae1760d98a │
│ b33335c72b076d4d50/main.spi"}} / result.Length: │
│ 00:00:14 #71 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [ │
│ [ │
│ "Cannot apply a forall with a term.", │
│ { │
│ "TracedError": { │
│ "message": "Cannot apply a forall with a term.", │
│ "trace": [ │
│ "Error trace on line: 2, column: 10 in module: │
│ c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a2aa158e3d25dde470 │
│ 018a814a2045bf437bae1760d98ab33335c72b076d4d50\main.spi. │
│ inl main () = │
│ ^ │
│ ", │
│ "Error trace on line: 4, column: 9 in module: │
│ c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a2aa158e3d25dde470 │
│ 018a814a2045bf437bae1760d98ab33335c72b076d4d50\main.spi. │
│ inl real_unbox forall a. (obj : a) : a = │
│ ^ │
│ ", │
│ "Error trace on line: 7, column: 9 in module: │
│ c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a2aa158e3d25dde470 │
│ 018a814a2045bf437bae1760d98ab33335c72b076d4d50\main.spi. │
│ real_unbox () │
│ ^ │
│ " │
│ ] │
│ } │
│ } │
│ ] │
│ ] / typeErrorCount: 0 │
│ 00:00:14 #72 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>> │
│ Value: - <null> │
│ - [ Cannot apply a forall with a term. ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"""
inl main () =
real
inl real_unbox forall a. (obj : a) : a =
typecase obj with
| _ => obj
real_unbox `i32 1
"""
|> buildCode 10000 None
|> Async.runWithTimeout 10000
|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)
|> _assertEqual (
Some (
None,
[[ "The main function should not have a forall." ]]
)
)
╭─[ 599.72ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:15 #73 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:15 #74 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:15 #75 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:15 #76 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"\ninl main () =\n real\n inl real_unbox │
│ forall a. (obj : a) : a =\n typecase obj with\n | _ │
│ =\u003E obj\n real_unbox \u0060i32 │
│ 1\n","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_eval/package │
│ s/84eca3865a0cfc1afd28f49a38d395e9b89071527b4bda759de7cfb116593b3e/main.spi" │
│ }} / result.Length: │
│ 00:00:15 #77 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/target/ │
│ polyglot/spiral_eval/packages/84eca3865a0cfc1afd28f49a38d395e9b89071527b4bda │
│ 759de7cfb116593b3e/main.spi"}} / result.Length: │
│ 00:00:15 #78 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [ │
│ [ │
│ "The main function should not have a forall.", │
│ { │
│ "TracedError": { │
│ "message": "The main function should not have a forall.", │
│ "trace": [] │
│ } │
│ } │
│ ] │
│ ] / typeErrorCount: 0 │
│ 00:00:15 #79 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>> │
│ Value: - <null> │
│ - [ The main function should not have a forall. ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"""
inl init_series start end inc =
inl total : f64 = conv ((end - start) / inc) + 1
listm.init total (conv >> (*) inc >> (+) start) : list f64
type integration = (f64 -> f64) -> f64 -> f64 -> f64
inl integral dt : integration =
fun f a b =>
init_series (a + dt / 2) (b - dt / 2) dt
|> listm.map (f >> (*) dt)
|> listm.fold (+) 0
inl main () =
integral 0.1 (fun x => x ** 2) 0 1
"""
|> buildCode 10000 None
|> Async.runWithTimeout 10000
|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)
|> _assertEqual (
Some (
Some "0.3325000000000001\n",
[[]]
)
)
╭─[ 539.85ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:15 #80 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:15 #81 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:15 #82 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:15 #83 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"\ninl init_series start end inc =\n inl total : │
│ f64 = conv ((end - start) / inc) \u002B 1\n listm.init total (conv │
│ \u003E\u003E (*) inc \u003E\u003E (\u002B) start) : list f64\n\ntype │
│ integration = (f64 -\u003E f64) -\u003E f64 -\u003E f64 -\u003E f64\n\ninl │
│ integral dt : integration =\n fun f a b =\u003E\n init_series (a │
│ \u002B dt / 2) (b - dt / 2) dt\n |\u003E listm.map (f \u003E\u003E │
│ (*) dt)\n |\u003E listm.fold (\u002B) 0\n\ninl main () =\n │
│ integral 0.1 (fun x =\u003E x ** 2) 0 │
│ 1\n","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_eval/package │
│ s/c0932fdbf60389c2ae8b78bb5443994f2d0ecdc6c6e7dfddf408cecaa050d294/main.spi" │
│ }} / result.Length: │
│ 00:00:16 #84 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/target/ │
│ polyglot/spiral_eval/packages/c0932fdbf60389c2ae8b78bb5443994f2d0ecdc6c6e7df │
│ ddf408cecaa050d294/main.spi"}} / result.Length: │
│ 00:00:16 #85 [debug] buildFile / takeWhileInclusive / fsxContent: │
│ 0.3325000000000001 │
│ / errors: [] / typeErrorCount: 0 │
│ 00:00:16 #86 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>> │
│ Value: - FSharpOption<String> │
│ Value: 0.3325000000000001 │
│ │
│ - [ ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"""
inl init_series start end inc =
inl total : f64 = conv ((end - start) / inc) + 1
listm.init total (conv >> (*) inc >> (+) start) : list f64
type integration = (f64 -> f64) -> f64 -> f64 -> f64
inl integral dt : integration =
fun f a b =>
init_series (a + dt / 2) (b - dt / 2) dt
|> listm.map (f >> (*) dt)
|> listm.fold (+) 0
inl main () =
integral 0.01 (fun x => x ** 2) 0 1
"""
|> buildCode 10000 None
|> Async.runWithTimeout 10000
|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)
|> _assertEqual (
Some (
Some "0.33332500000000004\n",
[[]]
)
)
// |> _assertEqual None
// |> fun x -> printfn $"{x.ToDisplayString ()}"
╭─[ 430.07ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:16 #87 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:16 #88 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:16 #89 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:16 #90 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"\ninl init_series start end inc =\n inl total : │
│ f64 = conv ((end - start) / inc) \u002B 1\n listm.init total (conv │
│ \u003E\u003E (*) inc \u003E\u003E (\u002B) start) : list f64\n\ntype │
│ integration = (f64 -\u003E f64) -\u003E f64 -\u003E f64 -\u003E f64\n\ninl │
│ integral dt : integration =\n fun f a b =\u003E\n init_series (a │
│ \u002B dt / 2) (b - dt / 2) dt\n |\u003E listm.map (f \u003E\u003E │
│ (*) dt)\n |\u003E listm.fold (\u002B) 0\n\ninl main () =\n │
│ integral 0.01 (fun x =\u003E x ** 2) 0 │
│ 1\n","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_eval/package │
│ s/355c36b6d259fe6b1c7527aa9b475ca37914ad348c4a239687383dcd0daeed2c/main.spi" │
│ }} / result.Length: │
│ 00:00:16 #91 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/target/ │
│ polyglot/spiral_eval/packages/355c36b6d259fe6b1c7527aa9b475ca37914ad348c4a23 │
│ 9687383dcd0daeed2c/main.spi"}} / result.Length: │
│ 00:00:16 #92 [debug] buildFile / takeWhileInclusive / fsxContent: │
│ 0.33332500000000004 │
│ / errors: [] / typeErrorCount: 0 │
│ 00:00:16 #93 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>> │
│ Value: - FSharpOption<String> │
│ Value: 0.33332500000000004 │
│ │
│ - [ ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## getFileTokenRange │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline getFileTokenRange port cancellationToken path = async {
let fullPath = path |> System.IO.Path.GetFullPath
let! code = fullPath |> SpiralFileSystem.read_all_text_async
let lines = code |> SpiralSm.split "\n"
let token, disposable = Threading.newDisposableToken cancellationToken
use _ = disposable
let! serverPort, _errors, ct, disposable =
match port with
| Some port -> awaitCompiler port (Some token)
| None -> (getCompilerPort (), FSharp.Control.AsyncSeq.empty, token,
new_disposable id) |> Async.init
use _ = disposable
let fileOpenObj = {| FileOpen = {| uri = fullPath |> getFileUri; spiText =
code |} |}
let! _fileOpenResult = fileOpenObj |> sendObj serverPort
let fileTokenRangeObj =
{|
FileTokenRange =
{|
uri = fullPath |> getFileUri
range =
[[|
{| line = 0; character = 0 |}
{| line = lines.Length - 1; character =
lines.[[lines.Length - 1]].Length |}
|]]
|}
|}
let! fileTokenRangeResult =
fileTokenRangeObj
|> sendObj serverPort
|> Async.withCancellationToken ct
return fileTokenRangeResult |> Option.map FSharp.Json.Json.deserialize<int
array>
}
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## getCodeTokenRange │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline getCodeTokenRange cancellationToken code = async {
let! mainPath = persistCode code
let port = getCompilerPort ()
return! mainPath |> getFileTokenRange (Some port) cancellationToken
}
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"""inl main () = ()"""
|> getCodeTokenRange None
|> Async.runWithTimeout 10000
|> Option.flatten
|> _assertEqual (Some [[| 0; 0; 3; 7; 0; 0; 4; 4; 0; 0; 0; 5; 1; 8; 0; 0; 1; 1;
8; 0; 0; 2; 1; 4; 0; 0;
2; 1; 8; 0; 0; 1; 1; 8; 0 |]])
╭─[ 3.88s - stdout ]───────────────────────────────────────────────────────────╮
│ 00:00:28 #94 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:28 #95 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"inl main () = │
│ ()","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_eval/packages │
│ /fb6c8d45c45c5bed6706c564f1573e80b77a3923967ce83cb69737ce2ce5040c/main.spi"} │
│ } / result.Length: │
│ 00:00:28 #96 [debug] sendJson / port: 13805 / json: │
│ {"FileTokenRange":{"range":[ │
│ {"character":0,"line":0},{"character":16,"line":0}],"uri":"file:///c:/home/g │
│ it/polyglot/target/polyglot/spiral_eval/packages/fb6c8d45c45c5bed6706c564f15 │
│ 73e80b77a3923967ce83cb69737ce2ce5040c/main.spi"}} / result.Length: Some(213) │
│ FSharpOption<Int32[]> │
│ Value: [ 0, 0, 3, 7, 0, 0, 4, 4, 0, 0, 0, 5, 1, 8, 0, 0, 1, 1, 8, 0, │
│ 0, 2, 1, 4, 0, 0, 2, 1, 8, 0, 0, 1, 1, 8, 0 ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
"""inl main () = 1i32"""
|> getCodeTokenRange None
|> Async.runWithTimeout 10000
|> Option.flatten
|> _assertEqual (Some [[| 0; 0; 3; 7; 0; 0; 4; 4; 0; 0; 0; 5; 1; 8; 0; 0; 1; 1;
8; 0; 0; 2; 1; 4; 0; 0;
2; 1; 3; 0; 0; 1; 3; 12; 0 |]])
╭─[ 4.28s - stdout ]───────────────────────────────────────────────────────────╮
│ 00:00:33 #97 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:33 #98 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"inl main () = │
│ 1i32","uri":"file:///c:/home/git/polyglot/target/polyglot/spiral_eval/packag │
│ es/9df95a2f18642bd8d2f682f6edb6cef45c30ca9c616b33ebb0e5577eed14871c/main.spi │
│ "}} / result.Length: │
│ 00:00:33 #99 [debug] sendJson / port: 13805 / json: │
│ {"FileTokenRange":{"range":[ │
│ {"character":0,"line":0},{"character":18,"line":0}],"uri":"file:///c:/home/g │
│ it/polyglot/target/polyglot/spiral_eval/packages/9df95a2f18642bd8d2f682f6edb │
│ 6cef45c30ca9c616b33ebb0e5577eed14871c/main.spi"}} / result.Length: Some(214) │
│ FSharpOption<Int32[]> │
│ Value: [ 0, 0, 3, 7, 0, 0, 4, 4, 0, 0, 0, 5, 1, 8, 0, 0, 1, 1, 8, 0, │
│ 0, 2, 1, 4, 0, 0, 2, 1, 3, 0, 0, 1, 3, 12, 0 ] │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## Arguments │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
[[<RequireQualifiedAccess>]]
type Arguments =
| Build_File of string * string
| File_Token_Range of string * string
| Execute_Command of string
| [[<Argu.ArguAttributes.Unique>]] Timeout of int
| [[<Argu.ArguAttributes.Unique>]] Port of int
| [[<Argu.ArguAttributes.Unique>]] Parallel
interface Argu.IArgParserTemplate with
member s.Usage =
match s with
| Build_File _ -> nameof Build_File
| File_Token_Range _ -> nameof File_Token_Range
| Execute_Command _ -> nameof Execute_Command
| Timeout _ -> nameof Timeout
| Port _ -> nameof Port
| Parallel -> nameof Parallel
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
Argu.ArgumentParser.Create<Arguments>().PrintUsage ()
╭─[ 193.57ms - return value ]──────────────────────────────────────────────────╮
│ USAGE: dotnet-repl [--help] [--build-file <string> <string>] │
│ [--file-token-range <string> <string>] │
│ [--execute-command <string>] [--timeout <int>] [--port │
│ <int>] │
│ [--parallel] │
│ │
│ OPTIONS: │
│ │
│ --build-file <string> <string> │
│ Build_File │
│ --file-token-range <string> <string> │
│ File_Token_Range │
│ --execute-command <string> │
│ Execute_Command │
│ --timeout <int> Timeout │
│ --port <int> Port │
│ --parallel Parallel │
│ --help display this list of options. │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## main │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let main args =
let argsMap = args |> Runtime.parseArgsMap<Arguments>
let buildFileActions =
argsMap
|> Map.tryFind (nameof Arguments.Build_File)
|> Option.defaultValue [[]]
|> List.choose (function
| Arguments.Build_File (inputPath, outputPath) -> Some (inputPath,
outputPath)
| _ -> None
)
let fileTokenRangeActions =
argsMap
|> Map.tryFind (nameof Arguments.File_Token_Range)
|> Option.defaultValue [[]]
|> List.choose (function
| Arguments.File_Token_Range (inputPath, outputPath) -> Some
(inputPath, outputPath)
| _ -> None
)
let executeCommandActions =
argsMap
|> Map.tryFind (nameof Arguments.Execute_Command)
|> Option.defaultValue [[]]
|> List.choose (function
| Arguments.Execute_Command command -> Some command
| _ -> None
)
let timeout =
match argsMap |> Map.tryFind (nameof Arguments.Timeout) with
| Some [[ Arguments.Timeout timeout ]] -> timeout
| _ -> 60000 * 60
let port =
match argsMap |> Map.tryFind (nameof Arguments.Port) with
| Some [[ Arguments.Port port ]] -> Some port
| _ -> None
let isParallel = argsMap |> Map.containsKey (nameof Arguments.Parallel)
async {
let port = port |> Option.defaultWith getCompilerPort
let localToken, disposable = Threading.newDisposableToken None
let! serverPort, _errors, compilerToken, disposable = awaitCompiler port
(Some localToken)
use _ = disposable
let buildFileAsync =
buildFileActions
|> List.map (fun (inputPath, outputPath) -> async {
let! outputCode, errors = inputPath |> buildFile timeout
serverPort None
errors
|> List.map snd
|> List.iter (fun error ->
trace Critical (fun () -> $"main / error: {error |>
serializeObj}") getLocals
)
match outputCode with
| Some outputCode ->
do! outputCode |> SpiralFileSystem.write_all_text_async
outputPath
return 0
| None ->
return 1
})
let fileTokenRangeAsync =
fileTokenRangeActions
|> List.map (fun (inputPath, outputPath) -> async {
let! tokenRange = inputPath |> getFileTokenRange (Some
serverPort) None
match tokenRange with
| Some tokenRange ->
do! tokenRange |> FSharp.Json.Json.serialize |>
SpiralFileSystem.write_all_text_async outputPath
return 0
| None ->
return 1
})
let executeCommandAsync =
executeCommandActions
|> List.map (fun command -> async {
let! exitCode, result =
Runtime.executeWithOptionsAsync
{
Command = command
CancellationToken = Some compilerToken
WorkingDirectory = None
OnLine = None
}
trace Debug (fun () -> $"main / executeCommand / exitCode:
{exitCode}") getLocals
return exitCode
})
return!
[[| buildFileAsync; fileTokenRangeAsync; executeCommandAsync |]]
|> Seq.collect id
|> fun x ->
if isParallel
then Async.Parallel (x, float System.Environment.ProcessorCount
* 0.75 |> ceil |> int)
else Async.Sequential x
|> Async.map Array.sum
}
|> Async.runWithTimeout timeout
|> Option.defaultValue 1
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let args =
System.Environment.GetEnvironmentVariable "ARGS"
|> Runtime.splitArgs
|> Seq.toArray
match args with
| [[||]] -> 0
| args -> if main args = 0 then 0 else failwith "main failed"
╭─[ 65.18ms - return value ]───────────────────────────────────────────────────╮
│ <div class="dni-plaintext"><pre>0</pre></div><style> │
│ .dni-code-hint { │
│ font-style: italic; │
│ overflow: hidden; │
│ white-space: nowrap; │
│ } │
│ .dni-treeview { │
│ white-space: nowrap; │
│ } │
│ .dni-treeview td { │
│ vertical-align: top; │
│ text-align: start; │
│ } │
│ details.dni-treeview { │
│ padding-left: 1em; │
│ } │
│ table td { │
│ text-align: start; │
│ } │
│ table tr { │
│ vertical-align: top; │
│ margin: 0em 0px; │
│ } │
│ table tr td pre │
│ { │
│ vertical-align: top !important; │
│ margin: 0em 0px !important; │
│ } │
│ table th { │
│ text-align: start; │
│ } │
│ </style> │
╰──────────────────────────────────────────────────────────────────────────────╯
[NbConvertApp] Converting notebook Supervisor.dib.ipynb to html
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
validate(nb)
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
return _pygments_highlight(
[NbConvertApp] Writing 437432 bytes to Supervisor.dib.html
00:00:00 #1 [debug] writeDibCode / output: Fs / path: Supervisor.dib
00:00:00 #2 [debug] parseDibCode / output: Fs / file: Supervisor.dib
00:00:00 #1 [debug] persistCodeProject / packages: [Argu; FSharp.Control.AsyncSeq; FSharp.Json; ... ] / modules: [lib/spiral/common.fsx; lib/spiral/sm.fsx; lib/spiral/date_time.fsx; ... ] / name: Supervisor / code.Length: 20011
00:00:00 #2 [debug] buildProject / fullPath: C:\home\git\polyglot\target\polyglot\builder\Supervisor\Supervisor.fsproj
00:00:00 #3 [debug] executeAsync / options: { Command =
"dotnet publish "C:\home\git\polyglot\target/polyglot/builder\Supervisor\Supervisor.fsproj" --configuration Release --output "C:\home\git\polyglot\apps\spiral\dist" --runtime linux-x64"
WorkingDirectory =
Some "C:\home\git\polyglot\target\polyglot\builder\Supervisor"
CancellationToken = None
OnLine = None }
00:00:00 #4 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f for .NET
00:00:01 #5 [verbose] > Determining projects to restore...
00:00:02 #6 [verbose] > Restored C:\home\git\polyglot\target\polyglot\builder\Supervisor\Supervisor.fsproj (in 465 ms).
00:00:02 #7 [verbose] > C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.24101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(313,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\target\polyglot\builder\Supervisor\Supervisor.fsproj]
00:00:18 #8 [verbose] > Supervisor -> C:\home\git\polyglot\target\polyglot\builder\Supervisor\bin\Release\net9.0\linux-x64\Supervisor.dll
00:00:20 #9 [verbose] > Supervisor -> C:\home\git\polyglot\apps\spiral\dist\
00:00:20 #10 [debug] executeAsync / exitCode: 0 / output.Length: 715
00:00:20 #11 [debug] executeAsync / options: { Command =
"dotnet publish "C:\home\git\polyglot\target/polyglot/builder\Supervisor\Supervisor.fsproj" --configuration Release --output "C:\home\git\polyglot\apps\spiral\dist" --runtime win-x64"
WorkingDirectory =
Some "C:\home\git\polyglot\target\polyglot\builder\Supervisor"
CancellationToken = None
OnLine = None }
00:00:21 #12 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f for .NET
00:00:21 #13 [verbose] > Determining projects to restore...
00:00:22 #14 [verbose] > Restored C:\home\git\polyglot\target\polyglot\builder\Supervisor\Supervisor.fsproj (in 489 ms).
00:00:23 #15 [verbose] > C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.24101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(313,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\target\polyglot\builder\Supervisor\Supervisor.fsproj]
00:00:38 #16 [verbose] > Supervisor -> C:\home\git\polyglot\target\polyglot\builder\Supervisor\bin\Release\net9.0\win-x64\Supervisor.dll
00:00:46 #17 [verbose] > Supervisor -> C:\home\git\polyglot\apps\spiral\dist\
00:00:46 #18 [debug] executeAsync / exitCode: 0 / output.Length: 713
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ # Eval (Polyglot) │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/fsharp/Notebooks.dib
#!import ../../lib/fsharp/Testing.dib
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
spNetCore.Html.Abstractions.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.Formatting.dll"
open System
open System.IO
open System.Text
open Microsoft.DotNet.Interactive.Formatting
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
open type Microsoft.DotNet.Interactive.Kernel
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
Formatter.ListExpansionLimit <- 100
── fsharp - import ─────────────────────────────────────────────────────────────
#r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
type AssertExceptionFormatter (ex) =
member _.Text =
ex.ToString()
.Replace("32m", "<span style=\"color: green;\">")
.Replace("36m", "</span>")
.Replace("31m", "<span style=\"color: red;\">")
.Replace("\n", "<br/>\n")
Formatter.Register<AssertExceptionFormatter> ((fun (x :
AssertExceptionFormatter) -> x.Text), "text/html")
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __expect fn log expected actual =
if log then printfn $"{actual.ToDisplayString ()}"
try
"Testing.__expect" |> fn actual expected
with :? Expecto.AssertException as ex ->
AssertExceptionFormatter(ex).Display () |> ignore
failwith (ex.GetType().FullName)
let inline __contains log expected actual = __expect Expecto.Expect.contains log
expected actual
let inline _contains expected actual = __contains true expected actual
let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
expected actual
let inline _assertEqual expected actual = __assertEqual true expected actual
let inline __isGreaterThan log expected actual = __expect
Expecto.Expect.isGreaterThan log ex...
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __isBetween log a b actual =
let inline isBetween actual (a, b) _ =
__isGreaterThanOrEqual log a actual
__isLessThanOrEqual log b actual
__expect isBetween log (a, b) actual
let inline _isBetween a b actual = __isBetween true a b actual
── fsharp ──────────────────────────────────────────────────────────────────────
#r
@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan
dard2.1/FSharp.Control.AsyncSeq.dll"
#r
@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.
0/System.Reactive.dll"
#r
@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/
netstandard2.0/System.Reactive.Linq.dll"
#r
@"../../../../../../../.nuget/packages/argu/6.2.2/lib/netstandard2.0/Argu.dll"
#r
@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li
b/net6.0/System.CommandLine.dll"
#r
@"../../../../../../../.nuget/packages/microsoft.aspnetcore.http.connections.com
mon/7.0.0/lib/net7.0/Microsoft.AspNetCore.Http.Connections.Common.dll"
#r
@"../../../../../../../.nuget/packages/microsoft.aspnetcore.http.connections.cli
ent/7.0.0/lib/net7.0/Microsoft.AspNetCore.Http.Connections.Client.dll"
#r
@"../../../../../../../.nuget/packages/microsoft.aspnetcore.signalr.common/7.0.0
/lib/net7.0/Microsoft.AspNetCore.SignalR.Common.dll"
#r
@"../../../../../../../.nuget/packages/microsoft.aspnetcore.signalr.client/7.0.0
/lib/net7.0/Microsoft.AspNetCore.SignalR.Client.dll"
#r
@"../../../../../../../.nuget/packages/microsoft.aspnetcore.signalr.client.core/
7.0.0/lib/net7.0/Microsoft.AspNetCore.SignalR.Client.Core.dll"
#r
@"../../../../../../../.nuget/packages/fsharp.json/0.4.1/lib/netstandard2.0/FSha
rp.Json.dll"
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/spiral/common.fsx
#!import ../../lib/spiral/sm.fsx
#!import ../../lib/spiral/date_time.fsx
#!import ../../lib/spiral/file_system.fsx
#!import ../../lib/spiral/trace.fsx
#!import ../../lib/spiral/lib.fsx
#!import ../../lib/fsharp/Common.fs
#!import ../../lib/fsharp/CommonFSharp.fs
#!import ../../lib/fsharp/Threading.fs
#!import ../../lib/fsharp/Crypto.fs
#!import ../../lib/fsharp/Async.fs
#!import ../../lib/fsharp/AsyncSeq.fs
#!import ../../lib/fsharp/Networking.fs
#!import ../../lib/fsharp/Runtime.fs
#!import ../../lib/fsharp/FileSystem.fs
#!import ../../apps/builder/Builder.fs
#!import ../../apps/spiral/Supervisor.fs
── fsharp - import ─────────────────────────────────────────────────────────────
type [[<Struct>]] US0 =
| US0_0
| US0_1
and [[<Struct>]] US1 =
| US1_0 of f0_0 : US0
| US1_1
let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
let v1 : System.IDisposable option = None
let mutable _v1 = v1
#if FABLE_COMPILER_RUST && !WASM && !CONTRACT
let v2 : System.IDisposable = null |> unbox<System.IDisposable>
v2
#endif
#if FABLE_COMPILER_RUST && WASM
let v3 : System.IDisposable = null |> unbox<System.IDisposable>
v3
#endif
#if FABLE_COMPILER_RUST && CONTRACT
let v4 : System.IDisposable = null |> unbox<System.IDisposable>
v4
#endif
#if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
!WASM && !CONTRACT
let v5 : System.ID...
── fsharp - import ─────────────────────────────────────────────────────────────
type Mut0 = {mutable l0 : int32; mutable l1 : string}
and Mut1 = {mutable l0 : int32}
let rec closure1 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.Contains v0
v2
and closure0 () (v0 : string) : (string -> bool) =
closure1(v0)
and closure3 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.EndsWith v0
v2
and closure2 () (v0 : string) : (string -> bool) =
closure3(v0)
and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
let v3 : string = v2.PadLeft (v0, v1)
v3
and closure5 (v0 : int32) (v1 : char) : (string -> string) =
closure6(v0, v1)
and closure4 () (v0 : int32) : (char -> (string -> string)) =
closure5(v0)
and closure8 (v0 : int32) (v1 : string) : string =
let v2 : stri...
── fsharp - import ─────────────────────────────────────────────────────────────
let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
let v2 : (System.Guid -> string) = _.ToString()
let v3 : string = v2 v0
let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
v5
and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
closure1(v0)
and closure5 (v0 : string, v1 : string) (v2 : string) : string =
let v3 : string = v2.Replace (v0, v1)
v3
and closure4 (v0 : string) (v1 : string) : (string -> string) =
closure5(v0, v1)
and closure3 () (v0 : string) : (string -> (string -> string)) =
closure4(v0)
and method0 () : (string -> (string -> (string -> string))) =
closure3()
and closure2 (...
── fsharp - import ─────────────────────────────────────────────────────────────
#if FABLE_COMPILER // file_system.types
[[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
[[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
base64_DecodeError = class end
[[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
serde_json_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
serde_json_Value = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
serde_wasm_bindgen_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
── fsharp - import ─────────────────────────────────────────────────────────────
module State = let mutable trace_state = None
type [[<Struct>]] US0 =
| US0_0
| US0_1
| US0_2
| US0_3
| US0_4
and Mut0 = {mutable l0 : int64}
and Mut1 = {mutable l0 : bool}
and Mut2 = {mutable l0 : US0}
and [[<Struct>]] US1 =
| US1_0 of f0_0 : int64
| US1_1
and [[<Struct>]] US2 =
| US2_0 of f0_0 : int64
| US2_1
let rec method1 (v0 : int64 option) : int64 option =
v0
and method2 (v0 : int64 option) : int64 option =
v0
and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
let v0 : Mut1 = {l0 = true} : Mut1
let v1 : Mut0 = {l0 = 0L} : Mut0
let v2 : US0 = US0_0
let v3 : Mut2 = {l0 = v2} : Mut2
let v4 : Mut1 = {l0 = false} : Mut1
let v5 : int64 option option = None
...
── fsharp - import ─────────────────────────────────────────────────────────────
module SpiralTrace =
let get_trace_state () =
#if !INTERACTIVE
Trace.get_trace_state ()
#else
get_trace_state ()
#endif
let trace x =
#if !INTERACTIVE
Trace.trace x
#else
trace x
#endif
let US0_0 =
#if !INTERACTIVE
Trace.US0_0
#else
US0_0
#endif
let US0_1 =
#if !INTERACTIVE
Trace.US0_1
#else
US0_1
#endif
let US0_2 =
#if !INTERACTIVE
Trace.US0_2
#else
US0_2
#endif
let US0_3 =
#if !INTERACTIVE
Trace.US0_3
#else
US0_3
#endif
let US0_4 =
#if !INTERACTIVE
Trace.US0_4
#else
US0_4
#endif
#if !FABLE_COMPILER && !WASM && !CONTRACT
module SpiralDateTime =
let format x =
#if !INTERACTIVE
Date_ti...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Common =
#if !INTERACTIVE
open Lib
#endif
let nl = System.Environment.NewLine
let q = @""""
let inline cons head tail = head :: tail
/// ## memoize
let inline memoize fn =
let result = lazy fn ()
fun () -> result.Value
/// ## TraceLevel
type TraceLevel =
| Verbose
| Debug
| Info
| Warning
| Critical
let inline getLocals () = ""
/// ## trace
let to_trace_level = function
| Verbose -> SpiralTrace.US0_0
| Debug -> SpiralTrace.US0_1
| Info -> SpiralTrace.US0_2
| Warning -> SpiralTrace.US0_3
| Critical -> SpiralTrace.US0_4
let trace level fn g...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module CommonFSharp =
open Common
/// ## getUnionCaseName
let inline getUnionCaseName<'T> (x: 'T) =
match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with
| case, _ -> case.Name
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Threading =
open Common
/// ## newDisposableToken
let inline newDisposableToken (mergeToken:
System.Threading.CancellationToken option) =
let cts = new System.Threading.CancellationTokenSource ()
let cts =
match mergeToken with
| None -> cts
| Some mergeToken ->
System.Threading.CancellationTokenSource.CreateLinkedTokenSource
[[| cts.Token; mergeToken |]]
let disposable = new_disposable cts.Cancel
cts.Token, disposable
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Crypto =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## hashText
let hashText (input : string) =
use sha256 = System.Security.Cryptography.SHA256.Create ()
input
|> System.Text.Encoding.UTF8.GetBytes
|> sha256.ComputeHash
|> Array.map (fun b -> b.ToString "x2")
|> SpiralSm.concat ""
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Async =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## choice
let inline choice asyncs = async {
let e = Event<_> ()
use cts = new System.Threading.CancellationTokenSource ()
let fn =
asyncs
|> Seq.map (fun a -> async {
let! x = a
e.Trigger x
})
|> Async.Parallel
|> Async.Ignore
Async.Start (fn, cts.Token)
let! result = Async.AwaitEvent e.Publish
cts.Cancel ()
return result
}
/// ## map
let inline map fn a = async {
let! x = a
return fn x
}
/// ## catch
let inline catch a =
...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module AsyncSeq =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## subscribeEvent
let inline subscribeEvent (event: IEvent<'H, 'A>) map =
let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,
'A>(event.AddHandler, event.RemoveHandler)
System.Reactive.Linq.Observable.Select (observable, fun event -> map
event.EventArgs)
|> FSharp.Control.AsyncSeq.ofObservableBuffered
let subscribeToken (token : System.Threading.CancellationToken) =
let tcs = new System.Threading.Tasks.TaskCompletionSource ()
System.Action tcs.SetResult |> token.Register |> ignore
let start = System.DateTime.Now.Ticks
FSharp.Control.A...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Networking =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## testPortOpen
let inline testPortOpen port = async {
let! ct = Async.CancellationToken
use client = new System.Net.Sockets.TcpClient ()
try
do! client.ConnectAsync ("127.0.0.1", port, ct) |>
Async.awaitValueTaskUnit
return true
with ex ->
trace Verbose (fun () -> $"testPortOpen / ex: {ex |>
SpiralSm.format_exception}") getLocals
return false
}
let inline testPortOpenTimeout timeout port = async {
let! result =
testPortOpen port
|> Async.runWithTimeoutAsync timeout
return
...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Runtime =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## isWindows
let isWindows =
fun () ->
System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform
System.Runtime.InteropServices.OSPlatform.Windows
|> memoize
/// ## getExecutableSuffix
let inline getExecutableSuffix () =
if isWindows ()
then ".exe"
else ""
/// ## splitCommand
type private CommandParseStep =
| Start
| Path of quoted: bool
| Arguments
let splitCommand (command: string) =
let rec loop (path, args) chars step =
match chars, step with
| ('"' | '\'') ...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module FileSystem =
#if !INTERACTIVE
open Lib
#endif
open Common
open SpiralFileSystem.Operators
/// ## watchDirectory
[[<RequireQualifiedAccess>]]
type FileSystemChangeType =
| Failure
| Changed
| Created
| Deleted
| Renamed
[[<RequireQualifiedAccess>]]
type FileSystemChange =
| Failure of exn: exn
| Changed of path: string * content: string option
| Created of path: string * content: string option
| Deleted of path: string
| Renamed of oldPath: string * (string * string option)
let inline watchDirectoryWithFilter filter shouldReadContent path =
let fullPath = path |> Sys...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Builder =
#if !INTERACTIVE
open Lib
#endif
open Common
open SpiralFileSystem.Operators
/// ## buildProject
let inline buildProject runtime outputDir path = async {
let fullPath = path |> System.IO.Path.GetFullPath
let fileDir = fullPath |> System.IO.Path.GetDirectoryName
let extension = fullPath |> System.IO.Path.GetExtension
let getLocals () = $"fullPath: {fullPath} / {getLocals ()}"
trace Debug (fun () -> "buildProject") getLocals
match extension with
| ".fsproj" -> ()
| _ -> failwith "Invalid project file"
let runtimes =
runtime
|> Option.map List.singleton
...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Supervisor =
#if !INTERACTIVE
open Lib
#endif
open Common
open SpiralFileSystem.Operators
open Microsoft.AspNetCore.SignalR.Client
/// ## sendJson
let inline sendJson (port : int) (json : string) = async {
let! portOpen = Networking.testPortOpen port
if portOpen then
try
let connection =
HubConnectionBuilder().WithUrl($"http://127.0.0.1:{port}").Build()
do! connection.StartAsync () |> Async.AwaitTask
let! result =
connection.InvokeAsync<string>("ClientToServerMsg", json) |> Async.AwaitTask
do! connection.StopAsync () |> Async.AwaitTask
trace Debug (fun () -...
── fsharp ──────────────────────────────────────────────────────────────────────
#if !INTERACTIVE
open Lib
#endif
── fsharp ──────────────────────────────────────────────────────────────────────
open Common
open SpiralFileSystem.Operators
open Microsoft.AspNetCore.SignalR.Client
── fsharp ──────────────────────────────────────────────────────────────────────
open System
open System.Collections.Generic
open System.IO
open System.Text
open System.Threading
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## mapErrors │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline mapErrors (severity, errors, lastTopLevelIndex) allCode =
let allCodeLineLength =
allCode |> SpiralSm.split "\n" |> Array.length
errors
|> List.map (fun (_, error) ->
match error with
| Supervisor.FatalError message ->
(
severity, message, 0, ("", (0, 0), (0, 0))
)
|> List.singleton
| Supervisor.TracedError data ->
data.trace
|> List.truncate 5
|> List.append [[ data.message ]]
|> List.map (fun message ->
(
severity, message, 0, ("", (0, 0), (0, 0))
)
)
| Supervisor.PackageErrors data
| Supervisor.TokenizerErrors data
| Supervisor.ParserErrors data
| Supervisor.TypeErrors data ->
data.errors
|> List.filter (fun ((rangeStart, _), _) ->
trace Debug (fun () -> $"Eval.mapErrors / rangeStart.line:
{rangeStart.line} / lastTopLevelIndex: {lastTopLevelIndex} / allCodeLineLength:
{allCodeLineLength} / filtered: {rangeStart.line > allCodeLineLength}")
getLocals
rangeStart.line > allCodeLineLength
)
|> List.map (fun ((rangeStart, rangeEnd), message) ->
(
severity,
message,
0,
(
(data.uri |> System.IO.Path.GetFileName),
(
(match lastTopLevelIndex with
| Some i when rangeStart.line >= i +
allCodeLineLength + 3 ->
rangeStart.line - allCodeLineLength - 2
| _ -> rangeStart.line - allCodeLineLength),
(match lastTopLevelIndex with
| Some i when rangeStart.line >= i +
allCodeLineLength + 3 ->
rangeStart.character - 4
| _ -> rangeStart.character)
),
(
(match lastTopLevelIndex with
| Some i when rangeStart.line >= i +
allCodeLineLength + 3 ->
rangeEnd.line - allCodeLineLength - 2
| _ -> rangeEnd.line - allCodeLineLength),
(match lastTopLevelIndex with
| Some i when rangeStart.line >= i +
allCodeLineLength + 3 ->
rangeEnd.character - 4
| _ -> rangeEnd.character)
)
)
)
)
)
|> List.collect id
|> List.toArray
── fsharp ──────────────────────────────────────────────────────────────────────
let repositoryRoot = SpiralFileSystem.get_source_directory () |>
SpiralFileSystem.find_parent ".paket" false
let targetDir = repositoryRoot </> "target/polyglot/spiral_eval"
let traceDir = targetDir </> "eval_trace"
[[ targetDir; traceDir ]]
|> List.iter (fun dir -> if Directory.Exists dir |> not then
Directory.CreateDirectory dir |> ignore)
let mutable allCode = ""
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## traceFile │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let traceFile filePath (text : string) =
let struct (_, _, _, level, _) = SpiralTrace.get_trace_state ()
match level with
| { l0 = x } when x = SpiralTrace.US0_0 ->
let dateTimeStr = DateTime.Now |> SpiralDateTime.new_guid_from_date_time
let traceFile = traceDir </> filePath
File.AppendAllText (traceFile, $"{dateTimeStr} Eval /
{text}{Environment.NewLine}") |> ignore
| _ -> ()
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## log │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let assemblyName = Reflection.Assembly.GetEntryAssembly().GetName().Name
── fsharp ──────────────────────────────────────────────────────────────────────
let log (text : string) =
let dateTimeStr = DateTime.Now |> SpiralDateTime.new_guid_from_date_time
text |> traceFile $"{assemblyName}_{dateTimeStr}_{Random().Next()}.txt"
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## startTokenRangeWatcher │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline startTokenRangeWatcher () =
if [[ "dotnet-repl" ]] |> List.contains assemblyName |> not then
let packagesDir = targetDir </> "packages"
[[ packagesDir ]]
|> List.iter (fun dir -> if Directory.Exists dir |> not then
Directory.CreateDirectory dir |> ignore)
let stream, disposable = FileSystem.watchDirectory (fun _ -> false)
packagesDir
try
let existingFilesChild =
packagesDir
|> System.IO.Directory.GetDirectories
|> Array.map (fun codeDir -> async {
try
let tokensPath = codeDir </> "tokens.json"
let packagePath = codeDir </> "package.spiproj"
if (tokensPath |> File.Exists |> not) && (packagePath |>
File.Exists |> not) then
let codePath = codeDir </> "main.spi"
let! tokens = codePath |>
Supervisor.getFileTokenRange None None
match tokens with
| Some tokens ->
do!
tokens
|> FSharp.Json.Json.serialize
|> SpiralFileSystem.write_all_text_async
tokensPath
| None ->
log $"Eval.startTokenRangeWatcher /
GetDirectories / tokens: None / {getLocals ()}"
with ex ->
log $"Eval.startTokenRangeWatcher / GetDirectories / ex:
{ex |> SpiralSm.format_exception} / {getLocals ()}"
})
|> Async.Parallel
|> Async.Ignore
let streamAsyncChild =
stream
|> FSharp.Control.AsyncSeq.iterAsyncParallel (fun (ticks, event)
-> async {
try
let getLocals () = $"ticks: {ticks} / event: {event} /
{getLocals ()}"
log $"Eval.startTokenRangeWatcher / iterAsyncParallel /
{getLocals ()}"
match event with
| FileSystem.FileSystemChange.Changed (codePath, _)
when System.IO.Path.GetFileName codePath =
"main.spi"
->
let hashDir = codePath |>
System.IO.Directory.GetParent
let hashHex = hashDir.Name
let packagePath = packagesDir </> hashHex </>
"package.spiproj"
if packagePath |> System.IO.File.Exists |> not then
let codePath = packagesDir </> codePath
let tokensPath = packagesDir </> hashHex </>
"tokens.json"
do!
codePath
|>
SpiralFileSystem.wait_for_file_access_read
|> Async.runWithTimeoutAsync 1000
|> Async.Ignore
let! tokens = codePath |>
Supervisor.getFileTokenRange None None
match tokens with
| Some tokens ->
do!
tokens
|> FSharp.Json.Json.serialize
|> SpiralFileSystem.write_all_text_async
tokensPath
| None ->
log $"Eval.startTokenRangeWatcher /
iterAsyncParallel / tokens: None / {getLocals ()}"
| _ -> ()
with ex ->
log $"Eval.startTokenRangeWatcher / iterAsyncParallel /
ex: {ex |> SpiralSm.format_exception} / {getLocals ()}"
})
async {
do! Async.Sleep 3000
existingFilesChild |> Async.StartImmediate
streamAsyncChild |> Async.Start
}
|> Async.Start
with ex ->
log $"Eval.startTokenRangeWatcher / ex: {ex |>
SpiralSm.format_exception}"
disposable
else new_disposable (fun () -> ())
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## startCommandsWatcher │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let startCommandsWatcher (uriServer : string) =
let commandsDir = targetDir </> "eval_commands"
let commandHistoryDir = targetDir </> "eval_command_history"
[[ commandsDir; commandHistoryDir ]]
|> List.iter (fun dir -> if Directory.Exists dir |> not then
Directory.CreateDirectory dir |> ignore)
Directory.EnumerateFiles commandsDir |> Seq.iter File.Delete
let stream, disposable =
commandsDir
|> FileSystem.watchDirectory (function
| FileSystem.FileSystemChange.Created _ -> true
| _ -> false
)
let connection = HubConnectionBuilder().WithUrl(uriServer).Build()
connection.StartAsync() |> Async.AwaitTask |> Async.Start
// let _ = connection.On<string>("ServerToClientMsg", fun x ->
// printfn $"ServerToClientMsg: '{x}'"
// )
stream
|> FSharp.Control.AsyncSeq.iterAsyncParallel (fun (ticks, event) -> async {
let getLocals () = $"ticks: {ticks} / event: {event} / {getLocals ()}"
trace Verbose (fun () -> "Eval.startCommandsWatcher /
iterAsyncParallel") getLocals
match event with
| FileSystem.FileSystemChange.Created (path, Some json) ->
try
let fullPath = commandsDir </> path
let! result =
connection.InvokeAsync<string>("ClientToServerMsg", json) |> Async.AwaitTask
let commandHistoryPath = commandHistoryDir </> path
do! fullPath |> SpiralFileSystem.move_file_async
commandHistoryPath |> Async.Ignore
if result |> SpiralSm.trim |> String.length > 0 then
let resultPath = commandHistoryDir </>
$"{Path.GetFileNameWithoutExtension path}_result.json"
do! result |> SpiralFileSystem.write_all_text_async
resultPath
with ex ->
trace Critical (fun () -> "Eval.startCommandsWatcher /
iterAsyncParallel / ex: {ex |> SpiralSm.format_exception}") getLocals
| _ -> ()
})
|> Async.StartChild
|> Async.Ignore
|> Async.Start
new_disposable (fun () ->
disposable.Dispose ()
)
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## eval │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let inline eval
(fsi_eval:
string
-> System.Threading.CancellationToken
-> Choice<'a,Exception> * (TraceLevel * string * int * (string * (int *
int) * (int * int))) array)
(cancellationToken: Option<System.Threading.CancellationToken>)
(code: string)
=
log $"Eval.eval / code: %A{code}"
let rawCellCode =
if code |> SpiralSm.trim <> "// // trace"
then code |> SpiralSm.replace "\r\n" "\n"
else
let struct (_, dump, _, level, _) = SpiralTrace.get_trace_state ()
match level with
| { l0 = x } when x = SpiralTrace.US0_2 -> level.l0 <-
SpiralTrace.US0_0
| _ -> level.l0 <- SpiralTrace.US0_2
dump.l0 <- level.l0 = SpiralTrace.US0_0
"inl main () = ()"
let lines = rawCellCode |> SpiralSm.split "\n"
if lines |> Array.exists (fun line -> line |> SpiralSm.starts_with "#r " &&
line |> SpiralSm.ends_with "\"") then
let cancellationToken = defaultArg cancellationToken
System.Threading.CancellationToken.None
let ch, errors = fsi_eval code cancellationToken
match ch with
| Choice1Of2 v -> Ok(v), errors
| Choice2Of2 ex -> Error(ex), errors
else
try
let lastBlock =
lines
|> Array.tryFindBack (fun line ->
line |> String.length > 0
&& line.[[0]] <> ' '
)
let hasMain =
lastBlock
|> Option.exists (fun line ->
line |> SpiralSm.starts_with "inl main "
|| line |> SpiralSm.starts_with "let main "
)
let cellCode, lastTopLevelIndex =
if hasMain
then rawCellCode, None
else
let lastTopLevelIndex, _ =
(lines |> Array.indexed, (None, false))
||> Array.foldBack (fun (i, line) (lastTopLevelIndex,
finished) ->
trace Debug (fun () -> $"i: {i} / line: '{line}' /
lastTopLevelIndex: {lastTopLevelIndex} / finished: {finished}") getLocals
match line with
| _ when finished -> lastTopLevelIndex, true
| "" -> lastTopLevelIndex, false
| line when
line |> SpiralSm.starts_with " "
|| line |> SpiralSm.starts_with "// " ->
lastTopLevelIndex, false
| line when
line |> SpiralSm.starts_with "open "
|| line |> SpiralSm.starts_with "prototype "
|| line |> SpiralSm.starts_with "instance "
|| line |> SpiralSm.starts_with "type "
|| line |> SpiralSm.starts_with "union "
|| line |> SpiralSm.starts_with "nominal " ->
lastTopLevelIndex, true
| line when
line |> SpiralSm.starts_with "inl "
|| line |> SpiralSm.starts_with "let " ->
let m =
System.Text.RegularExpressions.Regex.Match (
line,
@"^(inl|let) +([[~\(\w]][[\w\d']]*(?:|
*[[~\w]][[\w\d']]*\)|, *[[~\w]][[\w\d']]*)) +[[:=]](?! +function)"
)
trace Debug (fun () -> $"m: '{m}' /
m.Groups.Count: {m.Groups.Count}") getLocals
if m.Groups.Count = 3
then Some i, false
else lastTopLevelIndex, true
| _ -> Some i, false
)
let code =
match lastTopLevelIndex with
| Some lastTopLevelIndex ->
lines
|> Array.mapi (fun i line ->
match i with
| i when i < lastTopLevelIndex -> line
| i when i = lastTopLevelIndex -> $"\nlet main
() =\n {line}"
| _ when line |> SpiralSm.trim = "" -> ""
| _ -> $" {line}"
)
|> SpiralSm.concat "\n"
| None -> $"{rawCellCode}\n\ninl main () = ()\n"
code, lastTopLevelIndex
let newAllCode = $"{allCode}\n\n{cellCode}"
let rustArgs =
lines
|> Array.tryPick (fun line ->
if line |> SpiralSm.starts_with "// // rust="
then line |> SpiralSm.split "=" |> Array.tryItem 1
else None
)
let timeout =
lines
|> Array.tryPick (fun line ->
if line |> SpiralSm.starts_with "// // timeout="
then line |> SpiralSm.split "=" |> Array.tryItem 1 |>
Option.map int
else None
)
|> Option.defaultValue (60000 * 60)
let printCode =
lines
|> Array.tryPick (fun line ->
if line |> SpiralSm.starts_with "// // print_code="
then line |> SpiralSm.split "=" |> Array.tryItem 1 |>
Option.map ((=) "true")
else None
)
|> Option.defaultValue true
async {
try
let! mainPath = newAllCode |> Supervisor.persistCode
let port = Supervisor.getCompilerPort ()
let! codeChoice =
mainPath
|> Supervisor.buildFile timeout port cancellationToken
|> Async.catch
|> Async.runWithTimeoutAsync timeout
let code =
match codeChoice with
| Some (Ok code) -> Some code
| Some (Error ex) ->
log $"Eval / errors: {ex |>
SpiralSm.format_exception}"
None
| _ -> None
match code with
| Some (Some code, spiralErrors) ->
let spiralErrors =
mapErrors (Warning, spiralErrors, lastTopLevelIndex)
allCode
let inline _trace (fn : unit -> string) =
let struct (_, _, _, level, _) =
SpiralTrace.get_trace_state ()
match level with
| { l0 = x } when x = SpiralTrace.US0_2 -> fn () |>
System.Console.WriteLine
| _ -> trace Info (fun () -> $"Eval.eval / {fn ()}")
getLocals
if printCode
then _trace (fun () -> if rustArgs |> Option.isSome then
$"\n.fsx:\n{code}" else code)
let! rustResult =
if rustArgs |> Option.isNone || lastTopLevelIndex =
None
then None |> Async.init
else
async {
// let hash = $"repl_{code |>
Crypto.hashText}"
let hash = $"spiral_eval"
let! fsprojPath = code |>
Builder.persistCodeProject [["Fable.Core"]] [[]] hash
let projectDir = fsprojPath |>
Path.GetDirectoryName
let outDir = projectDir </> $"target/{hash}"
let libLinkTargetPath = projectDir </>
"target/fable-library-rust"
let libLinkPath = outDir </>
$"fable_modules/fable-library-rust"
if Directory.Exists libLinkTargetPath |> not
then libLinkTargetPath |>
Directory.CreateDirectory |> ignore
libLinkPath |> Path.GetDirectoryName |>
Directory.CreateDirectory |> ignore
let libLinkPathInfo = DirectoryInfo
libLinkPath
if libLinkPathInfo.Exists &&
libLinkPathInfo.LinkTarget = null then
Directory.Delete (libLinkPath, true)
if libLinkPath |> Directory.Exists |> not
then
Directory.CreateSymbolicLink
(libLinkPath, libLinkTargetPath)
|> ignore
let! exitCode, result =
Runtime.executeWithOptionsAsync
{
Command = $@"dotnet fable
{fsprojPath} --optimize --lang rs --extension .rs --outDir {outDir}"
CancellationToken =
cancellationToken
WorkingDirectory = None
OnLine = None
}
if exitCode <> 0
then return Some (Error result)
else
let rsPath = outDir </> $"{hash}.rs"
let! rsCode = rsPath |>
SpiralFileSystem.read_all_text_async
let mainCode = "pub fn main() ->
Result<(), String> { Ok(()) }"
let cached = rsCode |> SpiralSm.contains
mainCode
let rsCode =
if cached
then rsCode
else rsCode |> SpiralSm.replace
"),);" "));"
if printCode
then _trace (fun () ->
$"\n.rs:\n{rsCode}")
if not cached
then do!
$"{rsCode}\n\n{mainCode}\n"
|>
SpiralFileSystem.write_all_text_async rsPath
let cargoTomlPath = outDir </>
$"Cargo.toml"
let cargoTomlContent = $"""[[package]]
name = "{hash}"
version = "0.0.1"
edition = "2021"
[[workspace]]
[[dependencies]]
fable_library_rust = {{ path = "fable_modules/fable-library-rust", optional =
true, default-features = false }}
clap = {{}}
num-complex = {{}}
pyo3 = "~0.21.0-beta.0"
[[features]]
default = [["fable_library_rust/default",
"fable_library_rust/static_do_bindings"]]
[[[[bin]]]]
name = "{hash}"
path = "{hash}.rs"
"""
do! cargoTomlContent |>
SpiralFileSystem.write_all_text_exists cargoTomlPath
let! exitCode, result =
Runtime.executeWithOptionsAsync
{
Command = $@"cargo run
--release --manifest-path {cargoTomlPath}"
CancellationToken =
cancellationToken
WorkingDirectory = None
OnLine = None
}
if exitCode = 0 then
try
let result =
result
|> SpiralSm.split "\n"
|> Array.skipWhile (fun line
->
line |>
SpiralSm.contains @"[[optimized]] target" |> not
)
|> Array.skip 2
|> SpiralSm.concat "\n"
return Some (Ok result)
with ex ->
return $"ex:
{ex}\nresult:\n{result}" |> Error |> Some
else
return Some (Error result)
}
let cancellationToken = defaultArg cancellationToken
System.Threading.CancellationToken.None
let fsxResult =
if rustArgs |> Option.isSome
then None
else
try
let ch, errors = fsi_eval code
cancellationToken
let errors =
errors
|> Array.map (fun (e1, e2, e3, _) ->
(e1, e2, e3, ("", (0, 0), (0, 0)))
)
Some (ch, errors)
with ex ->
trace Critical (fun () -> $"Eval.eval / ex:
{ex |> SpiralSm.format_exception}") getLocals
None
match fsxResult, rustResult with
| Some (ch, errors), None ->
let errors = errors |> Array.append spiralErrors
match ch with
| Choice1Of2 v ->
allCode <- newAllCode
return Ok(v), errors
| Choice2Of2 ex -> return Error ex, errors
| _, Some result ->
let result, errors =
match result with
| Ok result -> result, [[||]]
| Error error ->
"",
[[|
(
TraceLevel.Critical, error, 0, ("",
(0, 0), (0, 0))
)
|]]
let header = if printCode then ".rs output:\n" else
""
let ch, errors2 = fsi_eval
$"\"\"\"{header}{result}\n\"\"\"" cancellationToken
let errors =
errors
|> Array.append spiralErrors
|> Array.append errors2
match ch with
| Choice1Of2 v ->
allCode <- newAllCode
return Ok(v), errors
| Choice2Of2 ex ->
return Error ex, errors
| _ ->
let ch, errors = fsi_eval "()" cancellationToken
match ch with
| Choice1Of2 v ->
allCode <- newAllCode
return Ok(v), errors
| Choice2Of2 ex ->
return Error ex, errors
| Some (None, errors) when errors |> List.isEmpty |> not ->
return errors.[[0]] |> fst |> Exception |> Error,
mapErrors (TraceLevel.Critical, errors,
lastTopLevelIndex) allCode
| _ ->
return Error (Exception "Spiral error or timeout"),
[[|
(
TraceLevel.Critical, "Diag: Spiral error or
timeout", 0, ("", (0, 0), (0, 0))
)
|]]
with ex ->
log $"Eval / ex: {ex |> SpiralSm.format_exception}"
return Error (Exception $"Spiral error or timeout (4_) / ex:
{ex |> SpiralSm.format_exception}"),
[[|
(
TraceLevel.Critical, $"Diag: Spiral error or timeout
(4) / ex: {ex |> SpiralSm.format_exception}", 0, ("", (0, 0), (0, 0))
)
|]]
}
|> Async.runWithTimeoutStrict timeout
|> Option.defaultValue (
Error (Exception "Spiral error or timeout (2)"),
[[|
(
TraceLevel.Critical, "Diag: Spiral error or timeout
(2)", 0, ("", (0, 0), (0, 0))
)
|]]
)
with ex ->
log $"Eval / ex: {ex |> SpiralSm.format_exception}"
Error (Exception $"Spiral error or timeout (3) / ex: {ex |>
SpiralSm.format_exception}"),
[[|
(
TraceLevel.Critical, $"Diag: Spiral error or timeout (3) /
ex: {ex |> SpiralSm.format_exception}", 0, ("", (0, 0), (0, 0))
)
|]]
[NbConvertApp] Converting notebook Eval.dib.ipynb to html
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
validate(nb)
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
return _pygments_highlight(
[NbConvertApp] Writing 384950 bytes to Eval.dib.html
00:00:00 #1 [debug] writeDibCode / output: Fs / path: Eval.dib
00:00:00 #2 [debug] parseDibCode / output: Fs / file: Eval.dib
In [ ]:
{ . "$ScriptDir/../lib/fsharp/build.ps1" -sequential 1 } | Invoke-Block
00:00:00 #1 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:00 #2 [debug] executeAsync / options: { Command =
"dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" --port 13805 --default-int i32 --default-float f64"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = Some <fun:main@441-47> }
00:00:00 #3 [verbose] > pwd: C:\home\git\polyglot\lib\fsharp
00:00:00 #4 [verbose] > dllPath: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release
00:00:00 #5 [verbose] > targetDir: C:\home\git\polyglot\target/polyglot/spiral_eval
00:00:00 #6 [verbose] > Starting the Spiral Server. It is bound to: http://localhost:13805
00:00:00 #7 [debug] runWithTimeoutChildAsync / timeout: 500
00:00:00 #8 [verbose] waitForPortAccess / port: 13805 / retry: 0
00:00:01 #9 [debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:
00:00:01 #10 [verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0
00:00:01 #11 [verbose] > Server bound to: http://localhost:13805
00:00:01 #12 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 Async.dib" -Retries 3"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:00:05 #13 [verbose] >
00:00:06 #14 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:06 #15 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:06 #16 [verbose] > │ # Async (Polyglot) │
00:00:06 #17 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:06 #18 [verbose] >
00:00:06 #19 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:06 #20 [verbose] > #!import ../../lib/fsharp/Notebooks.dib
00:00:06 #21 [verbose] > #!import ../../lib/fsharp/Testing.dib
00:00:06 #22 [verbose] >
00:00:06 #23 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:06 #24 [verbose] > #r
00:00:06 #25 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:00:06 #26 [verbose] > spNetCore.Html.Abstractions.dll"
00:00:06 #27 [verbose] > #r
00:00:06 #28 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:06 #29 [verbose] > otNet.Interactive.dll"
00:00:06 #30 [verbose] > #r
00:00:06 #31 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:06 #32 [verbose] > otNet.Interactive.FSharp.dll"
00:00:06 #33 [verbose] > #r
00:00:06 #34 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:06 #35 [verbose] > otNet.Interactive.Formatting.dll"
00:00:06 #36 [verbose] > open System
00:00:06 #37 [verbose] > open System.IO
00:00:06 #38 [verbose] > open System.Text
00:00:06 #39 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:00:10 #40 [verbose] >
00:00:10 #41 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:10 #42 [verbose] > #r
00:00:10 #43 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:10 #44 [verbose] > otNet.Interactive.FSharp.dll"
00:00:10 #45 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:00:10 #46 [verbose] > #r
00:00:10 #47 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:10 #48 [verbose] > otNet.Interactive.dll"
00:00:10 #49 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:00:10 #50 [verbose] >
00:00:10 #51 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:10 #52 [verbose] > //// test
00:00:10 #53 [verbose] >
00:00:10 #54 [verbose] > Formatter.ListExpansionLimit <- 100
00:00:11 #55 [verbose] >
00:00:11 #56 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:11 #57 [verbose] > #r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
00:00:11 #58 [verbose] >
00:00:11 #59 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:11 #60 [verbose] > //// test
00:00:11 #61 [verbose] >
00:00:11 #62 [verbose] > type AssertExceptionFormatter (ex) =
00:00:11 #63 [verbose] > member _.Text =
00:00:11 #64 [verbose] > ex.ToString()
00:00:11 #65 [verbose] > .Replace("32m", "<span style=\"color: green;\">")
00:00:11 #66 [verbose] > .Replace("36m", "</span>")
00:00:11 #67 [verbose] > .Replace("31m", "<span style=\"color: red;\">")
00:00:11 #68 [verbose] > .Replace("\n", "<br/>\n")
00:00:11 #69 [verbose] >
00:00:11 #70 [verbose] >
00:00:11 #71 [verbose] > Formatter.Register<AssertExceptionFormatter> ((fun (x :
00:00:11 #72 [verbose] > AssertExceptionFormatter) -> x.Text), "text/html")
00:00:12 #73 [verbose] >
00:00:12 #74 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:12 #75 [verbose] > //// test
00:00:12 #76 [verbose] >
00:00:12 #77 [verbose] > let inline __expect fn log expected actual =
00:00:12 #78 [verbose] > if log then printfn $"{actual.ToDisplayString ()}"
00:00:12 #79 [verbose] > try
00:00:12 #80 [verbose] > "Testing.__expect" |> fn actual expected
00:00:12 #81 [verbose] > with :? Expecto.AssertException as ex ->
00:00:12 #82 [verbose] > AssertExceptionFormatter(ex).Display () |> ignore
00:00:12 #83 [verbose] > failwith (ex.GetType().FullName)
00:00:12 #84 [verbose] >
00:00:12 #85 [verbose] > let inline __contains log expected actual = __expect Expecto.Expect.contains log
00:00:12 #86 [verbose] > expected actual
00:00:12 #87 [verbose] > let inline _contains expected actual = __contains true expected actual
00:00:12 #88 [verbose] >
00:00:12 #89 [verbose] > let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
00:00:12 #90 [verbose] > expected actual
00:00:12 #91 [verbose] > let inline _assertEqual expected actual = __assertEqual true expected actual
00:00:12 #92 [verbose] >
00:00:12 #93 [verbose] > let inline __isGreaterThan log expected actual = __expect
00:00:12 #94 [verbose] > Expecto.Expect.isGreaterThan log ex...
00:00:13 #95 [verbose] >
00:00:13 #96 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:13 #97 [verbose] > //// test
00:00:13 #98 [verbose] >
00:00:13 #99 [verbose] > let inline __isBetween log a b actual =
00:00:13 #100 [verbose] > let inline isBetween actual (a, b) _ =
00:00:13 #101 [verbose] > __isGreaterThanOrEqual log a actual
00:00:13 #102 [verbose] > __isLessThanOrEqual log b actual
00:00:13 #103 [verbose] > __expect isBetween log (a, b) actual
00:00:13 #104 [verbose] > let inline _isBetween a b actual = __isBetween true a b actual
00:00:13 #105 [verbose] >
00:00:13 #106 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:13 #107 [verbose] > #!import ../../lib/spiral/common.fsx
00:00:13 #108 [verbose] > #!import ../../lib/spiral/sm.fsx
00:00:13 #109 [verbose] > #!import ../../lib/spiral/date_time.fsx
00:00:13 #110 [verbose] > #!import ../../lib/spiral/file_system.fsx
00:00:13 #111 [verbose] > #!import ../../lib/spiral/trace.fsx
00:00:13 #112 [verbose] > #!import ../../lib/spiral/lib.fsx
00:00:13 #113 [verbose] > #!import ../../lib/fsharp/Common.fs
00:00:13 #114 [verbose] >
00:00:13 #115 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:13 #116 [verbose] > type [[<Struct>]] US0 =
00:00:13 #117 [verbose] > | US0_0
00:00:13 #118 [verbose] > | US0_1
00:00:13 #119 [verbose] > and [[<Struct>]] US1 =
00:00:13 #120 [verbose] > | US1_0 of f0_0 : US0
00:00:13 #121 [verbose] > | US1_1
00:00:13 #122 [verbose] > let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
00:00:13 #123 [verbose] > let v1 : System.IDisposable option = None
00:00:13 #124 [verbose] > let mutable _v1 = v1
00:00:13 #125 [verbose] > #if FABLE_COMPILER_RUST && !WASM && !CONTRACT
00:00:13 #126 [verbose] > let v2 : System.IDisposable = null |> unbox<System.IDisposable>
00:00:13 #127 [verbose] > v2
00:00:13 #128 [verbose] > #endif
00:00:13 #129 [verbose] > #if FABLE_COMPILER_RUST && WASM
00:00:13 #130 [verbose] > let v3 : System.IDisposable = null |> unbox<System.IDisposable>
00:00:13 #131 [verbose] > v3
00:00:13 #132 [verbose] > #endif
00:00:13 #133 [verbose] > #if FABLE_COMPILER_RUST && CONTRACT
00:00:13 #134 [verbose] > let v4 : System.IDisposable = null |> unbox<System.IDisposable>
00:00:13 #135 [verbose] > v4
00:00:13 #136 [verbose] > #endif
00:00:13 #137 [verbose] > #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
00:00:13 #138 [verbose] > !WASM && !CONTRACT
00:00:13 #139 [verbose] > let v5 : System.ID...
00:00:13 #140 [verbose] >
00:00:13 #141 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:13 #142 [verbose] > type Mut0 = {mutable l0 : int32; mutable l1 : string}
00:00:13 #143 [verbose] > and Mut1 = {mutable l0 : int32}
00:00:13 #144 [verbose] > let rec closure1 (v0 : string) (v1 : string) : bool =
00:00:13 #145 [verbose] > let v2 : bool = v1.Contains v0
00:00:13 #146 [verbose] > v2
00:00:13 #147 [verbose] > and closure0 () (v0 : string) : (string -> bool) =
00:00:13 #148 [verbose] > closure1(v0)
00:00:13 #149 [verbose] > and closure3 (v0 : string) (v1 : string) : bool =
00:00:13 #150 [verbose] > let v2 : bool = v1.EndsWith v0
00:00:13 #151 [verbose] > v2
00:00:13 #152 [verbose] > and closure2 () (v0 : string) : (string -> bool) =
00:00:13 #153 [verbose] > closure3(v0)
00:00:13 #154 [verbose] > and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
00:00:13 #155 [verbose] > let v3 : string = v2.PadLeft (v0, v1)
00:00:13 #156 [verbose] > v3
00:00:13 #157 [verbose] > and closure5 (v0 : int32) (v1 : char) : (string -> string) =
00:00:13 #158 [verbose] > closure6(v0, v1)
00:00:13 #159 [verbose] > and closure4 () (v0 : int32) : (char -> (string -> string)) =
00:00:13 #160 [verbose] > closure5(v0)
00:00:13 #161 [verbose] > and closure8 (v0 : int32) (v1 : string) : string =
00:00:13 #162 [verbose] > let v2 : stri...
00:00:14 #163 [verbose] >
00:00:14 #164 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:14 #165 [verbose] > let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
00:00:14 #166 [verbose] > let v2 : (System.Guid -> string) = _.ToString()
00:00:14 #167 [verbose] > let v3 : string = v2 v0
00:00:14 #168 [verbose] > let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
00:00:14 #169 [verbose] > let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
00:00:14 #170 [verbose] > v5
00:00:14 #171 [verbose] > and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
00:00:14 #172 [verbose] > closure1(v0)
00:00:14 #173 [verbose] > and closure5 (v0 : string, v1 : string) (v2 : string) : string =
00:00:14 #174 [verbose] > let v3 : string = v2.Replace (v0, v1)
00:00:14 #175 [verbose] > v3
00:00:14 #176 [verbose] > and closure4 (v0 : string) (v1 : string) : (string -> string) =
00:00:14 #177 [verbose] > closure5(v0, v1)
00:00:14 #178 [verbose] > and closure3 () (v0 : string) : (string -> (string -> string)) =
00:00:14 #179 [verbose] > closure4(v0)
00:00:14 #180 [verbose] > and method0 () : (string -> (string -> (string -> string))) =
00:00:14 #181 [verbose] > closure3()
00:00:14 #182 [verbose] > and closure2 (...
00:00:15 #183 [verbose] >
00:00:15 #184 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:15 #185 [verbose] > #if FABLE_COMPILER // file_system.types
00:00:15 #186 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
00:00:15 #187 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
00:00:15 #188 [verbose] > base64_DecodeError = class end
00:00:15 #189 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
00:00:15 #190 [verbose] > = class end
00:00:15 #191 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
00:00:15 #192 [verbose] > = class end
00:00:15 #193 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
00:00:15 #194 [verbose] > serde_json_Error = class end
00:00:15 #195 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
00:00:15 #196 [verbose] > serde_json_Value = class end
00:00:15 #197 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
00:00:15 #198 [verbose] > serde_wasm_bindgen_Error = class end
00:00:15 #199 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
00:00:17 #200 [verbose] >
00:00:17 #201 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:18 #202 [verbose] > module State = let mutable trace_state = None
00:00:18 #203 [verbose] > type [[<Struct>]] US0 =
00:00:18 #204 [verbose] > | US0_0
00:00:18 #205 [verbose] > | US0_1
00:00:18 #206 [verbose] > | US0_2
00:00:18 #207 [verbose] > | US0_3
00:00:18 #208 [verbose] > | US0_4
00:00:18 #209 [verbose] > and Mut0 = {mutable l0 : int64}
00:00:18 #210 [verbose] > and Mut1 = {mutable l0 : bool}
00:00:18 #211 [verbose] > and Mut2 = {mutable l0 : US0}
00:00:18 #212 [verbose] > and [[<Struct>]] US1 =
00:00:18 #213 [verbose] > | US1_0 of f0_0 : int64
00:00:18 #214 [verbose] > | US1_1
00:00:18 #215 [verbose] > and [[<Struct>]] US2 =
00:00:18 #216 [verbose] > | US2_0 of f0_0 : int64
00:00:18 #217 [verbose] > | US2_1
00:00:18 #218 [verbose] > let rec method1 (v0 : int64 option) : int64 option =
00:00:18 #219 [verbose] > v0
00:00:18 #220 [verbose] > and method2 (v0 : int64 option) : int64 option =
00:00:18 #221 [verbose] > v0
00:00:18 #222 [verbose] > and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
00:00:18 #223 [verbose] > let v0 : Mut1 = {l0 = true} : Mut1
00:00:18 #224 [verbose] > let v1 : Mut0 = {l0 = 0L} : Mut0
00:00:18 #225 [verbose] > let v2 : US0 = US0_0
00:00:18 #226 [verbose] > let v3 : Mut2 = {l0 = v2} : Mut2
00:00:18 #227 [verbose] > let v4 : Mut1 = {l0 = false} : Mut1
00:00:18 #228 [verbose] > let v5 : int64 option option = None
00:00:18 #229 [verbose] > ...
00:00:18 #230 [verbose] >
00:00:18 #231 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:18 #232 [verbose] > module SpiralTrace =
00:00:18 #233 [verbose] > let get_trace_state () =
00:00:18 #234 [verbose] > #if !INTERACTIVE
00:00:18 #235 [verbose] > Trace.get_trace_state ()
00:00:18 #236 [verbose] > #else
00:00:18 #237 [verbose] > get_trace_state ()
00:00:18 #238 [verbose] > #endif
00:00:18 #239 [verbose] > let trace x =
00:00:18 #240 [verbose] > #if !INTERACTIVE
00:00:18 #241 [verbose] > Trace.trace x
00:00:18 #242 [verbose] > #else
00:00:18 #243 [verbose] > trace x
00:00:18 #244 [verbose] > #endif
00:00:18 #245 [verbose] >
00:00:18 #246 [verbose] > let US0_0 =
00:00:18 #247 [verbose] > #if !INTERACTIVE
00:00:18 #248 [verbose] > Trace.US0_0
00:00:18 #249 [verbose] > #else
00:00:18 #250 [verbose] > US0_0
00:00:18 #251 [verbose] > #endif
00:00:18 #252 [verbose] >
00:00:18 #253 [verbose] > let US0_1 =
00:00:18 #254 [verbose] > #if !INTERACTIVE
00:00:18 #255 [verbose] > Trace.US0_1
00:00:18 #256 [verbose] > #else
00:00:18 #257 [verbose] > US0_1
00:00:18 #258 [verbose] > #endif
00:00:18 #259 [verbose] >
00:00:18 #260 [verbose] > let US0_2 =
00:00:18 #261 [verbose] > #if !INTERACTIVE
00:00:18 #262 [verbose] > Trace.US0_2
00:00:18 #263 [verbose] > #else
00:00:18 #264 [verbose] > US0_2
00:00:18 #265 [verbose] > #endif
00:00:18 #266 [verbose] >
00:00:18 #267 [verbose] > let US0_3 =
00:00:18 #268 [verbose] > #if !INTERACTIVE
00:00:18 #269 [verbose] > Trace.US0_3
00:00:18 #270 [verbose] > #else
00:00:18 #271 [verbose] > US0_3
00:00:18 #272 [verbose] > #endif
00:00:18 #273 [verbose] >
00:00:18 #274 [verbose] > let US0_4 =
00:00:18 #275 [verbose] > #if !INTERACTIVE
00:00:18 #276 [verbose] > Trace.US0_4
00:00:18 #277 [verbose] > #else
00:00:18 #278 [verbose] > US0_4
00:00:18 #279 [verbose] > #endif
00:00:18 #280 [verbose] >
00:00:18 #281 [verbose] >
00:00:18 #282 [verbose] > #if !FABLE_COMPILER && !WASM && !CONTRACT
00:00:18 #283 [verbose] > module SpiralDateTime =
00:00:18 #284 [verbose] > let format x =
00:00:18 #285 [verbose] > #if !INTERACTIVE
00:00:18 #286 [verbose] > Date_ti...
00:00:18 #287 [verbose] >
00:00:18 #288 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:18 #289 [verbose] > #if !INTERACTIVE
00:00:18 #290 [verbose] > namespace Polyglot
00:00:18 #291 [verbose] > #endif
00:00:18 #292 [verbose] >
00:00:18 #293 [verbose] > module Common =
00:00:18 #294 [verbose] >
00:00:18 #295 [verbose] > #if !INTERACTIVE
00:00:18 #296 [verbose] > open Lib
00:00:18 #297 [verbose] > #endif
00:00:18 #298 [verbose] >
00:00:18 #299 [verbose] > let nl = System.Environment.NewLine
00:00:18 #300 [verbose] > let q = @""""
00:00:18 #301 [verbose] >
00:00:18 #302 [verbose] > let inline cons head tail = head :: tail
00:00:18 #303 [verbose] >
00:00:18 #304 [verbose] > /// ## memoize
00:00:18 #305 [verbose] >
00:00:18 #306 [verbose] > let inline memoize fn =
00:00:18 #307 [verbose] > let result = lazy fn ()
00:00:18 #308 [verbose] > fun () -> result.Value
00:00:18 #309 [verbose] >
00:00:18 #310 [verbose] > /// ## TraceLevel
00:00:18 #311 [verbose] >
00:00:18 #312 [verbose] > type TraceLevel =
00:00:18 #313 [verbose] > | Verbose
00:00:18 #314 [verbose] > | Debug
00:00:18 #315 [verbose] > | Info
00:00:18 #316 [verbose] > | Warning
00:00:18 #317 [verbose] > | Critical
00:00:18 #318 [verbose] >
00:00:18 #319 [verbose] > let inline getLocals () = ""
00:00:18 #320 [verbose] >
00:00:18 #321 [verbose] > /// ## trace
00:00:18 #322 [verbose] >
00:00:18 #323 [verbose] > let to_trace_level = function
00:00:18 #324 [verbose] > | Verbose -> SpiralTrace.US0_0
00:00:18 #325 [verbose] > | Debug -> SpiralTrace.US0_1
00:00:18 #326 [verbose] > | Info -> SpiralTrace.US0_2
00:00:18 #327 [verbose] > | Warning -> SpiralTrace.US0_3
00:00:18 #328 [verbose] > | Critical -> SpiralTrace.US0_4
00:00:18 #329 [verbose] >
00:00:18 #330 [verbose] > let trace level fn g...
00:00:18 #331 [verbose] >
00:00:18 #332 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:18 #333 [verbose] > #if !INTERACTIVE
00:00:18 #334 [verbose] > open Lib
00:00:18 #335 [verbose] > #endif
00:00:18 #336 [verbose] >
00:00:18 #337 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:18 #338 [verbose] > open Common
00:00:18 #339 [verbose] >
00:00:18 #340 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:18 #341 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:18 #342 [verbose] > │ ## choice │
00:00:18 #343 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #344 [verbose] >
00:00:18 #345 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:18 #346 [verbose] > let inline choice asyncs = async {
00:00:18 #347 [verbose] > let e = Event<_> ()
00:00:18 #348 [verbose] > use cts = new System.Threading.CancellationTokenSource ()
00:00:18 #349 [verbose] > let fn =
00:00:18 #350 [verbose] > asyncs
00:00:18 #351 [verbose] > |> Seq.map (fun a -> async {
00:00:18 #352 [verbose] > let! x = a
00:00:18 #353 [verbose] > e.Trigger x
00:00:18 #354 [verbose] > })
00:00:18 #355 [verbose] > |> Async.Parallel
00:00:18 #356 [verbose] > |> Async.Ignore
00:00:18 #357 [verbose] > Async.Start (fn, cts.Token)
00:00:18 #358 [verbose] > let! result = Async.AwaitEvent e.Publish
00:00:18 #359 [verbose] > cts.Cancel ()
00:00:18 #360 [verbose] > return result
00:00:18 #361 [verbose] > }
00:00:18 #362 [verbose] >
00:00:18 #363 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:18 #364 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:18 #365 [verbose] > │ ## map │
00:00:18 #366 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #367 [verbose] >
00:00:18 #368 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:18 #369 [verbose] > let inline map fn a = async {
00:00:18 #370 [verbose] > let! x = a
00:00:18 #371 [verbose] > return fn x
00:00:18 #372 [verbose] > }
00:00:18 #373 [verbose] >
00:00:18 #374 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:18 #375 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:18 #376 [verbose] > │ ## catch │
00:00:18 #377 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #378 [verbose] >
00:00:18 #379 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:18 #380 [verbose] > let inline catch a =
00:00:18 #381 [verbose] > a
00:00:18 #382 [verbose] > |> Async.Catch
00:00:18 #383 [verbose] > |> map (function
00:00:18 #384 [verbose] > | Choice1Of2 result -> Ok result
00:00:18 #385 [verbose] > | Choice2Of2 ex -> Error ex
00:00:18 #386 [verbose] > )
00:00:18 #387 [verbose] >
00:00:18 #388 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:18 #389 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:18 #390 [verbose] > │ ## runWithTimeoutAsync │
00:00:18 #391 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #392 [verbose] >
00:00:18 #393 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:18 #394 [verbose] > let inline runWithTimeoutAsync_ (timeout : int) fn =
00:00:18 #395 [verbose] > let getLocals () = $"timeout: {timeout} / {getLocals ()}"
00:00:18 #396 [verbose] >
00:00:18 #397 [verbose] > let timeoutTask = async {
00:00:18 #398 [verbose] > do! Async.Sleep timeout
00:00:18 #399 [verbose] > trace Debug (fun () -> "runWithTimeoutAsync") getLocals
00:00:18 #400 [verbose] > return None
00:00:18 #401 [verbose] > }
00:00:18 #402 [verbose] >
00:00:18 #403 [verbose] > let task = async {
00:00:18 #404 [verbose] > try
00:00:18 #405 [verbose] > let! result = fn
00:00:18 #406 [verbose] > return Some result
00:00:18 #407 [verbose] > with
00:00:18 #408 [verbose] > | :? System.AggregateException as ex when
00:00:18 #409 [verbose] > ex.InnerExceptions
00:00:18 #410 [verbose] > |> Seq.exists (function :?
00:00:18 #411 [verbose] > System.Threading.Tasks.TaskCanceledException -> true | _ -> false)
00:00:18 #412 [verbose] > ->
00:00:18 #413 [verbose] > let getLocals () = $"ex: {ex |> SpiralSm.format_exception}
00:00:18 #414 [verbose] > {getLocals ()}"
00:00:18 #415 [verbose] > trace Warning (fun () -> "runWithTimeoutAsync") getLocals
00:00:18 #416 [verbose] > return None
00:00:18 #417 [verbose] > | ex ->
00:00:18 #418 [verbose] > trace Critical (fun () -> $"runWithTimeoutAsync** / ex: {ex |>
00:00:18 #419 [verbose] > SpiralSm.format_exception}") getLocals
00:00:18 #420 [verbose] > return None
00:00:18 #421 [verbose] > }
00:00:18 #422 [verbose] >
00:00:18 #423 [verbose] > [[ timeoutTask; task ]]
00:00:18 #424 [verbose] > |> choice
00:00:18 #425 [verbose] >
00:00:18 #426 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:18 #427 [verbose] > let inline runWithTimeout_ timeout fn =
00:00:18 #428 [verbose] > fn
00:00:18 #429 [verbose] > |> runWithTimeoutAsync_ timeout
00:00:18 #430 [verbose] > |> Async.RunSynchronously
00:00:18 #431 [verbose] >
00:00:18 #432 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:18 #433 [verbose] > //// test
00:00:18 #434 [verbose] >
00:00:18 #435 [verbose] > Async.Sleep 120
00:00:18 #436 [verbose] > |> runWithTimeout_ 10
00:00:18 #437 [verbose] > |> _assertEqual None
00:00:18 #438 [verbose] >
00:00:18 #439 [verbose] > ╭─[ 156.80ms - stdout ]────────────────────────────────────────────────────────╮
00:00:18 #440 [verbose] > │ 00:00:00 #1 [debug] runWithTimeoutAsync / timeout: 10 │
00:00:18 #441 [verbose] > │ <null> │
00:00:18 #442 [verbose] > │ │
00:00:18 #443 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #444 [verbose] >
00:00:18 #445 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:18 #446 [verbose] > //// test
00:00:18 #447 [verbose] >
00:00:18 #448 [verbose] > Async.Sleep 10
00:00:18 #449 [verbose] > |> runWithTimeout_ 60
00:00:18 #450 [verbose] > |> _assertEqual (Some ())
00:00:19 #451 [verbose] >
00:00:19 #452 [verbose] > ╭─[ 111.23ms - stdout ]────────────────────────────────────────────────────────╮
00:00:19 #453 [verbose] > │ FSharpOption<Unit> │
00:00:19 #454 [verbose] > │ Value: <null> │
00:00:19 #455 [verbose] > │ │
00:00:19 #456 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:19 #457 [verbose] >
00:00:19 #458 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:19 #459 [verbose] > //// test
00:00:19 #460 [verbose] >
00:00:19 #461 [verbose] > async {
00:00:19 #462 [verbose] > raise (exn "error")
00:00:19 #463 [verbose] > }
00:00:19 #464 [verbose] > |> runWithTimeout_ 60
00:00:19 #465 [verbose] > |> _assertEqual None
00:00:19 #466 [verbose] >
00:00:19 #467 [verbose] > ╭─[ 219.56ms - stdout ]────────────────────────────────────────────────────────╮
00:00:19 #468 [verbose] > │ 00:00:00 #2 [critical] runWithTimeoutAsync** / ex: System.Exception: error / │
00:00:19 #469 [verbose] > │ timeout: 60 │
00:00:19 #470 [verbose] > │ <null> │
00:00:19 #471 [verbose] > │ │
00:00:19 #472 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:19 #473 [verbose] >
00:00:19 #474 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:19 #475 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:19 #476 [verbose] > │ ## runWithTimeoutChildAsync │
00:00:19 #477 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:19 #478 [verbose] >
00:00:19 #479 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:19 #480 [verbose] > let inline runWithTimeoutChildAsync (timeout : int) fn = async {
00:00:19 #481 [verbose] > let getLocals () = $"timeout: {timeout} / {getLocals ()}"
00:00:19 #482 [verbose] > let! child = Async.StartChild (fn, timeout)
00:00:19 #483 [verbose] > return!
00:00:19 #484 [verbose] > child
00:00:19 #485 [verbose] > |> catch
00:00:19 #486 [verbose] > |> map (function
00:00:19 #487 [verbose] > | Ok result -> Some result
00:00:19 #488 [verbose] > | Error (:? System.TimeoutException as ex) ->
00:00:19 #489 [verbose] > trace Debug (fun () -> $"runWithTimeoutChildAsync") getLocals
00:00:19 #490 [verbose] > None
00:00:19 #491 [verbose] > | Error ex ->
00:00:19 #492 [verbose] > trace Critical (fun () -> $"runWithTimeoutChildAsync** / ex: {ex
00:00:19 #493 [verbose] > |> SpiralSm.format_exception}") getLocals
00:00:19 #494 [verbose] > None
00:00:19 #495 [verbose] > )
00:00:19 #496 [verbose] > }
00:00:19 #497 [verbose] >
00:00:19 #498 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:19 #499 [verbose] > let inline runWithTimeoutChild timeout fn =
00:00:19 #500 [verbose] > fn
00:00:19 #501 [verbose] > |> runWithTimeoutChildAsync timeout
00:00:19 #502 [verbose] > |> Async.RunSynchronously
00:00:19 #503 [verbose] >
00:00:19 #504 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:19 #505 [verbose] > let inline runWithTimeoutAsync timeout fn =
00:00:19 #506 [verbose] > runWithTimeoutChildAsync timeout fn
00:00:19 #507 [verbose] >
00:00:19 #508 [verbose] > let inline runWithTimeout timeout fn =
00:00:19 #509 [verbose] > runWithTimeoutChild timeout fn
00:00:19 #510 [verbose] >
00:00:19 #511 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:19 #512 [verbose] > //// test
00:00:19 #513 [verbose] >
00:00:19 #514 [verbose] > Async.Sleep 60
00:00:19 #515 [verbose] > |> runWithTimeoutChild 10
00:00:19 #516 [verbose] > |> _assertEqual None
00:00:19 #517 [verbose] >
00:00:19 #518 [verbose] > ╭─[ 124.65ms - stdout ]────────────────────────────────────────────────────────╮
00:00:19 #519 [verbose] > │ 00:00:00 #3 [debug] runWithTimeoutChildAsync / timeout: 10 │
00:00:19 #520 [verbose] > │ <null> │
00:00:19 #521 [verbose] > │ │
00:00:19 #522 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:19 #523 [verbose] >
00:00:19 #524 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:19 #525 [verbose] > //// test
00:00:19 #526 [verbose] >
00:00:19 #527 [verbose] > Async.Sleep 10
00:00:19 #528 [verbose] > |> runWithTimeoutChild 60
00:00:19 #529 [verbose] > |> _assertEqual (Some ())
00:00:19 #530 [verbose] >
00:00:19 #531 [verbose] > ╭─[ 83.45ms - stdout ]─────────────────────────────────────────────────────────╮
00:00:19 #532 [verbose] > │ FSharpOption<Unit> │
00:00:19 #533 [verbose] > │ Value: <null> │
00:00:19 #534 [verbose] > │ │
00:00:19 #535 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:19 #536 [verbose] >
00:00:19 #537 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:19 #538 [verbose] > //// test
00:00:19 #539 [verbose] >
00:00:19 #540 [verbose] > async {
00:00:19 #541 [verbose] > raise (exn "error")
00:00:19 #542 [verbose] > }
00:00:19 #543 [verbose] > |> runWithTimeoutChild 60
00:00:19 #544 [verbose] > |> _assertEqual None
00:00:19 #545 [verbose] >
00:00:19 #546 [verbose] > ╭─[ 86.06ms - stdout ]─────────────────────────────────────────────────────────╮
00:00:19 #547 [verbose] > │ 00:00:00 #4 [critical] runWithTimeoutChildAsync** / ex: System.Exception: │
00:00:19 #548 [verbose] > │ error / timeout: 60 │
00:00:19 #549 [verbose] > │ <null> │
00:00:19 #550 [verbose] > │ │
00:00:19 #551 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:19 #552 [verbose] >
00:00:19 #553 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:19 #554 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:19 #555 [verbose] > │ ## runWithTimeoutStrict │
00:00:19 #556 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:19 #557 [verbose] >
00:00:19 #558 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:19 #559 [verbose] > let inline runWithTimeoutStrict (timeout : int) fn =
00:00:19 #560 [verbose] > let getLocals () = $"timeout: {timeout} / {getLocals ()}"
00:00:19 #561 [verbose] >
00:00:19 #562 [verbose] > let timeoutTask = async {
00:00:19 #563 [verbose] > do! Async.Sleep timeout
00:00:19 #564 [verbose] > return None, getLocals
00:00:19 #565 [verbose] > }
00:00:19 #566 [verbose] >
00:00:19 #567 [verbose] > let task = async {
00:00:19 #568 [verbose] > try
00:00:19 #569 [verbose] > return Async.RunSynchronously (fn, timeout) |> Some, getLocals
00:00:19 #570 [verbose] > with
00:00:19 #571 [verbose] > | :? System.TimeoutException as ex ->
00:00:19 #572 [verbose] > let getLocals () = $"ex: {ex |> SpiralSm.format_exception}
00:00:19 #573 [verbose] > {getLocals ()}"
00:00:19 #574 [verbose] > return None, getLocals
00:00:19 #575 [verbose] > | ex ->
00:00:19 #576 [verbose] > trace Critical (fun () -> $"runWithTimeoutStrict / ex: {ex |>
00:00:19 #577 [verbose] > SpiralSm.format_exception}") getLocals
00:00:19 #578 [verbose] > return raise ex
00:00:19 #579 [verbose] > }
00:00:19 #580 [verbose] >
00:00:19 #581 [verbose] > try
00:00:19 #582 [verbose] > [[| timeoutTask; task |]]
00:00:19 #583 [verbose] > |> Array.map Async.StartAsTask
00:00:19 #584 [verbose] > |> System.Threading.Tasks.Task.WhenAny
00:00:19 #585 [verbose] > |> fun task ->
00:00:19 #586 [verbose] > match task.Result.Result with
00:00:19 #587 [verbose] > | None, getLocals ->
00:00:19 #588 [verbose] > trace Debug (fun () -> "runWithTimeoutStrict") getLocals
00:00:19 #589 [verbose] > None
00:00:19 #590 [verbose] > | result, _ -> result
00:00:19 #591 [verbose] > with
00:00:19 #592 [verbose] > | :? System.AggregateException as ex when
00:00:19 #593 [verbose] > ex.InnerExceptions
00:00:19 #594 [verbose] > |> Seq.exists (function :? System.Threading.Tasks.TaskCanceledException
00:00:19 #595 [verbose] > -> true | _ -> false)
00:00:19 #596 [verbose] > ->
00:00:19 #597 [verbose] > let getLocals () = $"ex: {ex |> SpiralSm.format_exception} / {getLocals
00:00:19 #598 [verbose] > ()}"
00:00:19 #599 [verbose] > trace Warning (fun () -> "runWithTimeoutStrict") getLocals
00:00:19 #600 [verbose] > None
00:00:19 #601 [verbose] > | ex ->
00:00:19 #602 [verbose] > let getLocals () = $"ex: {ex |> SpiralSm.format_exception} / {getLocals
00:00:19 #603 [verbose] > ()}"
00:00:19 #604 [verbose] > trace Critical (fun () -> "runWithTimeoutStrict**") getLocals
00:00:19 #605 [verbose] > None
00:00:19 #606 [verbose] >
00:00:19 #607 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:19 #608 [verbose] > //// test
00:00:19 #609 [verbose] >
00:00:19 #610 [verbose] > Async.Sleep 60
00:00:19 #611 [verbose] > |> runWithTimeoutStrict 10
00:00:19 #612 [verbose] > |> _assertEqual None
00:00:20 #613 [verbose] >
00:00:20 #614 [verbose] > ╭─[ 108.99ms - stdout ]────────────────────────────────────────────────────────╮
00:00:20 #615 [verbose] > │ 00:00:01 #5 [debug] runWithTimeoutStrict / timeout: 10 │
00:00:20 #616 [verbose] > │ <null> │
00:00:20 #617 [verbose] > │ │
00:00:20 #618 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:20 #619 [verbose] >
00:00:20 #620 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:20 #621 [verbose] > //// test
00:00:20 #622 [verbose] >
00:00:20 #623 [verbose] > Async.Sleep 10
00:00:20 #624 [verbose] > |> runWithTimeoutStrict 60
00:00:20 #625 [verbose] > |> _assertEqual (Some ())
00:00:20 #626 [verbose] >
00:00:20 #627 [verbose] > ╭─[ 113.14ms - stdout ]────────────────────────────────────────────────────────╮
00:00:20 #628 [verbose] > │ FSharpOption<Unit> │
00:00:20 #629 [verbose] > │ Value: <null> │
00:00:20 #630 [verbose] > │ │
00:00:20 #631 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:20 #632 [verbose] >
00:00:20 #633 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:20 #634 [verbose] > //// test
00:00:20 #635 [verbose] >
00:00:20 #636 [verbose] > async {
00:00:20 #637 [verbose] > raise (exn "error")
00:00:20 #638 [verbose] > }
00:00:20 #639 [verbose] > |> runWithTimeoutStrict 60
00:00:20 #640 [verbose] > |> _assertEqual None
00:00:20 #641 [verbose] >
00:00:20 #642 [verbose] > ╭─[ 126.39ms - stdout ]────────────────────────────────────────────────────────╮
00:00:20 #643 [verbose] > │ 00:00:01 #6 [critical] runWithTimeoutStrict / ex: System.Exception: error / │
00:00:20 #644 [verbose] > │ timeout: 60 │
00:00:20 #645 [verbose] > │ 00:00:01 #7 [critical] runWithTimeoutStrict** / ex: │
00:00:20 #646 [verbose] > │ System.AggregateException: One or more errors occurred. (error) / timeout: │
00:00:20 #647 [verbose] > │ 60 │
00:00:20 #648 [verbose] > │ <null> │
00:00:20 #649 [verbose] > │ │
00:00:20 #650 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:20 #651 [verbose] >
00:00:20 #652 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:20 #653 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:20 #654 [verbose] > │ ## awaitValueTask │
00:00:20 #655 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:20 #656 [verbose] >
00:00:20 #657 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:20 #658 [verbose] > let inline awaitValueTaskUnit (task : System.Threading.Tasks.ValueTask) =
00:00:20 #659 [verbose] > task.AsTask () |> Async.AwaitTask
00:00:20 #660 [verbose] >
00:00:20 #661 [verbose] > let inline awaitValueTask (task : System.Threading.Tasks.ValueTask<_>) =
00:00:20 #662 [verbose] > task.AsTask () |> Async.AwaitTask
00:00:20 #663 [verbose] >
00:00:20 #664 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:20 #665 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:20 #666 [verbose] > │ ## init │
00:00:20 #667 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:20 #668 [verbose] >
00:00:20 #669 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:20 #670 [verbose] > let inline init x = async {
00:00:20 #671 [verbose] > return x
00:00:20 #672 [verbose] > }
00:00:20 #673 [verbose] >
00:00:20 #674 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:20 #675 [verbose] > //// test
00:00:20 #676 [verbose] >
00:00:20 #677 [verbose] > init 1
00:00:20 #678 [verbose] > |> Async.RunSynchronously
00:00:20 #679 [verbose] > |> _assertEqual 1
00:00:20 #680 [verbose] >
00:00:20 #681 [verbose] > ╭─[ 37.48ms - stdout ]─────────────────────────────────────────────────────────╮
00:00:20 #682 [verbose] > │ 1 │
00:00:20 #683 [verbose] > │ │
00:00:20 #684 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:20 #685 [verbose] >
00:00:20 #686 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:20 #687 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:20 #688 [verbose] > │ ## mergeCancellationTokenWithDefaultAsync │
00:00:20 #689 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:20 #690 [verbose] >
00:00:20 #691 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:20 #692 [verbose] > let inline mergeCancellationTokenWithDefaultAsync (token :
00:00:20 #693 [verbose] > System.Threading.CancellationToken) = async {
00:00:20 #694 [verbose] > let! ct = Async.CancellationToken
00:00:20 #695 [verbose] > let dct = Async.DefaultCancellationToken
00:00:20 #696 [verbose] > let cts = System.Threading.CancellationTokenSource.CreateLinkedTokenSource
00:00:20 #697 [verbose] > [[| ct; dct; token |]]
00:00:20 #698 [verbose] > return cts.Token
00:00:20 #699 [verbose] > }
00:00:20 #700 [verbose] >
00:00:20 #701 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:20 #702 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:20 #703 [verbose] > │ ## withCancellationToken │
00:00:20 #704 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:20 #705 [verbose] >
00:00:20 #706 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:20 #707 [verbose] > let inline withCancellationToken (ct : System.Threading.CancellationToken) fn =
00:00:20 #708 [verbose] > Async.StartImmediateAsTask (fn, ct)
00:00:20 #709 [verbose] > |> Async.AwaitTask
00:00:20 #710 [verbose] >
00:00:20 #711 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:20 #712 [verbose] > //// test
00:00:20 #713 [verbose] >
00:00:20 #714 [verbose] > let cts = new System.Threading.CancellationTokenSource ()
00:00:20 #715 [verbose] >
00:00:20 #716 [verbose] > async {
00:00:20 #717 [verbose] > let run = async {
00:00:20 #718 [verbose] > do! Async.Sleep 100
00:00:20 #719 [verbose] > return 1
00:00:20 #720 [verbose] > }
00:00:20 #721 [verbose] >
00:00:20 #722 [verbose] > let! child =
00:00:20 #723 [verbose] > run
00:00:20 #724 [verbose] > |> withCancellationToken cts.Token
00:00:20 #725 [verbose] > |> catch
00:00:20 #726 [verbose] > |> Async.StartChild
00:00:20 #727 [verbose] >
00:00:20 #728 [verbose] > do! Async.Sleep 50
00:00:20 #729 [verbose] > cts.Cancel ()
00:00:20 #730 [verbose] > return! child
00:00:20 #731 [verbose] > }
00:00:20 #732 [verbose] > |> Async.RunSynchronously
00:00:20 #733 [verbose] > |> Result.mapError _.Message
00:00:20 #734 [verbose] > |> _assertEqual (Error ("A task was canceled."))
00:00:20 #735 [verbose] >
00:00:20 #736 [verbose] > ╭─[ 204.99ms - stdout ]────────────────────────────────────────────────────────╮
00:00:20 #737 [verbose] > │ FSharpResult<Int32,String> │
00:00:20 #738 [verbose] > │ ResultValue: 0 │
00:00:20 #739 [verbose] > │ ErrorValue: A task was canceled. │
00:00:20 #740 [verbose] > │ │
00:00:20 #741 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:20 #742 [verbose] >
00:00:20 #743 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:20 #744 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:20 #745 [verbose] > │ ## withTraceLevel │
00:00:20 #746 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:20 #747 [verbose] >
00:00:20 #748 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:20 #749 [verbose] > let inline withTraceLevel level fn = async {
00:00:20 #750 [verbose] > let struct (_, _, _, level', _) = SpiralTrace.get_trace_state ()
00:00:20 #751 [verbose] > let oldTraceLevel = level'.l0
00:00:20 #752 [verbose] > try
00:00:20 #753 [verbose] > level'.l0 <- level |> to_trace_level
00:00:20 #754 [verbose] > return! fn
00:00:20 #755 [verbose] > finally
00:00:20 #756 [verbose] > level'.l0 <- oldTraceLevel
00:00:20 #757 [verbose] > }
00:00:22 #758 [verbose] > [NbConvertApp] Converting notebook Async.dib.ipynb to html
00:00:22 #759 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:00:22 #760 [verbose] > validate(nb)
00:00:23 #761 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:00:23 #762 [verbose] > return _pygments_highlight(
00:00:23 #763 [verbose] > [NbConvertApp] Writing 327258 bytes to Async.dib.html
00:00:24 #764 [debug] executeAsync / exitCode: 0 / output.Length: 27650
00:00:24 #765 [debug] main / executeCommand / exitCode: 0
00:00:24 #766 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 AsyncSeq.dib" -Retries 3"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:00:27 #767 [verbose] >
00:00:27 #768 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:27 #769 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:27 #770 [verbose] > │ # AsyncSeq (Polyglot) │
00:00:27 #771 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:27 #772 [verbose] >
00:00:27 #773 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:27 #774 [verbose] > #!import ../../lib/fsharp/Notebooks.dib
00:00:27 #775 [verbose] > #!import ../../lib/fsharp/Testing.dib
00:00:27 #776 [verbose] >
00:00:27 #777 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:27 #778 [verbose] > #r
00:00:27 #779 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:00:27 #780 [verbose] > spNetCore.Html.Abstractions.dll"
00:00:27 #781 [verbose] > #r
00:00:27 #782 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:27 #783 [verbose] > otNet.Interactive.dll"
00:00:27 #784 [verbose] > #r
00:00:27 #785 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:27 #786 [verbose] > otNet.Interactive.FSharp.dll"
00:00:27 #787 [verbose] > #r
00:00:27 #788 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:27 #789 [verbose] > otNet.Interactive.Formatting.dll"
00:00:27 #790 [verbose] > open System
00:00:27 #791 [verbose] > open System.IO
00:00:27 #792 [verbose] > open System.Text
00:00:27 #793 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:00:30 #794 [verbose] >
00:00:30 #795 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:30 #796 [verbose] > #r
00:00:30 #797 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:30 #798 [verbose] > otNet.Interactive.FSharp.dll"
00:00:30 #799 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:00:30 #800 [verbose] > #r
00:00:30 #801 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:30 #802 [verbose] > otNet.Interactive.dll"
00:00:30 #803 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:00:31 #804 [verbose] >
00:00:31 #805 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:31 #806 [verbose] > //// test
00:00:31 #807 [verbose] >
00:00:31 #808 [verbose] > Formatter.ListExpansionLimit <- 100
00:00:31 #809 [verbose] >
00:00:31 #810 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:31 #811 [verbose] > #r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
00:00:31 #812 [verbose] >
00:00:31 #813 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:31 #814 [verbose] > //// test
00:00:31 #815 [verbose] >
00:00:31 #816 [verbose] > type AssertExceptionFormatter (ex) =
00:00:31 #817 [verbose] > member _.Text =
00:00:31 #818 [verbose] > ex.ToString()
00:00:31 #819 [verbose] > .Replace("32m", "<span style=\"color: green;\">")
00:00:31 #820 [verbose] > .Replace("36m", "</span>")
00:00:31 #821 [verbose] > .Replace("31m", "<span style=\"color: red;\">")
00:00:31 #822 [verbose] > .Replace("\n", "<br/>\n")
00:00:31 #823 [verbose] >
00:00:31 #824 [verbose] >
00:00:31 #825 [verbose] > Formatter.Register<AssertExceptionFormatter> ((fun (x :
00:00:31 #826 [verbose] > AssertExceptionFormatter) -> x.Text), "text/html")
00:00:32 #827 [verbose] >
00:00:32 #828 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:32 #829 [verbose] > //// test
00:00:32 #830 [verbose] >
00:00:32 #831 [verbose] > let inline __expect fn log expected actual =
00:00:32 #832 [verbose] > if log then printfn $"{actual.ToDisplayString ()}"
00:00:32 #833 [verbose] > try
00:00:32 #834 [verbose] > "Testing.__expect" |> fn actual expected
00:00:32 #835 [verbose] > with :? Expecto.AssertException as ex ->
00:00:32 #836 [verbose] > AssertExceptionFormatter(ex).Display () |> ignore
00:00:32 #837 [verbose] > failwith (ex.GetType().FullName)
00:00:32 #838 [verbose] >
00:00:32 #839 [verbose] > let inline __contains log expected actual = __expect Expecto.Expect.contains log
00:00:32 #840 [verbose] > expected actual
00:00:32 #841 [verbose] > let inline _contains expected actual = __contains true expected actual
00:00:32 #842 [verbose] >
00:00:32 #843 [verbose] > let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
00:00:32 #844 [verbose] > expected actual
00:00:32 #845 [verbose] > let inline _assertEqual expected actual = __assertEqual true expected actual
00:00:32 #846 [verbose] >
00:00:32 #847 [verbose] > let inline __isGreaterThan log expected actual = __expect
00:00:32 #848 [verbose] > Expecto.Expect.isGreaterThan log ex...
00:00:32 #849 [verbose] >
00:00:32 #850 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:32 #851 [verbose] > //// test
00:00:32 #852 [verbose] >
00:00:32 #853 [verbose] > let inline __isBetween log a b actual =
00:00:32 #854 [verbose] > let inline isBetween actual (a, b) _ =
00:00:32 #855 [verbose] > __isGreaterThanOrEqual log a actual
00:00:32 #856 [verbose] > __isLessThanOrEqual log b actual
00:00:32 #857 [verbose] > __expect isBetween log (a, b) actual
00:00:32 #858 [verbose] > let inline _isBetween a b actual = __isBetween true a b actual
00:00:32 #859 [verbose] >
00:00:32 #860 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:32 #861 [verbose] > #r
00:00:32 #862 [verbose] > @"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan
00:00:32 #863 [verbose] > dard2.1/FSharp.Control.AsyncSeq.dll"
00:00:32 #864 [verbose] > #r
00:00:32 #865 [verbose] > @"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.
00:00:32 #866 [verbose] > 0/System.Reactive.dll"
00:00:32 #867 [verbose] > #r
00:00:32 #868 [verbose] > @"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib
00:00:32 #869 [verbose] > netstandard2.0/System.Reactive.Linq.dll"
00:00:32 #870 [verbose] >
00:00:32 #871 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:32 #872 [verbose] > #!import ../../lib/spiral/common.fsx
00:00:32 #873 [verbose] > #!import ../../lib/spiral/sm.fsx
00:00:32 #874 [verbose] > #!import ../../lib/spiral/date_time.fsx
00:00:32 #875 [verbose] > #!import ../../lib/spiral/file_system.fsx
00:00:32 #876 [verbose] > #!import ../../lib/spiral/trace.fsx
00:00:32 #877 [verbose] > #!import ../../lib/spiral/lib.fsx
00:00:32 #878 [verbose] > #!import ../../lib/fsharp/Common.fs
00:00:32 #879 [verbose] > #!import ../../lib/fsharp/Async.fs
00:00:32 #880 [verbose] >
00:00:32 #881 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:32 #882 [verbose] > type [[<Struct>]] US0 =
00:00:32 #883 [verbose] > | US0_0
00:00:32 #884 [verbose] > | US0_1
00:00:32 #885 [verbose] > and [[<Struct>]] US1 =
00:00:32 #886 [verbose] > | US1_0 of f0_0 : US0
00:00:32 #887 [verbose] > | US1_1
00:00:32 #888 [verbose] > let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
00:00:32 #889 [verbose] > let v1 : System.IDisposable option = None
00:00:32 #890 [verbose] > let mutable _v1 = v1
00:00:32 #891 [verbose] > #if FABLE_COMPILER_RUST && !WASM && !CONTRACT
00:00:32 #892 [verbose] > let v2 : System.IDisposable = null |> unbox<System.IDisposable>
00:00:32 #893 [verbose] > v2
00:00:32 #894 [verbose] > #endif
00:00:32 #895 [verbose] > #if FABLE_COMPILER_RUST && WASM
00:00:32 #896 [verbose] > let v3 : System.IDisposable = null |> unbox<System.IDisposable>
00:00:32 #897 [verbose] > v3
00:00:32 #898 [verbose] > #endif
00:00:32 #899 [verbose] > #if FABLE_COMPILER_RUST && CONTRACT
00:00:32 #900 [verbose] > let v4 : System.IDisposable = null |> unbox<System.IDisposable>
00:00:32 #901 [verbose] > v4
00:00:32 #902 [verbose] > #endif
00:00:32 #903 [verbose] > #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
00:00:32 #904 [verbose] > !WASM && !CONTRACT
00:00:32 #905 [verbose] > let v5 : System.ID...
00:00:33 #906 [verbose] >
00:00:33 #907 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:33 #908 [verbose] > type Mut0 = {mutable l0 : int32; mutable l1 : string}
00:00:33 #909 [verbose] > and Mut1 = {mutable l0 : int32}
00:00:33 #910 [verbose] > let rec closure1 (v0 : string) (v1 : string) : bool =
00:00:33 #911 [verbose] > let v2 : bool = v1.Contains v0
00:00:33 #912 [verbose] > v2
00:00:33 #913 [verbose] > and closure0 () (v0 : string) : (string -> bool) =
00:00:33 #914 [verbose] > closure1(v0)
00:00:33 #915 [verbose] > and closure3 (v0 : string) (v1 : string) : bool =
00:00:33 #916 [verbose] > let v2 : bool = v1.EndsWith v0
00:00:33 #917 [verbose] > v2
00:00:33 #918 [verbose] > and closure2 () (v0 : string) : (string -> bool) =
00:00:33 #919 [verbose] > closure3(v0)
00:00:33 #920 [verbose] > and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
00:00:33 #921 [verbose] > let v3 : string = v2.PadLeft (v0, v1)
00:00:33 #922 [verbose] > v3
00:00:33 #923 [verbose] > and closure5 (v0 : int32) (v1 : char) : (string -> string) =
00:00:33 #924 [verbose] > closure6(v0, v1)
00:00:33 #925 [verbose] > and closure4 () (v0 : int32) : (char -> (string -> string)) =
00:00:33 #926 [verbose] > closure5(v0)
00:00:33 #927 [verbose] > and closure8 (v0 : int32) (v1 : string) : string =
00:00:33 #928 [verbose] > let v2 : stri...
00:00:34 #929 [verbose] >
00:00:34 #930 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:34 #931 [verbose] > let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
00:00:34 #932 [verbose] > let v2 : (System.Guid -> string) = _.ToString()
00:00:34 #933 [verbose] > let v3 : string = v2 v0
00:00:34 #934 [verbose] > let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
00:00:34 #935 [verbose] > let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
00:00:34 #936 [verbose] > v5
00:00:34 #937 [verbose] > and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
00:00:34 #938 [verbose] > closure1(v0)
00:00:34 #939 [verbose] > and closure5 (v0 : string, v1 : string) (v2 : string) : string =
00:00:34 #940 [verbose] > let v3 : string = v2.Replace (v0, v1)
00:00:34 #941 [verbose] > v3
00:00:34 #942 [verbose] > and closure4 (v0 : string) (v1 : string) : (string -> string) =
00:00:34 #943 [verbose] > closure5(v0, v1)
00:00:34 #944 [verbose] > and closure3 () (v0 : string) : (string -> (string -> string)) =
00:00:34 #945 [verbose] > closure4(v0)
00:00:34 #946 [verbose] > and method0 () : (string -> (string -> (string -> string))) =
00:00:34 #947 [verbose] > closure3()
00:00:34 #948 [verbose] > and closure2 (...
00:00:34 #949 [verbose] >
00:00:34 #950 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:34 #951 [verbose] > #if FABLE_COMPILER // file_system.types
00:00:34 #952 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
00:00:34 #953 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
00:00:34 #954 [verbose] > base64_DecodeError = class end
00:00:34 #955 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
00:00:34 #956 [verbose] > = class end
00:00:34 #957 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
00:00:34 #958 [verbose] > = class end
00:00:34 #959 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
00:00:34 #960 [verbose] > serde_json_Error = class end
00:00:34 #961 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
00:00:34 #962 [verbose] > serde_json_Value = class end
00:00:34 #963 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
00:00:34 #964 [verbose] > serde_wasm_bindgen_Error = class end
00:00:34 #965 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
00:00:36 #966 [verbose] >
00:00:36 #967 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:36 #968 [verbose] > module State = let mutable trace_state = None
00:00:36 #969 [verbose] > type [[<Struct>]] US0 =
00:00:36 #970 [verbose] > | US0_0
00:00:36 #971 [verbose] > | US0_1
00:00:36 #972 [verbose] > | US0_2
00:00:36 #973 [verbose] > | US0_3
00:00:36 #974 [verbose] > | US0_4
00:00:36 #975 [verbose] > and Mut0 = {mutable l0 : int64}
00:00:36 #976 [verbose] > and Mut1 = {mutable l0 : bool}
00:00:36 #977 [verbose] > and Mut2 = {mutable l0 : US0}
00:00:36 #978 [verbose] > and [[<Struct>]] US1 =
00:00:36 #979 [verbose] > | US1_0 of f0_0 : int64
00:00:36 #980 [verbose] > | US1_1
00:00:36 #981 [verbose] > and [[<Struct>]] US2 =
00:00:36 #982 [verbose] > | US2_0 of f0_0 : int64
00:00:36 #983 [verbose] > | US2_1
00:00:36 #984 [verbose] > let rec method1 (v0 : int64 option) : int64 option =
00:00:36 #985 [verbose] > v0
00:00:36 #986 [verbose] > and method2 (v0 : int64 option) : int64 option =
00:00:36 #987 [verbose] > v0
00:00:36 #988 [verbose] > and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
00:00:36 #989 [verbose] > let v0 : Mut1 = {l0 = true} : Mut1
00:00:36 #990 [verbose] > let v1 : Mut0 = {l0 = 0L} : Mut0
00:00:36 #991 [verbose] > let v2 : US0 = US0_0
00:00:36 #992 [verbose] > let v3 : Mut2 = {l0 = v2} : Mut2
00:00:36 #993 [verbose] > let v4 : Mut1 = {l0 = false} : Mut1
00:00:36 #994 [verbose] > let v5 : int64 option option = None
00:00:36 #995 [verbose] > ...
00:00:36 #996 [verbose] >
00:00:36 #997 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:36 #998 [verbose] > module SpiralTrace =
00:00:36 #999 [verbose] > let get_trace_state () =
00:00:36 #1000 [verbose] > #if !INTERACTIVE
00:00:36 #1001 [verbose] > Trace.get_trace_state ()
00:00:36 #1002 [verbose] > #else
00:00:36 #1003 [verbose] > get_trace_state ()
00:00:36 #1004 [verbose] > #endif
00:00:36 #1005 [verbose] > let trace x =
00:00:36 #1006 [verbose] > #if !INTERACTIVE
00:00:36 #1007 [verbose] > Trace.trace x
00:00:36 #1008 [verbose] > #else
00:00:36 #1009 [verbose] > trace x
00:00:36 #1010 [verbose] > #endif
00:00:36 #1011 [verbose] >
00:00:36 #1012 [verbose] > let US0_0 =
00:00:36 #1013 [verbose] > #if !INTERACTIVE
00:00:36 #1014 [verbose] > Trace.US0_0
00:00:36 #1015 [verbose] > #else
00:00:36 #1016 [verbose] > US0_0
00:00:36 #1017 [verbose] > #endif
00:00:36 #1018 [verbose] >
00:00:36 #1019 [verbose] > let US0_1 =
00:00:36 #1020 [verbose] > #if !INTERACTIVE
00:00:36 #1021 [verbose] > Trace.US0_1
00:00:36 #1022 [verbose] > #else
00:00:36 #1023 [verbose] > US0_1
00:00:36 #1024 [verbose] > #endif
00:00:36 #1025 [verbose] >
00:00:36 #1026 [verbose] > let US0_2 =
00:00:36 #1027 [verbose] > #if !INTERACTIVE
00:00:36 #1028 [verbose] > Trace.US0_2
00:00:36 #1029 [verbose] > #else
00:00:36 #1030 [verbose] > US0_2
00:00:36 #1031 [verbose] > #endif
00:00:36 #1032 [verbose] >
00:00:36 #1033 [verbose] > let US0_3 =
00:00:36 #1034 [verbose] > #if !INTERACTIVE
00:00:36 #1035 [verbose] > Trace.US0_3
00:00:36 #1036 [verbose] > #else
00:00:36 #1037 [verbose] > US0_3
00:00:36 #1038 [verbose] > #endif
00:00:36 #1039 [verbose] >
00:00:36 #1040 [verbose] > let US0_4 =
00:00:36 #1041 [verbose] > #if !INTERACTIVE
00:00:36 #1042 [verbose] > Trace.US0_4
00:00:36 #1043 [verbose] > #else
00:00:36 #1044 [verbose] > US0_4
00:00:36 #1045 [verbose] > #endif
00:00:36 #1046 [verbose] >
00:00:36 #1047 [verbose] >
00:00:36 #1048 [verbose] > #if !FABLE_COMPILER && !WASM && !CONTRACT
00:00:36 #1049 [verbose] > module SpiralDateTime =
00:00:36 #1050 [verbose] > let format x =
00:00:36 #1051 [verbose] > #if !INTERACTIVE
00:00:36 #1052 [verbose] > Date_ti...
00:00:36 #1053 [verbose] >
00:00:36 #1054 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:36 #1055 [verbose] > #if !INTERACTIVE
00:00:36 #1056 [verbose] > namespace Polyglot
00:00:36 #1057 [verbose] > #endif
00:00:36 #1058 [verbose] >
00:00:36 #1059 [verbose] > module Common =
00:00:36 #1060 [verbose] >
00:00:36 #1061 [verbose] > #if !INTERACTIVE
00:00:36 #1062 [verbose] > open Lib
00:00:36 #1063 [verbose] > #endif
00:00:36 #1064 [verbose] >
00:00:36 #1065 [verbose] > let nl = System.Environment.NewLine
00:00:36 #1066 [verbose] > let q = @""""
00:00:36 #1067 [verbose] >
00:00:36 #1068 [verbose] > let inline cons head tail = head :: tail
00:00:36 #1069 [verbose] >
00:00:36 #1070 [verbose] > /// ## memoize
00:00:36 #1071 [verbose] >
00:00:36 #1072 [verbose] > let inline memoize fn =
00:00:36 #1073 [verbose] > let result = lazy fn ()
00:00:36 #1074 [verbose] > fun () -> result.Value
00:00:36 #1075 [verbose] >
00:00:36 #1076 [verbose] > /// ## TraceLevel
00:00:36 #1077 [verbose] >
00:00:36 #1078 [verbose] > type TraceLevel =
00:00:36 #1079 [verbose] > | Verbose
00:00:36 #1080 [verbose] > | Debug
00:00:36 #1081 [verbose] > | Info
00:00:36 #1082 [verbose] > | Warning
00:00:36 #1083 [verbose] > | Critical
00:00:36 #1084 [verbose] >
00:00:36 #1085 [verbose] > let inline getLocals () = ""
00:00:36 #1086 [verbose] >
00:00:36 #1087 [verbose] > /// ## trace
00:00:36 #1088 [verbose] >
00:00:36 #1089 [verbose] > let to_trace_level = function
00:00:36 #1090 [verbose] > | Verbose -> SpiralTrace.US0_0
00:00:36 #1091 [verbose] > | Debug -> SpiralTrace.US0_1
00:00:36 #1092 [verbose] > | Info -> SpiralTrace.US0_2
00:00:36 #1093 [verbose] > | Warning -> SpiralTrace.US0_3
00:00:36 #1094 [verbose] > | Critical -> SpiralTrace.US0_4
00:00:36 #1095 [verbose] >
00:00:36 #1096 [verbose] > let trace level fn g...
00:00:36 #1097 [verbose] >
00:00:36 #1098 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:36 #1099 [verbose] > #if !INTERACTIVE
00:00:36 #1100 [verbose] > namespace Polyglot
00:00:36 #1101 [verbose] > #endif
00:00:36 #1102 [verbose] >
00:00:36 #1103 [verbose] > module Async =
00:00:36 #1104 [verbose] >
00:00:36 #1105 [verbose] > #if !INTERACTIVE
00:00:36 #1106 [verbose] > open Lib
00:00:36 #1107 [verbose] > #endif
00:00:36 #1108 [verbose] >
00:00:36 #1109 [verbose] > open Common
00:00:36 #1110 [verbose] >
00:00:36 #1111 [verbose] > /// ## choice
00:00:36 #1112 [verbose] >
00:00:36 #1113 [verbose] > let inline choice asyncs = async {
00:00:36 #1114 [verbose] > let e = Event<_> ()
00:00:36 #1115 [verbose] > use cts = new System.Threading.CancellationTokenSource ()
00:00:36 #1116 [verbose] > let fn =
00:00:36 #1117 [verbose] > asyncs
00:00:36 #1118 [verbose] > |> Seq.map (fun a -> async {
00:00:36 #1119 [verbose] > let! x = a
00:00:36 #1120 [verbose] > e.Trigger x
00:00:36 #1121 [verbose] > })
00:00:36 #1122 [verbose] > |> Async.Parallel
00:00:36 #1123 [verbose] > |> Async.Ignore
00:00:36 #1124 [verbose] > Async.Start (fn, cts.Token)
00:00:36 #1125 [verbose] > let! result = Async.AwaitEvent e.Publish
00:00:36 #1126 [verbose] > cts.Cancel ()
00:00:36 #1127 [verbose] > return result
00:00:36 #1128 [verbose] > }
00:00:36 #1129 [verbose] >
00:00:36 #1130 [verbose] > /// ## map
00:00:36 #1131 [verbose] >
00:00:36 #1132 [verbose] > let inline map fn a = async {
00:00:36 #1133 [verbose] > let! x = a
00:00:36 #1134 [verbose] > return fn x
00:00:36 #1135 [verbose] > }
00:00:36 #1136 [verbose] >
00:00:36 #1137 [verbose] > /// ## catch
00:00:36 #1138 [verbose] >
00:00:36 #1139 [verbose] > let inline catch a =
00:00:36 #1140 [verbose] > ...
00:00:37 #1141 [verbose] >
00:00:37 #1142 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:37 #1143 [verbose] > #if !INTERACTIVE
00:00:37 #1144 [verbose] > open Lib
00:00:37 #1145 [verbose] > #endif
00:00:37 #1146 [verbose] >
00:00:37 #1147 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:37 #1148 [verbose] > open Common
00:00:37 #1149 [verbose] >
00:00:37 #1150 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:37 #1151 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:37 #1152 [verbose] > │ ## subscribeEvent │
00:00:37 #1153 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:37 #1154 [verbose] >
00:00:37 #1155 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:37 #1156 [verbose] > let inline subscribeEvent (event: IEvent<'H, 'A>) map =
00:00:37 #1157 [verbose] > let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,
00:00:37 #1158 [verbose] > 'A>(event.AddHandler, event.RemoveHandler)
00:00:37 #1159 [verbose] > System.Reactive.Linq.Observable.Select (observable, fun event -> map
00:00:37 #1160 [verbose] > event.EventArgs)
00:00:37 #1161 [verbose] > |> FSharp.Control.AsyncSeq.ofObservableBuffered
00:00:37 #1162 [verbose] >
00:00:37 #1163 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:37 #1164 [verbose] > //// test
00:00:37 #1165 [verbose] >
00:00:37 #1166 [verbose] > type TestEvent () as self =
00:00:37 #1167 [verbose] > member val Calls = [[]] with get, set
00:00:37 #1168 [verbose] > member val Event = Event<ErrorEventHandler, ErrorEventArgs> () with get
00:00:37 #1169 [verbose] >
00:00:37 #1170 [verbose] > member _.AddCall text =
00:00:37 #1171 [verbose] > self.Calls <- self.Calls @ [[ text ]]
00:00:37 #1172 [verbose] >
00:00:37 #1173 [verbose] > member _.EventInterface =
00:00:37 #1174 [verbose] > { new IEvent<ErrorEventHandler, ErrorEventArgs> with
00:00:37 #1175 [verbose] > member _.AddHandler handler =
00:00:37 #1176 [verbose] > self.AddCall "AddHandler"
00:00:37 #1177 [verbose] > self.Event.Publish.AddHandler handler
00:00:37 #1178 [verbose] >
00:00:37 #1179 [verbose] > member _.RemoveHandler handler =
00:00:37 #1180 [verbose] > self.AddCall "RemoveHandler"
00:00:37 #1181 [verbose] > self.Event.Publish.RemoveHandler handler
00:00:37 #1182 [verbose] >
00:00:37 #1183 [verbose] > member _.Subscribe observer =
00:00:37 #1184 [verbose] > self.AddCall "IObservable.Subscribe"
00:00:37 #1185 [verbose] > let disposable = self.Event.Publish.Subscribe observer
00:00:37 #1186 [verbose] > new_disposable (fun () ->
00:00:37 #1187 [verbose] > self.AddCall "IObservable.Dispose"
00:00:37 #1188 [verbose] > disposable.Dispose ()
00:00:37 #1189 [verbose] > )
00:00:37 #1190 [verbose] > }
00:00:37 #1191 [verbose] >
00:00:37 #1192 [verbose] > member _.Subscribe () =
00:00:37 #1193 [verbose] > subscribeEvent
00:00:37 #1194 [verbose] > self.EventInterface
00:00:37 #1195 [verbose] > (fun args ->
00:00:37 #1196 [verbose] > let result = args.GetException () |> SpiralSm.format_exception
00:00:37 #1197 [verbose] > self.AddCall $"TestEvent.Subscribe({result})"
00:00:37 #1198 [verbose] > result
00:00:37 #1199 [verbose] > )
00:00:37 #1200 [verbose] >
00:00:37 #1201 [verbose] > member _.Iter subscription =
00:00:37 #1202 [verbose] > subscription
00:00:37 #1203 [verbose] > |> FSharp.Control.AsyncSeq.iteriAsync (fun i error -> async {
00:00:37 #1204 [verbose] > self.AddCall $"TestEvent.Iter({i}: {error})"
00:00:37 #1205 [verbose] > })
00:00:37 #1206 [verbose] >
00:00:37 #1207 [verbose] > member _.WaitCall text = async {
00:00:37 #1208 [verbose] > while self.Calls |> List.last <> text do
00:00:37 #1209 [verbose] > do! Async.SwitchToThreadPool ()
00:00:37 #1210 [verbose] > }
00:00:37 #1211 [verbose] >
00:00:37 #1212 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:37 #1213 [verbose] > //// test
00:00:37 #1214 [verbose] >
00:00:37 #1215 [verbose] > let testEvent = TestEvent ()
00:00:37 #1216 [verbose] >
00:00:37 #1217 [verbose] > async {
00:00:37 #1218 [verbose] > testEvent.AddCall "1"
00:00:37 #1219 [verbose] > let! child = testEvent.Subscribe () |> testEvent.Iter |> Async.StartChild
00:00:37 #1220 [verbose] > do! testEvent.WaitCall "AddHandler"
00:00:37 #1221 [verbose] > testEvent.AddCall "2"
00:00:37 #1222 [verbose] > do! child
00:00:37 #1223 [verbose] > testEvent.AddCall "3"
00:00:37 #1224 [verbose] > }
00:00:37 #1225 [verbose] > |> Async.runWithTimeout 300
00:00:37 #1226 [verbose] > |> _assertEqual None
00:00:37 #1227 [verbose] >
00:00:37 #1228 [verbose] > testEvent.Calls
00:00:37 #1229 [verbose] > |> Seq.toList
00:00:37 #1230 [verbose] > |> _assertEqual [[ "1"; "AddHandler"; "2"; "RemoveHandler" ]]
00:00:38 #1231 [verbose] >
00:00:38 #1232 [verbose] > ╭─[ 500.46ms - stdout ]────────────────────────────────────────────────────────╮
00:00:38 #1233 [verbose] > │ 00:00:00 #1 [debug] runWithTimeoutChildAsync / timeout: 300 │
00:00:38 #1234 [verbose] > │ <null> │
00:00:38 #1235 [verbose] > │ [ 1, AddHandler, 2, RemoveHandler ] │
00:00:38 #1236 [verbose] > │ │
00:00:38 #1237 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:38 #1238 [verbose] >
00:00:38 #1239 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:38 #1240 [verbose] > //// test
00:00:38 #1241 [verbose] >
00:00:38 #1242 [verbose] > let testEvent = TestEvent ()
00:00:38 #1243 [verbose] >
00:00:38 #1244 [verbose] > async {
00:00:38 #1245 [verbose] > testEvent.AddCall "1"
00:00:38 #1246 [verbose] > let! child = testEvent.Subscribe () |> testEvent.Iter |> Async.StartChild
00:00:38 #1247 [verbose] > do! testEvent.WaitCall "AddHandler"
00:00:38 #1248 [verbose] > testEvent.AddCall "2"
00:00:38 #1249 [verbose] > use _ = testEvent.EventInterface.Subscribe (fun args ->
00:00:38 #1250 [verbose] > testEvent.AddCall $"testEvent.EventInterface.Subscribe({args})"
00:00:38 #1251 [verbose] > )
00:00:38 #1252 [verbose] > testEvent.AddCall "3"
00:00:38 #1253 [verbose] > do! child
00:00:38 #1254 [verbose] > testEvent.AddCall "4"
00:00:38 #1255 [verbose] > }
00:00:38 #1256 [verbose] > |> Async.runWithTimeout 300
00:00:38 #1257 [verbose] > |> _assertEqual None
00:00:38 #1258 [verbose] >
00:00:38 #1259 [verbose] > testEvent.Calls
00:00:38 #1260 [verbose] > |> _assertEqual [[ "1"; "AddHandler"; "2"; "IObservable.Subscribe"; "3";
00:00:38 #1261 [verbose] > "RemoveHandler"; "IObservable.Dispose" ]]
00:00:38 #1262 [verbose] >
00:00:38 #1263 [verbose] > ╭─[ 438.38ms - stdout ]────────────────────────────────────────────────────────╮
00:00:38 #1264 [verbose] > │ 00:00:00 #2 [debug] runWithTimeoutChildAsync / timeout: 300 │
00:00:38 #1265 [verbose] > │ <null> │
00:00:38 #1266 [verbose] > │ [ 1, AddHandler, 2, IObservable.Subscribe, 3, RemoveHandler, │
00:00:38 #1267 [verbose] > │ IObservable.Dispose ] │
00:00:38 #1268 [verbose] > │ │
00:00:38 #1269 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:38 #1270 [verbose] >
00:00:38 #1271 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:38 #1272 [verbose] > //// test
00:00:38 #1273 [verbose] >
00:00:38 #1274 [verbose] > let testEvent = TestEvent ()
00:00:38 #1275 [verbose] >
00:00:38 #1276 [verbose] > async {
00:00:38 #1277 [verbose] > testEvent.AddCall "1"
00:00:38 #1278 [verbose] > let! child = testEvent.Subscribe () |> testEvent.Iter |> Async.StartChild
00:00:38 #1279 [verbose] > do! testEvent.WaitCall "AddHandler"
00:00:38 #1280 [verbose] > testEvent.AddCall "2"
00:00:38 #1281 [verbose] > use _ = testEvent.EventInterface.Subscribe (fun args ->
00:00:38 #1282 [verbose] > async {
00:00:38 #1283 [verbose] > do! testEvent.WaitCall "TestEvent.Iter(0: System.Exception: error)"
00:00:38 #1284 [verbose] > testEvent.AddCall
00:00:38 #1285 [verbose] > $"testEvent.EventInterface.Subscribe({args.GetException () |>
00:00:38 #1286 [verbose] > SpiralSm.format_exception})"
00:00:38 #1287 [verbose] > }
00:00:38 #1288 [verbose] > |> Async.RunSynchronously
00:00:38 #1289 [verbose] > )
00:00:38 #1290 [verbose] > testEvent.AddCall "3"
00:00:38 #1291 [verbose] > testEvent.Event.Trigger (null, ErrorEventArgs (Exception "error"))
00:00:38 #1292 [verbose] > testEvent.AddCall "4"
00:00:38 #1293 [verbose] > do! child
00:00:38 #1294 [verbose] > testEvent.AddCall "5"
00:00:38 #1295 [verbose] > }
00:00:38 #1296 [verbose] > |> Async.runWithTimeout 300
00:00:38 #1297 [verbose] > |> _assertEqual None
00:00:38 #1298 [verbose] >
00:00:38 #1299 [verbose] > testEvent.Calls
00:00:38 #1300 [verbose] > |> _assertEqual [[
00:00:38 #1301 [verbose] > "1"
00:00:38 #1302 [verbose] > "AddHandler"
00:00:38 #1303 [verbose] > "2"
00:00:38 #1304 [verbose] > "IObservable.Subscribe"
00:00:38 #1305 [verbose] > "3"
00:00:38 #1306 [verbose] > "TestEvent.Subscribe(System.Exception: error)"
00:00:38 #1307 [verbose] > "TestEvent.Iter(0: System.Exception: error)"
00:00:38 #1308 [verbose] > "testEvent.EventInterface.Subscribe(System.Exception: error)"
00:00:38 #1309 [verbose] > "4"
00:00:38 #1310 [verbose] > "RemoveHandler"
00:00:38 #1311 [verbose] > "IObservable.Dispose"
00:00:38 #1312 [verbose] > ]]
00:00:39 #1313 [verbose] >
00:00:39 #1314 [verbose] > ╭─[ 469.15ms - stdout ]────────────────────────────────────────────────────────╮
00:00:39 #1315 [verbose] > │ 00:00:00 #3 [debug] runWithTimeoutChildAsync / timeout: 300 │
00:00:39 #1316 [verbose] > │ <null> │
00:00:39 #1317 [verbose] > │ [ 1, AddHandler, 2, IObservable.Subscribe, 3, │
00:00:39 #1318 [verbose] > │ TestEvent.Subscribe(System.Exception: error), TestEvent.Iter(0: │
00:00:39 #1319 [verbose] > │ System.Exception: error), │
00:00:39 #1320 [verbose] > │ testEvent.EventInterface.Subscribe(System.Exception: error), 4, │
00:00:39 #1321 [verbose] > │ RemoveHandler, IObservable.Dispose ] │
00:00:39 #1322 [verbose] > │ │
00:00:39 #1323 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:39 #1324 [verbose] >
00:00:39 #1325 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:39 #1326 [verbose] > let subscribeToken (token : System.Threading.CancellationToken) =
00:00:39 #1327 [verbose] > let tcs = new System.Threading.Tasks.TaskCompletionSource ()
00:00:39 #1328 [verbose] > System.Action tcs.SetResult |> token.Register |> ignore
00:00:39 #1329 [verbose] > let start = System.DateTime.Now.Ticks
00:00:39 #1330 [verbose] > FSharp.Control.AsyncSeq.unfoldAsync
00:00:39 #1331 [verbose] > (fun () -> async {
00:00:39 #1332 [verbose] > do! tcs.Task |> Async.AwaitTask
00:00:39 #1333 [verbose] > return Some (System.DateTime.Now.Ticks - start, ())
00:00:39 #1334 [verbose] > })
00:00:39 #1335 [verbose] > ()
00:00:39 #1336 [verbose] >
00:00:39 #1337 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:39 #1338 [verbose] > //// test
00:00:39 #1339 [verbose] >
00:00:39 #1340 [verbose] > let cts = new System.Threading.CancellationTokenSource ()
00:00:39 #1341 [verbose] >
00:00:39 #1342 [verbose] > async {
00:00:39 #1343 [verbose] > let! child =
00:00:39 #1344 [verbose] > cts.Token
00:00:39 #1345 [verbose] > |> subscribeToken
00:00:39 #1346 [verbose] > |> FSharp.Control.AsyncSeq.tryFirst
00:00:39 #1347 [verbose] > |> Async.StartChild
00:00:39 #1348 [verbose] >
00:00:39 #1349 [verbose] > do! Async.Sleep 100
00:00:39 #1350 [verbose] > cts.Cancel ()
00:00:39 #1351 [verbose] > return! child
00:00:39 #1352 [verbose] > }
00:00:39 #1353 [verbose] > |> Async.RunSynchronously
00:00:39 #1354 [verbose] > |> Option.get
00:00:39 #1355 [verbose] > |> _isGreaterThan 900000
00:00:39 #1356 [verbose] >
00:00:39 #1357 [verbose] > ╭─[ 192.77ms - stdout ]────────────────────────────────────────────────────────╮
00:00:39 #1358 [verbose] > │ 1162556 │
00:00:39 #1359 [verbose] > │ │
00:00:39 #1360 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:41 #1361 [verbose] > [NbConvertApp] Converting notebook AsyncSeq.dib.ipynb to html
00:00:41 #1362 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:00:41 #1363 [verbose] > validate(nb)
00:00:42 #1364 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:00:42 #1365 [verbose] > return _pygments_highlight(
00:00:42 #1366 [verbose] > [NbConvertApp] Writing 302617 bytes to AsyncSeq.dib.html
00:00:43 #1367 [debug] executeAsync / exitCode: 0 / output.Length: 19837
00:00:43 #1368 [debug] main / executeCommand / exitCode: 0
00:00:43 #1369 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 Common.dib" -Retries 3"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:00:45 #1370 [verbose] >
00:00:45 #1371 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:45 #1372 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:45 #1373 [verbose] > │ # Common (Polyglot) │
00:00:45 #1374 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:45 #1375 [verbose] >
00:00:45 #1376 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:45 #1377 [verbose] > #!import ../../lib/fsharp/Notebooks.dib
00:00:45 #1378 [verbose] > #!import ../../lib/fsharp/Testing.dib
00:00:45 #1379 [verbose] >
00:00:45 #1380 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:45 #1381 [verbose] > #r
00:00:45 #1382 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:00:45 #1383 [verbose] > spNetCore.Html.Abstractions.dll"
00:00:45 #1384 [verbose] > #r
00:00:45 #1385 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:45 #1386 [verbose] > otNet.Interactive.dll"
00:00:45 #1387 [verbose] > #r
00:00:45 #1388 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:45 #1389 [verbose] > otNet.Interactive.FSharp.dll"
00:00:45 #1390 [verbose] > #r
00:00:45 #1391 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:45 #1392 [verbose] > otNet.Interactive.Formatting.dll"
00:00:45 #1393 [verbose] > open System
00:00:45 #1394 [verbose] > open System.IO
00:00:45 #1395 [verbose] > open System.Text
00:00:45 #1396 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:00:49 #1397 [verbose] >
00:00:49 #1398 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:49 #1399 [verbose] > #r
00:00:49 #1400 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:49 #1401 [verbose] > otNet.Interactive.FSharp.dll"
00:00:49 #1402 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:00:49 #1403 [verbose] > #r
00:00:49 #1404 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:49 #1405 [verbose] > otNet.Interactive.dll"
00:00:49 #1406 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:00:49 #1407 [verbose] >
00:00:49 #1408 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:49 #1409 [verbose] > //// test
00:00:49 #1410 [verbose] >
00:00:49 #1411 [verbose] > Formatter.ListExpansionLimit <- 100
00:00:50 #1412 [verbose] >
00:00:50 #1413 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:50 #1414 [verbose] > #r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
00:00:50 #1415 [verbose] >
00:00:50 #1416 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:50 #1417 [verbose] > //// test
00:00:50 #1418 [verbose] >
00:00:50 #1419 [verbose] > type AssertExceptionFormatter (ex) =
00:00:50 #1420 [verbose] > member _.Text =
00:00:50 #1421 [verbose] > ex.ToString()
00:00:50 #1422 [verbose] > .Replace("32m", "<span style=\"color: green;\">")
00:00:50 #1423 [verbose] > .Replace("36m", "</span>")
00:00:50 #1424 [verbose] > .Replace("31m", "<span style=\"color: red;\">")
00:00:50 #1425 [verbose] > .Replace("\n", "<br/>\n")
00:00:50 #1426 [verbose] >
00:00:50 #1427 [verbose] >
00:00:50 #1428 [verbose] > Formatter.Register<AssertExceptionFormatter> ((fun (x :
00:00:50 #1429 [verbose] > AssertExceptionFormatter) -> x.Text), "text/html")
00:00:50 #1430 [verbose] >
00:00:50 #1431 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:50 #1432 [verbose] > //// test
00:00:50 #1433 [verbose] >
00:00:50 #1434 [verbose] > let inline __expect fn log expected actual =
00:00:50 #1435 [verbose] > if log then printfn $"{actual.ToDisplayString ()}"
00:00:50 #1436 [verbose] > try
00:00:50 #1437 [verbose] > "Testing.__expect" |> fn actual expected
00:00:50 #1438 [verbose] > with :? Expecto.AssertException as ex ->
00:00:50 #1439 [verbose] > AssertExceptionFormatter(ex).Display () |> ignore
00:00:50 #1440 [verbose] > failwith (ex.GetType().FullName)
00:00:50 #1441 [verbose] >
00:00:50 #1442 [verbose] > let inline __contains log expected actual = __expect Expecto.Expect.contains log
00:00:50 #1443 [verbose] > expected actual
00:00:50 #1444 [verbose] > let inline _contains expected actual = __contains true expected actual
00:00:50 #1445 [verbose] >
00:00:50 #1446 [verbose] > let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
00:00:50 #1447 [verbose] > expected actual
00:00:50 #1448 [verbose] > let inline _assertEqual expected actual = __assertEqual true expected actual
00:00:50 #1449 [verbose] >
00:00:50 #1450 [verbose] > let inline __isGreaterThan log expected actual = __expect
00:00:50 #1451 [verbose] > Expecto.Expect.isGreaterThan log ex...
00:00:51 #1452 [verbose] >
00:00:51 #1453 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:51 #1454 [verbose] > //// test
00:00:51 #1455 [verbose] >
00:00:51 #1456 [verbose] > let inline __isBetween log a b actual =
00:00:51 #1457 [verbose] > let inline isBetween actual (a, b) _ =
00:00:51 #1458 [verbose] > __isGreaterThanOrEqual log a actual
00:00:51 #1459 [verbose] > __isLessThanOrEqual log b actual
00:00:51 #1460 [verbose] > __expect isBetween log (a, b) actual
00:00:51 #1461 [verbose] > let inline _isBetween a b actual = __isBetween true a b actual
00:00:51 #1462 [verbose] >
00:00:51 #1463 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:51 #1464 [verbose] > #!import ../../lib/spiral/common.fsx
00:00:51 #1465 [verbose] > #!import ../../lib/spiral/sm.fsx
00:00:51 #1466 [verbose] > #!import ../../lib/spiral/date_time.fsx
00:00:51 #1467 [verbose] > #!import ../../lib/spiral/file_system.fsx
00:00:51 #1468 [verbose] > #!import ../../lib/spiral/trace.fsx
00:00:51 #1469 [verbose] > #!import ../../lib/spiral/lib.fsx
00:00:51 #1470 [verbose] >
00:00:51 #1471 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:51 #1472 [verbose] > type [[<Struct>]] US0 =
00:00:51 #1473 [verbose] > | US0_0
00:00:51 #1474 [verbose] > | US0_1
00:00:51 #1475 [verbose] > and [[<Struct>]] US1 =
00:00:51 #1476 [verbose] > | US1_0 of f0_0 : US0
00:00:51 #1477 [verbose] > | US1_1
00:00:51 #1478 [verbose] > let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
00:00:51 #1479 [verbose] > let v1 : System.IDisposable option = None
00:00:51 #1480 [verbose] > let mutable _v1 = v1
00:00:51 #1481 [verbose] > #if FABLE_COMPILER_RUST && !WASM && !CONTRACT
00:00:51 #1482 [verbose] > let v2 : System.IDisposable = null |> unbox<System.IDisposable>
00:00:51 #1483 [verbose] > v2
00:00:51 #1484 [verbose] > #endif
00:00:51 #1485 [verbose] > #if FABLE_COMPILER_RUST && WASM
00:00:51 #1486 [verbose] > let v3 : System.IDisposable = null |> unbox<System.IDisposable>
00:00:51 #1487 [verbose] > v3
00:00:51 #1488 [verbose] > #endif
00:00:51 #1489 [verbose] > #if FABLE_COMPILER_RUST && CONTRACT
00:00:51 #1490 [verbose] > let v4 : System.IDisposable = null |> unbox<System.IDisposable>
00:00:51 #1491 [verbose] > v4
00:00:51 #1492 [verbose] > #endif
00:00:51 #1493 [verbose] > #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
00:00:51 #1494 [verbose] > !WASM && !CONTRACT
00:00:51 #1495 [verbose] > let v5 : System.ID...
00:00:51 #1496 [verbose] >
00:00:51 #1497 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:51 #1498 [verbose] > type Mut0 = {mutable l0 : int32; mutable l1 : string}
00:00:51 #1499 [verbose] > and Mut1 = {mutable l0 : int32}
00:00:51 #1500 [verbose] > let rec closure1 (v0 : string) (v1 : string) : bool =
00:00:51 #1501 [verbose] > let v2 : bool = v1.Contains v0
00:00:51 #1502 [verbose] > v2
00:00:51 #1503 [verbose] > and closure0 () (v0 : string) : (string -> bool) =
00:00:51 #1504 [verbose] > closure1(v0)
00:00:51 #1505 [verbose] > and closure3 (v0 : string) (v1 : string) : bool =
00:00:51 #1506 [verbose] > let v2 : bool = v1.EndsWith v0
00:00:51 #1507 [verbose] > v2
00:00:51 #1508 [verbose] > and closure2 () (v0 : string) : (string -> bool) =
00:00:51 #1509 [verbose] > closure3(v0)
00:00:51 #1510 [verbose] > and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
00:00:51 #1511 [verbose] > let v3 : string = v2.PadLeft (v0, v1)
00:00:51 #1512 [verbose] > v3
00:00:51 #1513 [verbose] > and closure5 (v0 : int32) (v1 : char) : (string -> string) =
00:00:51 #1514 [verbose] > closure6(v0, v1)
00:00:51 #1515 [verbose] > and closure4 () (v0 : int32) : (char -> (string -> string)) =
00:00:51 #1516 [verbose] > closure5(v0)
00:00:51 #1517 [verbose] > and closure8 (v0 : int32) (v1 : string) : string =
00:00:51 #1518 [verbose] > let v2 : stri...
00:00:52 #1519 [verbose] >
00:00:52 #1520 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:52 #1521 [verbose] > let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
00:00:52 #1522 [verbose] > let v2 : (System.Guid -> string) = _.ToString()
00:00:52 #1523 [verbose] > let v3 : string = v2 v0
00:00:52 #1524 [verbose] > let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
00:00:52 #1525 [verbose] > let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
00:00:52 #1526 [verbose] > v5
00:00:52 #1527 [verbose] > and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
00:00:52 #1528 [verbose] > closure1(v0)
00:00:52 #1529 [verbose] > and closure5 (v0 : string, v1 : string) (v2 : string) : string =
00:00:52 #1530 [verbose] > let v3 : string = v2.Replace (v0, v1)
00:00:52 #1531 [verbose] > v3
00:00:52 #1532 [verbose] > and closure4 (v0 : string) (v1 : string) : (string -> string) =
00:00:52 #1533 [verbose] > closure5(v0, v1)
00:00:52 #1534 [verbose] > and closure3 () (v0 : string) : (string -> (string -> string)) =
00:00:52 #1535 [verbose] > closure4(v0)
00:00:52 #1536 [verbose] > and method0 () : (string -> (string -> (string -> string))) =
00:00:52 #1537 [verbose] > closure3()
00:00:52 #1538 [verbose] > and closure2 (...
00:00:52 #1539 [verbose] >
00:00:52 #1540 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:52 #1541 [verbose] > #if FABLE_COMPILER // file_system.types
00:00:52 #1542 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
00:00:52 #1543 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
00:00:52 #1544 [verbose] > base64_DecodeError = class end
00:00:52 #1545 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
00:00:52 #1546 [verbose] > = class end
00:00:52 #1547 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
00:00:52 #1548 [verbose] > = class end
00:00:52 #1549 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
00:00:52 #1550 [verbose] > serde_json_Error = class end
00:00:52 #1551 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
00:00:52 #1552 [verbose] > serde_json_Value = class end
00:00:52 #1553 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
00:00:52 #1554 [verbose] > serde_wasm_bindgen_Error = class end
00:00:52 #1555 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
00:00:54 #1556 [verbose] >
00:00:54 #1557 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:54 #1558 [verbose] > module State = let mutable trace_state = None
00:00:54 #1559 [verbose] > type [[<Struct>]] US0 =
00:00:54 #1560 [verbose] > | US0_0
00:00:54 #1561 [verbose] > | US0_1
00:00:54 #1562 [verbose] > | US0_2
00:00:54 #1563 [verbose] > | US0_3
00:00:54 #1564 [verbose] > | US0_4
00:00:54 #1565 [verbose] > and Mut0 = {mutable l0 : int64}
00:00:54 #1566 [verbose] > and Mut1 = {mutable l0 : bool}
00:00:54 #1567 [verbose] > and Mut2 = {mutable l0 : US0}
00:00:54 #1568 [verbose] > and [[<Struct>]] US1 =
00:00:54 #1569 [verbose] > | US1_0 of f0_0 : int64
00:00:54 #1570 [verbose] > | US1_1
00:00:54 #1571 [verbose] > and [[<Struct>]] US2 =
00:00:54 #1572 [verbose] > | US2_0 of f0_0 : int64
00:00:54 #1573 [verbose] > | US2_1
00:00:54 #1574 [verbose] > let rec method1 (v0 : int64 option) : int64 option =
00:00:54 #1575 [verbose] > v0
00:00:54 #1576 [verbose] > and method2 (v0 : int64 option) : int64 option =
00:00:54 #1577 [verbose] > v0
00:00:54 #1578 [verbose] > and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
00:00:54 #1579 [verbose] > let v0 : Mut1 = {l0 = true} : Mut1
00:00:54 #1580 [verbose] > let v1 : Mut0 = {l0 = 0L} : Mut0
00:00:54 #1581 [verbose] > let v2 : US0 = US0_0
00:00:54 #1582 [verbose] > let v3 : Mut2 = {l0 = v2} : Mut2
00:00:54 #1583 [verbose] > let v4 : Mut1 = {l0 = false} : Mut1
00:00:54 #1584 [verbose] > let v5 : int64 option option = None
00:00:54 #1585 [verbose] > ...
00:00:54 #1586 [verbose] >
00:00:54 #1587 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:54 #1588 [verbose] > module SpiralTrace =
00:00:54 #1589 [verbose] > let get_trace_state () =
00:00:54 #1590 [verbose] > #if !INTERACTIVE
00:00:54 #1591 [verbose] > Trace.get_trace_state ()
00:00:54 #1592 [verbose] > #else
00:00:54 #1593 [verbose] > get_trace_state ()
00:00:54 #1594 [verbose] > #endif
00:00:54 #1595 [verbose] > let trace x =
00:00:54 #1596 [verbose] > #if !INTERACTIVE
00:00:54 #1597 [verbose] > Trace.trace x
00:00:54 #1598 [verbose] > #else
00:00:54 #1599 [verbose] > trace x
00:00:54 #1600 [verbose] > #endif
00:00:54 #1601 [verbose] >
00:00:54 #1602 [verbose] > let US0_0 =
00:00:54 #1603 [verbose] > #if !INTERACTIVE
00:00:54 #1604 [verbose] > Trace.US0_0
00:00:54 #1605 [verbose] > #else
00:00:54 #1606 [verbose] > US0_0
00:00:54 #1607 [verbose] > #endif
00:00:54 #1608 [verbose] >
00:00:54 #1609 [verbose] > let US0_1 =
00:00:54 #1610 [verbose] > #if !INTERACTIVE
00:00:54 #1611 [verbose] > Trace.US0_1
00:00:54 #1612 [verbose] > #else
00:00:54 #1613 [verbose] > US0_1
00:00:54 #1614 [verbose] > #endif
00:00:54 #1615 [verbose] >
00:00:54 #1616 [verbose] > let US0_2 =
00:00:54 #1617 [verbose] > #if !INTERACTIVE
00:00:54 #1618 [verbose] > Trace.US0_2
00:00:54 #1619 [verbose] > #else
00:00:54 #1620 [verbose] > US0_2
00:00:54 #1621 [verbose] > #endif
00:00:54 #1622 [verbose] >
00:00:54 #1623 [verbose] > let US0_3 =
00:00:54 #1624 [verbose] > #if !INTERACTIVE
00:00:54 #1625 [verbose] > Trace.US0_3
00:00:54 #1626 [verbose] > #else
00:00:54 #1627 [verbose] > US0_3
00:00:54 #1628 [verbose] > #endif
00:00:54 #1629 [verbose] >
00:00:54 #1630 [verbose] > let US0_4 =
00:00:54 #1631 [verbose] > #if !INTERACTIVE
00:00:54 #1632 [verbose] > Trace.US0_4
00:00:54 #1633 [verbose] > #else
00:00:54 #1634 [verbose] > US0_4
00:00:54 #1635 [verbose] > #endif
00:00:54 #1636 [verbose] >
00:00:54 #1637 [verbose] >
00:00:54 #1638 [verbose] > #if !FABLE_COMPILER && !WASM && !CONTRACT
00:00:54 #1639 [verbose] > module SpiralDateTime =
00:00:54 #1640 [verbose] > let format x =
00:00:54 #1641 [verbose] > #if !INTERACTIVE
00:00:54 #1642 [verbose] > Date_ti...
00:00:54 #1643 [verbose] >
00:00:54 #1644 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:54 #1645 [verbose] > #if !INTERACTIVE
00:00:54 #1646 [verbose] > open Lib
00:00:54 #1647 [verbose] > #endif
00:00:54 #1648 [verbose] >
00:00:54 #1649 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:54 #1650 [verbose] > let nl = System.Environment.NewLine
00:00:54 #1651 [verbose] > let q = @""""
00:00:54 #1652 [verbose] >
00:00:54 #1653 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:54 #1654 [verbose] > let inline cons head tail = head :: tail
00:00:54 #1655 [verbose] >
00:00:54 #1656 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:54 #1657 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:54 #1658 [verbose] > │ ## memoize │
00:00:54 #1659 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:54 #1660 [verbose] >
00:00:54 #1661 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:54 #1662 [verbose] > let inline memoize fn =
00:00:54 #1663 [verbose] > let result = lazy fn ()
00:00:54 #1664 [verbose] > fun () -> result.Value
00:00:54 #1665 [verbose] >
00:00:54 #1666 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:54 #1667 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:54 #1668 [verbose] > │ ## TraceLevel │
00:00:54 #1669 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:54 #1670 [verbose] >
00:00:54 #1671 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:54 #1672 [verbose] > type TraceLevel =
00:00:54 #1673 [verbose] > | Verbose
00:00:54 #1674 [verbose] > | Debug
00:00:54 #1675 [verbose] > | Info
00:00:54 #1676 [verbose] > | Warning
00:00:54 #1677 [verbose] > | Critical
00:00:54 #1678 [verbose] >
00:00:54 #1679 [verbose] > let inline getLocals () = ""
00:00:54 #1680 [verbose] >
00:00:54 #1681 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:54 #1682 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:54 #1683 [verbose] > │ ## trace │
00:00:54 #1684 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:54 #1685 [verbose] >
00:00:54 #1686 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:54 #1687 [verbose] > let to_trace_level = function
00:00:54 #1688 [verbose] > | Verbose -> SpiralTrace.US0_0
00:00:54 #1689 [verbose] > | Debug -> SpiralTrace.US0_1
00:00:54 #1690 [verbose] > | Info -> SpiralTrace.US0_2
00:00:54 #1691 [verbose] > | Warning -> SpiralTrace.US0_3
00:00:54 #1692 [verbose] > | Critical -> SpiralTrace.US0_4
00:00:54 #1693 [verbose] >
00:00:54 #1694 [verbose] > let trace level fn getLocals =
00:00:54 #1695 [verbose] > let level = level |> to_trace_level
00:00:54 #1696 [verbose] > SpiralTrace.trace level fn getLocals
00:00:54 #1697 [verbose] >
00:00:54 #1698 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:54 #1699 [verbose] > //// test
00:00:54 #1700 [verbose] >
00:00:54 #1701 [verbose] > trace Debug (fun () -> "test") getLocals
00:00:54 #1702 [verbose] >
00:00:54 #1703 [verbose] > ╭─[ 17.36ms - stdout ]─────────────────────────────────────────────────────────╮
00:00:54 #1704 [verbose] > │ 00:00:00 #1 [debug] test │
00:00:54 #1705 [verbose] > │ │
00:00:54 #1706 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:56 #1707 [verbose] > [NbConvertApp] Converting notebook Common.dib.ipynb to html
00:00:56 #1708 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:00:56 #1709 [verbose] > validate(nb)
00:00:57 #1710 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:00:57 #1711 [verbose] > return _pygments_highlight(
00:00:57 #1712 [verbose] > [NbConvertApp] Writing 281321 bytes to Common.dib.html
00:00:58 #1713 [debug] executeAsync / exitCode: 0 / output.Length: 12163
00:00:58 #1714 [debug] main / executeCommand / exitCode: 0
00:00:58 #1715 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 CommonFSharp.dib" -Retries 3"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:01:00 #1716 [verbose] >
00:01:00 #1717 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:00 #1718 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:00 #1719 [verbose] > │ # CommonFSharp (Polyglot) │
00:01:00 #1720 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:00 #1721 [verbose] >
00:01:00 #1722 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:00 #1723 [verbose] > #!import ../../lib/fsharp/Notebooks.dib
00:01:00 #1724 [verbose] > #!import ../../lib/fsharp/Testing.dib
00:01:00 #1725 [verbose] >
00:01:00 #1726 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:00 #1727 [verbose] > #r
00:01:00 #1728 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:01:00 #1729 [verbose] > spNetCore.Html.Abstractions.dll"
00:01:00 #1730 [verbose] > #r
00:01:00 #1731 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:00 #1732 [verbose] > otNet.Interactive.dll"
00:01:00 #1733 [verbose] > #r
00:01:00 #1734 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:00 #1735 [verbose] > otNet.Interactive.FSharp.dll"
00:01:00 #1736 [verbose] > #r
00:01:00 #1737 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:00 #1738 [verbose] > otNet.Interactive.Formatting.dll"
00:01:00 #1739 [verbose] > open System
00:01:00 #1740 [verbose] > open System.IO
00:01:00 #1741 [verbose] > open System.Text
00:01:00 #1742 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:01:04 #1743 [verbose] >
00:01:04 #1744 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:04 #1745 [verbose] > #r
00:01:04 #1746 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:04 #1747 [verbose] > otNet.Interactive.FSharp.dll"
00:01:04 #1748 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:01:04 #1749 [verbose] > #r
00:01:04 #1750 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:04 #1751 [verbose] > otNet.Interactive.dll"
00:01:04 #1752 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:01:04 #1753 [verbose] >
00:01:04 #1754 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:04 #1755 [verbose] > //// test
00:01:04 #1756 [verbose] >
00:01:04 #1757 [verbose] > Formatter.ListExpansionLimit <- 100
00:01:05 #1758 [verbose] >
00:01:05 #1759 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:05 #1760 [verbose] > #r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
00:01:05 #1761 [verbose] >
00:01:05 #1762 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:05 #1763 [verbose] > //// test
00:01:05 #1764 [verbose] >
00:01:05 #1765 [verbose] > type AssertExceptionFormatter (ex) =
00:01:05 #1766 [verbose] > member _.Text =
00:01:05 #1767 [verbose] > ex.ToString()
00:01:05 #1768 [verbose] > .Replace("32m", "<span style=\"color: green;\">")
00:01:05 #1769 [verbose] > .Replace("36m", "</span>")
00:01:05 #1770 [verbose] > .Replace("31m", "<span style=\"color: red;\">")
00:01:05 #1771 [verbose] > .Replace("\n", "<br/>\n")
00:01:05 #1772 [verbose] >
00:01:05 #1773 [verbose] >
00:01:05 #1774 [verbose] > Formatter.Register<AssertExceptionFormatter> ((fun (x :
00:01:05 #1775 [verbose] > AssertExceptionFormatter) -> x.Text), "text/html")
00:01:05 #1776 [verbose] >
00:01:05 #1777 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:05 #1778 [verbose] > //// test
00:01:05 #1779 [verbose] >
00:01:05 #1780 [verbose] > let inline __expect fn log expected actual =
00:01:05 #1781 [verbose] > if log then printfn $"{actual.ToDisplayString ()}"
00:01:05 #1782 [verbose] > try
00:01:05 #1783 [verbose] > "Testing.__expect" |> fn actual expected
00:01:05 #1784 [verbose] > with :? Expecto.AssertException as ex ->
00:01:05 #1785 [verbose] > AssertExceptionFormatter(ex).Display () |> ignore
00:01:05 #1786 [verbose] > failwith (ex.GetType().FullName)
00:01:05 #1787 [verbose] >
00:01:05 #1788 [verbose] > let inline __contains log expected actual = __expect Expecto.Expect.contains log
00:01:05 #1789 [verbose] > expected actual
00:01:05 #1790 [verbose] > let inline _contains expected actual = __contains true expected actual
00:01:05 #1791 [verbose] >
00:01:05 #1792 [verbose] > let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
00:01:05 #1793 [verbose] > expected actual
00:01:05 #1794 [verbose] > let inline _assertEqual expected actual = __assertEqual true expected actual
00:01:05 #1795 [verbose] >
00:01:05 #1796 [verbose] > let inline __isGreaterThan log expected actual = __expect
00:01:05 #1797 [verbose] > Expecto.Expect.isGreaterThan log ex...
00:01:06 #1798 [verbose] >
00:01:06 #1799 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:06 #1800 [verbose] > //// test
00:01:06 #1801 [verbose] >
00:01:06 #1802 [verbose] > let inline __isBetween log a b actual =
00:01:06 #1803 [verbose] > let inline isBetween actual (a, b) _ =
00:01:06 #1804 [verbose] > __isGreaterThanOrEqual log a actual
00:01:06 #1805 [verbose] > __isLessThanOrEqual log b actual
00:01:06 #1806 [verbose] > __expect isBetween log (a, b) actual
00:01:06 #1807 [verbose] > let inline _isBetween a b actual = __isBetween true a b actual
00:01:06 #1808 [verbose] >
00:01:06 #1809 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:06 #1810 [verbose] > #!import ../../lib/spiral/common.fsx
00:01:06 #1811 [verbose] > #!import ../../lib/spiral/sm.fsx
00:01:06 #1812 [verbose] > #!import ../../lib/spiral/date_time.fsx
00:01:06 #1813 [verbose] > #!import ../../lib/spiral/file_system.fsx
00:01:06 #1814 [verbose] > #!import ../../lib/spiral/trace.fsx
00:01:06 #1815 [verbose] > #!import ../../lib/spiral/lib.fsx
00:01:06 #1816 [verbose] > #!import ../../lib/fsharp/Common.fs
00:01:06 #1817 [verbose] >
00:01:06 #1818 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:06 #1819 [verbose] > type [[<Struct>]] US0 =
00:01:06 #1820 [verbose] > | US0_0
00:01:06 #1821 [verbose] > | US0_1
00:01:06 #1822 [verbose] > and [[<Struct>]] US1 =
00:01:06 #1823 [verbose] > | US1_0 of f0_0 : US0
00:01:06 #1824 [verbose] > | US1_1
00:01:06 #1825 [verbose] > let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
00:01:06 #1826 [verbose] > let v1 : System.IDisposable option = None
00:01:06 #1827 [verbose] > let mutable _v1 = v1
00:01:06 #1828 [verbose] > #if FABLE_COMPILER_RUST && !WASM && !CONTRACT
00:01:06 #1829 [verbose] > let v2 : System.IDisposable = null |> unbox<System.IDisposable>
00:01:06 #1830 [verbose] > v2
00:01:06 #1831 [verbose] > #endif
00:01:06 #1832 [verbose] > #if FABLE_COMPILER_RUST && WASM
00:01:06 #1833 [verbose] > let v3 : System.IDisposable = null |> unbox<System.IDisposable>
00:01:06 #1834 [verbose] > v3
00:01:06 #1835 [verbose] > #endif
00:01:06 #1836 [verbose] > #if FABLE_COMPILER_RUST && CONTRACT
00:01:06 #1837 [verbose] > let v4 : System.IDisposable = null |> unbox<System.IDisposable>
00:01:06 #1838 [verbose] > v4
00:01:06 #1839 [verbose] > #endif
00:01:06 #1840 [verbose] > #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
00:01:06 #1841 [verbose] > !WASM && !CONTRACT
00:01:06 #1842 [verbose] > let v5 : System.ID...
00:01:07 #1843 [verbose] >
00:01:07 #1844 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:07 #1845 [verbose] > type Mut0 = {mutable l0 : int32; mutable l1 : string}
00:01:07 #1846 [verbose] > and Mut1 = {mutable l0 : int32}
00:01:07 #1847 [verbose] > let rec closure1 (v0 : string) (v1 : string) : bool =
00:01:07 #1848 [verbose] > let v2 : bool = v1.Contains v0
00:01:07 #1849 [verbose] > v2
00:01:07 #1850 [verbose] > and closure0 () (v0 : string) : (string -> bool) =
00:01:07 #1851 [verbose] > closure1(v0)
00:01:07 #1852 [verbose] > and closure3 (v0 : string) (v1 : string) : bool =
00:01:07 #1853 [verbose] > let v2 : bool = v1.EndsWith v0
00:01:07 #1854 [verbose] > v2
00:01:07 #1855 [verbose] > and closure2 () (v0 : string) : (string -> bool) =
00:01:07 #1856 [verbose] > closure3(v0)
00:01:07 #1857 [verbose] > and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
00:01:07 #1858 [verbose] > let v3 : string = v2.PadLeft (v0, v1)
00:01:07 #1859 [verbose] > v3
00:01:07 #1860 [verbose] > and closure5 (v0 : int32) (v1 : char) : (string -> string) =
00:01:07 #1861 [verbose] > closure6(v0, v1)
00:01:07 #1862 [verbose] > and closure4 () (v0 : int32) : (char -> (string -> string)) =
00:01:07 #1863 [verbose] > closure5(v0)
00:01:07 #1864 [verbose] > and closure8 (v0 : int32) (v1 : string) : string =
00:01:07 #1865 [verbose] > let v2 : stri...
00:01:07 #1866 [verbose] >
00:01:07 #1867 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:07 #1868 [verbose] > let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
00:01:07 #1869 [verbose] > let v2 : (System.Guid -> string) = _.ToString()
00:01:07 #1870 [verbose] > let v3 : string = v2 v0
00:01:07 #1871 [verbose] > let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
00:01:07 #1872 [verbose] > let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
00:01:07 #1873 [verbose] > v5
00:01:07 #1874 [verbose] > and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
00:01:07 #1875 [verbose] > closure1(v0)
00:01:07 #1876 [verbose] > and closure5 (v0 : string, v1 : string) (v2 : string) : string =
00:01:07 #1877 [verbose] > let v3 : string = v2.Replace (v0, v1)
00:01:07 #1878 [verbose] > v3
00:01:07 #1879 [verbose] > and closure4 (v0 : string) (v1 : string) : (string -> string) =
00:01:07 #1880 [verbose] > closure5(v0, v1)
00:01:07 #1881 [verbose] > and closure3 () (v0 : string) : (string -> (string -> string)) =
00:01:07 #1882 [verbose] > closure4(v0)
00:01:07 #1883 [verbose] > and method0 () : (string -> (string -> (string -> string))) =
00:01:07 #1884 [verbose] > closure3()
00:01:07 #1885 [verbose] > and closure2 (...
00:01:07 #1886 [verbose] >
00:01:07 #1887 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:07 #1888 [verbose] > #if FABLE_COMPILER // file_system.types
00:01:07 #1889 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
00:01:07 #1890 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
00:01:07 #1891 [verbose] > base64_DecodeError = class end
00:01:07 #1892 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
00:01:07 #1893 [verbose] > = class end
00:01:07 #1894 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
00:01:07 #1895 [verbose] > = class end
00:01:07 #1896 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
00:01:07 #1897 [verbose] > serde_json_Error = class end
00:01:07 #1898 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
00:01:07 #1899 [verbose] > serde_json_Value = class end
00:01:07 #1900 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
00:01:07 #1901 [verbose] > serde_wasm_bindgen_Error = class end
00:01:07 #1902 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
00:01:09 #1903 [verbose] >
00:01:09 #1904 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:09 #1905 [verbose] > module State = let mutable trace_state = None
00:01:09 #1906 [verbose] > type [[<Struct>]] US0 =
00:01:09 #1907 [verbose] > | US0_0
00:01:09 #1908 [verbose] > | US0_1
00:01:09 #1909 [verbose] > | US0_2
00:01:09 #1910 [verbose] > | US0_3
00:01:09 #1911 [verbose] > | US0_4
00:01:09 #1912 [verbose] > and Mut0 = {mutable l0 : int64}
00:01:09 #1913 [verbose] > and Mut1 = {mutable l0 : bool}
00:01:09 #1914 [verbose] > and Mut2 = {mutable l0 : US0}
00:01:09 #1915 [verbose] > and [[<Struct>]] US1 =
00:01:09 #1916 [verbose] > | US1_0 of f0_0 : int64
00:01:09 #1917 [verbose] > | US1_1
00:01:09 #1918 [verbose] > and [[<Struct>]] US2 =
00:01:09 #1919 [verbose] > | US2_0 of f0_0 : int64
00:01:09 #1920 [verbose] > | US2_1
00:01:09 #1921 [verbose] > let rec method1 (v0 : int64 option) : int64 option =
00:01:09 #1922 [verbose] > v0
00:01:09 #1923 [verbose] > and method2 (v0 : int64 option) : int64 option =
00:01:09 #1924 [verbose] > v0
00:01:09 #1925 [verbose] > and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
00:01:09 #1926 [verbose] > let v0 : Mut1 = {l0 = true} : Mut1
00:01:09 #1927 [verbose] > let v1 : Mut0 = {l0 = 0L} : Mut0
00:01:09 #1928 [verbose] > let v2 : US0 = US0_0
00:01:09 #1929 [verbose] > let v3 : Mut2 = {l0 = v2} : Mut2
00:01:09 #1930 [verbose] > let v4 : Mut1 = {l0 = false} : Mut1
00:01:09 #1931 [verbose] > let v5 : int64 option option = None
00:01:09 #1932 [verbose] > ...
00:01:10 #1933 [verbose] >
00:01:10 #1934 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:10 #1935 [verbose] > module SpiralTrace =
00:01:10 #1936 [verbose] > let get_trace_state () =
00:01:10 #1937 [verbose] > #if !INTERACTIVE
00:01:10 #1938 [verbose] > Trace.get_trace_state ()
00:01:10 #1939 [verbose] > #else
00:01:10 #1940 [verbose] > get_trace_state ()
00:01:10 #1941 [verbose] > #endif
00:01:10 #1942 [verbose] > let trace x =
00:01:10 #1943 [verbose] > #if !INTERACTIVE
00:01:10 #1944 [verbose] > Trace.trace x
00:01:10 #1945 [verbose] > #else
00:01:10 #1946 [verbose] > trace x
00:01:10 #1947 [verbose] > #endif
00:01:10 #1948 [verbose] >
00:01:10 #1949 [verbose] > let US0_0 =
00:01:10 #1950 [verbose] > #if !INTERACTIVE
00:01:10 #1951 [verbose] > Trace.US0_0
00:01:10 #1952 [verbose] > #else
00:01:10 #1953 [verbose] > US0_0
00:01:10 #1954 [verbose] > #endif
00:01:10 #1955 [verbose] >
00:01:10 #1956 [verbose] > let US0_1 =
00:01:10 #1957 [verbose] > #if !INTERACTIVE
00:01:10 #1958 [verbose] > Trace.US0_1
00:01:10 #1959 [verbose] > #else
00:01:10 #1960 [verbose] > US0_1
00:01:10 #1961 [verbose] > #endif
00:01:10 #1962 [verbose] >
00:01:10 #1963 [verbose] > let US0_2 =
00:01:10 #1964 [verbose] > #if !INTERACTIVE
00:01:10 #1965 [verbose] > Trace.US0_2
00:01:10 #1966 [verbose] > #else
00:01:10 #1967 [verbose] > US0_2
00:01:10 #1968 [verbose] > #endif
00:01:10 #1969 [verbose] >
00:01:10 #1970 [verbose] > let US0_3 =
00:01:10 #1971 [verbose] > #if !INTERACTIVE
00:01:10 #1972 [verbose] > Trace.US0_3
00:01:10 #1973 [verbose] > #else
00:01:10 #1974 [verbose] > US0_3
00:01:10 #1975 [verbose] > #endif
00:01:10 #1976 [verbose] >
00:01:10 #1977 [verbose] > let US0_4 =
00:01:10 #1978 [verbose] > #if !INTERACTIVE
00:01:10 #1979 [verbose] > Trace.US0_4
00:01:10 #1980 [verbose] > #else
00:01:10 #1981 [verbose] > US0_4
00:01:10 #1982 [verbose] > #endif
00:01:10 #1983 [verbose] >
00:01:10 #1984 [verbose] >
00:01:10 #1985 [verbose] > #if !FABLE_COMPILER && !WASM && !CONTRACT
00:01:10 #1986 [verbose] > module SpiralDateTime =
00:01:10 #1987 [verbose] > let format x =
00:01:10 #1988 [verbose] > #if !INTERACTIVE
00:01:10 #1989 [verbose] > Date_ti...
00:01:10 #1990 [verbose] >
00:01:10 #1991 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:10 #1992 [verbose] > #if !INTERACTIVE
00:01:10 #1993 [verbose] > namespace Polyglot
00:01:10 #1994 [verbose] > #endif
00:01:10 #1995 [verbose] >
00:01:10 #1996 [verbose] > module Common =
00:01:10 #1997 [verbose] >
00:01:10 #1998 [verbose] > #if !INTERACTIVE
00:01:10 #1999 [verbose] > open Lib
00:01:10 #2000 [verbose] > #endif
00:01:10 #2001 [verbose] >
00:01:10 #2002 [verbose] > let nl = System.Environment.NewLine
00:01:10 #2003 [verbose] > let q = @""""
00:01:10 #2004 [verbose] >
00:01:10 #2005 [verbose] > let inline cons head tail = head :: tail
00:01:10 #2006 [verbose] >
00:01:10 #2007 [verbose] > /// ## memoize
00:01:10 #2008 [verbose] >
00:01:10 #2009 [verbose] > let inline memoize fn =
00:01:10 #2010 [verbose] > let result = lazy fn ()
00:01:10 #2011 [verbose] > fun () -> result.Value
00:01:10 #2012 [verbose] >
00:01:10 #2013 [verbose] > /// ## TraceLevel
00:01:10 #2014 [verbose] >
00:01:10 #2015 [verbose] > type TraceLevel =
00:01:10 #2016 [verbose] > | Verbose
00:01:10 #2017 [verbose] > | Debug
00:01:10 #2018 [verbose] > | Info
00:01:10 #2019 [verbose] > | Warning
00:01:10 #2020 [verbose] > | Critical
00:01:10 #2021 [verbose] >
00:01:10 #2022 [verbose] > let inline getLocals () = ""
00:01:10 #2023 [verbose] >
00:01:10 #2024 [verbose] > /// ## trace
00:01:10 #2025 [verbose] >
00:01:10 #2026 [verbose] > let to_trace_level = function
00:01:10 #2027 [verbose] > | Verbose -> SpiralTrace.US0_0
00:01:10 #2028 [verbose] > | Debug -> SpiralTrace.US0_1
00:01:10 #2029 [verbose] > | Info -> SpiralTrace.US0_2
00:01:10 #2030 [verbose] > | Warning -> SpiralTrace.US0_3
00:01:10 #2031 [verbose] > | Critical -> SpiralTrace.US0_4
00:01:10 #2032 [verbose] >
00:01:10 #2033 [verbose] > let trace level fn g...
00:01:10 #2034 [verbose] >
00:01:10 #2035 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:10 #2036 [verbose] > open Common
00:01:10 #2037 [verbose] >
00:01:10 #2038 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:10 #2039 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:10 #2040 [verbose] > │ ## getUnionCaseName │
00:01:10 #2041 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:10 #2042 [verbose] >
00:01:10 #2043 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:10 #2044 [verbose] > let inline getUnionCaseName<'T> (x: 'T) =
00:01:10 #2045 [verbose] > match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with
00:01:10 #2046 [verbose] > | case, _ -> case.Name
00:01:10 #2047 [verbose] >
00:01:10 #2048 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:10 #2049 [verbose] > //// test
00:01:10 #2050 [verbose] >
00:01:10 #2051 [verbose] > TraceLevel.Critical
00:01:10 #2052 [verbose] > |> getUnionCaseName
00:01:10 #2053 [verbose] > |> _assertEqual (nameof TraceLevel.Critical)
00:01:10 #2054 [verbose] >
00:01:10 #2055 [verbose] > ╭─[ 90.38ms - stdout ]─────────────────────────────────────────────────────────╮
00:01:10 #2056 [verbose] > │ Critical │
00:01:10 #2057 [verbose] > │ │
00:01:10 #2058 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:12 #2059 [verbose] > [NbConvertApp] Converting notebook CommonFSharp.dib.ipynb to html
00:01:12 #2060 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:01:12 #2061 [verbose] > validate(nb)
00:01:13 #2062 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:01:13 #2063 [verbose] > return _pygments_highlight(
00:01:13 #2064 [verbose] > [NbConvertApp] Writing 275954 bytes to CommonFSharp.dib.html
00:01:14 #2065 [debug] executeAsync / exitCode: 0 / output.Length: 11631
00:01:14 #2066 [debug] main / executeCommand / exitCode: 0
00:01:14 #2067 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 Threading.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:01:16 #2068 [verbose] >
00:01:16 #2069 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:16 #2070 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:16 #2071 [verbose] > │ # Threading (Polyglot) │
00:01:16 #2072 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:16 #2073 [verbose] >
00:01:16 #2074 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:16 #2075 [verbose] > #!import ../../lib/fsharp/Notebooks.dib
00:01:16 #2076 [verbose] > #!import ../../lib/fsharp/Testing.dib
00:01:16 #2077 [verbose] >
00:01:16 #2078 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:16 #2079 [verbose] > #r
00:01:16 #2080 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:01:16 #2081 [verbose] > spNetCore.Html.Abstractions.dll"
00:01:16 #2082 [verbose] > #r
00:01:16 #2083 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:16 #2084 [verbose] > otNet.Interactive.dll"
00:01:16 #2085 [verbose] > #r
00:01:16 #2086 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:16 #2087 [verbose] > otNet.Interactive.FSharp.dll"
00:01:16 #2088 [verbose] > #r
00:01:16 #2089 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:16 #2090 [verbose] > otNet.Interactive.Formatting.dll"
00:01:16 #2091 [verbose] > open System
00:01:16 #2092 [verbose] > open System.IO
00:01:16 #2093 [verbose] > open System.Text
00:01:16 #2094 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:01:20 #2095 [verbose] >
00:01:20 #2096 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:20 #2097 [verbose] > #r
00:01:20 #2098 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:20 #2099 [verbose] > otNet.Interactive.FSharp.dll"
00:01:20 #2100 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:01:20 #2101 [verbose] > #r
00:01:20 #2102 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:20 #2103 [verbose] > otNet.Interactive.dll"
00:01:20 #2104 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:01:20 #2105 [verbose] >
00:01:20 #2106 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:20 #2107 [verbose] > //// test
00:01:20 #2108 [verbose] >
00:01:20 #2109 [verbose] > Formatter.ListExpansionLimit <- 100
00:01:21 #2110 [verbose] >
00:01:21 #2111 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:21 #2112 [verbose] > #r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
00:01:21 #2113 [verbose] >
00:01:21 #2114 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:21 #2115 [verbose] > //// test
00:01:21 #2116 [verbose] >
00:01:21 #2117 [verbose] > type AssertExceptionFormatter (ex) =
00:01:21 #2118 [verbose] > member _.Text =
00:01:21 #2119 [verbose] > ex.ToString()
00:01:21 #2120 [verbose] > .Replace("32m", "<span style=\"color: green;\">")
00:01:21 #2121 [verbose] > .Replace("36m", "</span>")
00:01:21 #2122 [verbose] > .Replace("31m", "<span style=\"color: red;\">")
00:01:21 #2123 [verbose] > .Replace("\n", "<br/>\n")
00:01:21 #2124 [verbose] >
00:01:21 #2125 [verbose] >
00:01:21 #2126 [verbose] > Formatter.Register<AssertExceptionFormatter> ((fun (x :
00:01:21 #2127 [verbose] > AssertExceptionFormatter) -> x.Text), "text/html")
00:01:21 #2128 [verbose] >
00:01:21 #2129 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:21 #2130 [verbose] > //// test
00:01:21 #2131 [verbose] >
00:01:21 #2132 [verbose] > let inline __expect fn log expected actual =
00:01:21 #2133 [verbose] > if log then printfn $"{actual.ToDisplayString ()}"
00:01:21 #2134 [verbose] > try
00:01:21 #2135 [verbose] > "Testing.__expect" |> fn actual expected
00:01:21 #2136 [verbose] > with :? Expecto.AssertException as ex ->
00:01:21 #2137 [verbose] > AssertExceptionFormatter(ex).Display () |> ignore
00:01:21 #2138 [verbose] > failwith (ex.GetType().FullName)
00:01:21 #2139 [verbose] >
00:01:21 #2140 [verbose] > let inline __contains log expected actual = __expect Expecto.Expect.contains log
00:01:21 #2141 [verbose] > expected actual
00:01:21 #2142 [verbose] > let inline _contains expected actual = __contains true expected actual
00:01:21 #2143 [verbose] >
00:01:21 #2144 [verbose] > let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
00:01:21 #2145 [verbose] > expected actual
00:01:21 #2146 [verbose] > let inline _assertEqual expected actual = __assertEqual true expected actual
00:01:21 #2147 [verbose] >
00:01:21 #2148 [verbose] > let inline __isGreaterThan log expected actual = __expect
00:01:21 #2149 [verbose] > Expecto.Expect.isGreaterThan log ex...
00:01:22 #2150 [verbose] >
00:01:22 #2151 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:22 #2152 [verbose] > //// test
00:01:22 #2153 [verbose] >
00:01:22 #2154 [verbose] > let inline __isBetween log a b actual =
00:01:22 #2155 [verbose] > let inline isBetween actual (a, b) _ =
00:01:22 #2156 [verbose] > __isGreaterThanOrEqual log a actual
00:01:22 #2157 [verbose] > __isLessThanOrEqual log b actual
00:01:22 #2158 [verbose] > __expect isBetween log (a, b) actual
00:01:22 #2159 [verbose] > let inline _isBetween a b actual = __isBetween true a b actual
00:01:22 #2160 [verbose] >
00:01:22 #2161 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:22 #2162 [verbose] > #!import ../../lib/spiral/common.fsx
00:01:22 #2163 [verbose] > #!import ../../lib/spiral/sm.fsx
00:01:22 #2164 [verbose] > #!import ../../lib/spiral/date_time.fsx
00:01:22 #2165 [verbose] > #!import ../../lib/spiral/file_system.fsx
00:01:22 #2166 [verbose] > #!import ../../lib/spiral/trace.fsx
00:01:22 #2167 [verbose] > #!import ../../lib/spiral/lib.fsx
00:01:22 #2168 [verbose] > #!import ../../lib/fsharp/Common.fs
00:01:22 #2169 [verbose] >
00:01:22 #2170 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:22 #2171 [verbose] > type [[<Struct>]] US0 =
00:01:22 #2172 [verbose] > | US0_0
00:01:22 #2173 [verbose] > | US0_1
00:01:22 #2174 [verbose] > and [[<Struct>]] US1 =
00:01:22 #2175 [verbose] > | US1_0 of f0_0 : US0
00:01:22 #2176 [verbose] > | US1_1
00:01:22 #2177 [verbose] > let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
00:01:22 #2178 [verbose] > let v1 : System.IDisposable option = None
00:01:22 #2179 [verbose] > let mutable _v1 = v1
00:01:22 #2180 [verbose] > #if FABLE_COMPILER_RUST && !WASM && !CONTRACT
00:01:22 #2181 [verbose] > let v2 : System.IDisposable = null |> unbox<System.IDisposable>
00:01:22 #2182 [verbose] > v2
00:01:22 #2183 [verbose] > #endif
00:01:22 #2184 [verbose] > #if FABLE_COMPILER_RUST && WASM
00:01:22 #2185 [verbose] > let v3 : System.IDisposable = null |> unbox<System.IDisposable>
00:01:22 #2186 [verbose] > v3
00:01:22 #2187 [verbose] > #endif
00:01:22 #2188 [verbose] > #if FABLE_COMPILER_RUST && CONTRACT
00:01:22 #2189 [verbose] > let v4 : System.IDisposable = null |> unbox<System.IDisposable>
00:01:22 #2190 [verbose] > v4
00:01:22 #2191 [verbose] > #endif
00:01:22 #2192 [verbose] > #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
00:01:22 #2193 [verbose] > !WASM && !CONTRACT
00:01:22 #2194 [verbose] > let v5 : System.ID...
00:01:22 #2195 [verbose] >
00:01:22 #2196 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:22 #2197 [verbose] > type Mut0 = {mutable l0 : int32; mutable l1 : string}
00:01:22 #2198 [verbose] > and Mut1 = {mutable l0 : int32}
00:01:22 #2199 [verbose] > let rec closure1 (v0 : string) (v1 : string) : bool =
00:01:22 #2200 [verbose] > let v2 : bool = v1.Contains v0
00:01:22 #2201 [verbose] > v2
00:01:22 #2202 [verbose] > and closure0 () (v0 : string) : (string -> bool) =
00:01:22 #2203 [verbose] > closure1(v0)
00:01:22 #2204 [verbose] > and closure3 (v0 : string) (v1 : string) : bool =
00:01:22 #2205 [verbose] > let v2 : bool = v1.EndsWith v0
00:01:22 #2206 [verbose] > v2
00:01:22 #2207 [verbose] > and closure2 () (v0 : string) : (string -> bool) =
00:01:22 #2208 [verbose] > closure3(v0)
00:01:22 #2209 [verbose] > and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
00:01:22 #2210 [verbose] > let v3 : string = v2.PadLeft (v0, v1)
00:01:22 #2211 [verbose] > v3
00:01:22 #2212 [verbose] > and closure5 (v0 : int32) (v1 : char) : (string -> string) =
00:01:22 #2213 [verbose] > closure6(v0, v1)
00:01:22 #2214 [verbose] > and closure4 () (v0 : int32) : (char -> (string -> string)) =
00:01:22 #2215 [verbose] > closure5(v0)
00:01:22 #2216 [verbose] > and closure8 (v0 : int32) (v1 : string) : string =
00:01:22 #2217 [verbose] > let v2 : stri...
00:01:23 #2218 [verbose] >
00:01:23 #2219 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:23 #2220 [verbose] > let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
00:01:23 #2221 [verbose] > let v2 : (System.Guid -> string) = _.ToString()
00:01:23 #2222 [verbose] > let v3 : string = v2 v0
00:01:23 #2223 [verbose] > let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
00:01:23 #2224 [verbose] > let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
00:01:23 #2225 [verbose] > v5
00:01:23 #2226 [verbose] > and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
00:01:23 #2227 [verbose] > closure1(v0)
00:01:23 #2228 [verbose] > and closure5 (v0 : string, v1 : string) (v2 : string) : string =
00:01:23 #2229 [verbose] > let v3 : string = v2.Replace (v0, v1)
00:01:23 #2230 [verbose] > v3
00:01:23 #2231 [verbose] > and closure4 (v0 : string) (v1 : string) : (string -> string) =
00:01:23 #2232 [verbose] > closure5(v0, v1)
00:01:23 #2233 [verbose] > and closure3 () (v0 : string) : (string -> (string -> string)) =
00:01:23 #2234 [verbose] > closure4(v0)
00:01:23 #2235 [verbose] > and method0 () : (string -> (string -> (string -> string))) =
00:01:23 #2236 [verbose] > closure3()
00:01:23 #2237 [verbose] > and closure2 (...
00:01:23 #2238 [verbose] >
00:01:23 #2239 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:23 #2240 [verbose] > #if FABLE_COMPILER // file_system.types
00:01:23 #2241 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
00:01:23 #2242 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
00:01:23 #2243 [verbose] > base64_DecodeError = class end
00:01:23 #2244 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
00:01:23 #2245 [verbose] > = class end
00:01:23 #2246 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
00:01:23 #2247 [verbose] > = class end
00:01:23 #2248 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
00:01:23 #2249 [verbose] > serde_json_Error = class end
00:01:23 #2250 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
00:01:23 #2251 [verbose] > serde_json_Value = class end
00:01:23 #2252 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
00:01:23 #2253 [verbose] > serde_wasm_bindgen_Error = class end
00:01:23 #2254 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
00:01:25 #2255 [verbose] >
00:01:25 #2256 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:25 #2257 [verbose] > module State = let mutable trace_state = None
00:01:25 #2258 [verbose] > type [[<Struct>]] US0 =
00:01:25 #2259 [verbose] > | US0_0
00:01:25 #2260 [verbose] > | US0_1
00:01:25 #2261 [verbose] > | US0_2
00:01:25 #2262 [verbose] > | US0_3
00:01:25 #2263 [verbose] > | US0_4
00:01:25 #2264 [verbose] > and Mut0 = {mutable l0 : int64}
00:01:25 #2265 [verbose] > and Mut1 = {mutable l0 : bool}
00:01:25 #2266 [verbose] > and Mut2 = {mutable l0 : US0}
00:01:25 #2267 [verbose] > and [[<Struct>]] US1 =
00:01:25 #2268 [verbose] > | US1_0 of f0_0 : int64
00:01:25 #2269 [verbose] > | US1_1
00:01:25 #2270 [verbose] > and [[<Struct>]] US2 =
00:01:25 #2271 [verbose] > | US2_0 of f0_0 : int64
00:01:25 #2272 [verbose] > | US2_1
00:01:25 #2273 [verbose] > let rec method1 (v0 : int64 option) : int64 option =
00:01:25 #2274 [verbose] > v0
00:01:25 #2275 [verbose] > and method2 (v0 : int64 option) : int64 option =
00:01:25 #2276 [verbose] > v0
00:01:25 #2277 [verbose] > and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
00:01:25 #2278 [verbose] > let v0 : Mut1 = {l0 = true} : Mut1
00:01:25 #2279 [verbose] > let v1 : Mut0 = {l0 = 0L} : Mut0
00:01:25 #2280 [verbose] > let v2 : US0 = US0_0
00:01:25 #2281 [verbose] > let v3 : Mut2 = {l0 = v2} : Mut2
00:01:25 #2282 [verbose] > let v4 : Mut1 = {l0 = false} : Mut1
00:01:25 #2283 [verbose] > let v5 : int64 option option = None
00:01:25 #2284 [verbose] > ...
00:01:25 #2285 [verbose] >
00:01:25 #2286 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:25 #2287 [verbose] > module SpiralTrace =
00:01:25 #2288 [verbose] > let get_trace_state () =
00:01:25 #2289 [verbose] > #if !INTERACTIVE
00:01:25 #2290 [verbose] > Trace.get_trace_state ()
00:01:25 #2291 [verbose] > #else
00:01:25 #2292 [verbose] > get_trace_state ()
00:01:25 #2293 [verbose] > #endif
00:01:25 #2294 [verbose] > let trace x =
00:01:25 #2295 [verbose] > #if !INTERACTIVE
00:01:25 #2296 [verbose] > Trace.trace x
00:01:25 #2297 [verbose] > #else
00:01:25 #2298 [verbose] > trace x
00:01:25 #2299 [verbose] > #endif
00:01:25 #2300 [verbose] >
00:01:25 #2301 [verbose] > let US0_0 =
00:01:25 #2302 [verbose] > #if !INTERACTIVE
00:01:25 #2303 [verbose] > Trace.US0_0
00:01:25 #2304 [verbose] > #else
00:01:25 #2305 [verbose] > US0_0
00:01:25 #2306 [verbose] > #endif
00:01:25 #2307 [verbose] >
00:01:25 #2308 [verbose] > let US0_1 =
00:01:25 #2309 [verbose] > #if !INTERACTIVE
00:01:25 #2310 [verbose] > Trace.US0_1
00:01:25 #2311 [verbose] > #else
00:01:25 #2312 [verbose] > US0_1
00:01:25 #2313 [verbose] > #endif
00:01:25 #2314 [verbose] >
00:01:25 #2315 [verbose] > let US0_2 =
00:01:25 #2316 [verbose] > #if !INTERACTIVE
00:01:25 #2317 [verbose] > Trace.US0_2
00:01:25 #2318 [verbose] > #else
00:01:25 #2319 [verbose] > US0_2
00:01:25 #2320 [verbose] > #endif
00:01:25 #2321 [verbose] >
00:01:25 #2322 [verbose] > let US0_3 =
00:01:25 #2323 [verbose] > #if !INTERACTIVE
00:01:25 #2324 [verbose] > Trace.US0_3
00:01:25 #2325 [verbose] > #else
00:01:25 #2326 [verbose] > US0_3
00:01:25 #2327 [verbose] > #endif
00:01:25 #2328 [verbose] >
00:01:25 #2329 [verbose] > let US0_4 =
00:01:25 #2330 [verbose] > #if !INTERACTIVE
00:01:25 #2331 [verbose] > Trace.US0_4
00:01:25 #2332 [verbose] > #else
00:01:25 #2333 [verbose] > US0_4
00:01:25 #2334 [verbose] > #endif
00:01:25 #2335 [verbose] >
00:01:25 #2336 [verbose] >
00:01:25 #2337 [verbose] > #if !FABLE_COMPILER && !WASM && !CONTRACT
00:01:25 #2338 [verbose] > module SpiralDateTime =
00:01:25 #2339 [verbose] > let format x =
00:01:25 #2340 [verbose] > #if !INTERACTIVE
00:01:25 #2341 [verbose] > Date_ti...
00:01:25 #2342 [verbose] >
00:01:25 #2343 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:25 #2344 [verbose] > #if !INTERACTIVE
00:01:25 #2345 [verbose] > namespace Polyglot
00:01:25 #2346 [verbose] > #endif
00:01:25 #2347 [verbose] >
00:01:25 #2348 [verbose] > module Common =
00:01:25 #2349 [verbose] >
00:01:25 #2350 [verbose] > #if !INTERACTIVE
00:01:25 #2351 [verbose] > open Lib
00:01:25 #2352 [verbose] > #endif
00:01:25 #2353 [verbose] >
00:01:25 #2354 [verbose] > let nl = System.Environment.NewLine
00:01:25 #2355 [verbose] > let q = @""""
00:01:25 #2356 [verbose] >
00:01:25 #2357 [verbose] > let inline cons head tail = head :: tail
00:01:25 #2358 [verbose] >
00:01:25 #2359 [verbose] > /// ## memoize
00:01:25 #2360 [verbose] >
00:01:25 #2361 [verbose] > let inline memoize fn =
00:01:25 #2362 [verbose] > let result = lazy fn ()
00:01:25 #2363 [verbose] > fun () -> result.Value
00:01:25 #2364 [verbose] >
00:01:25 #2365 [verbose] > /// ## TraceLevel
00:01:25 #2366 [verbose] >
00:01:25 #2367 [verbose] > type TraceLevel =
00:01:25 #2368 [verbose] > | Verbose
00:01:25 #2369 [verbose] > | Debug
00:01:25 #2370 [verbose] > | Info
00:01:25 #2371 [verbose] > | Warning
00:01:25 #2372 [verbose] > | Critical
00:01:25 #2373 [verbose] >
00:01:25 #2374 [verbose] > let inline getLocals () = ""
00:01:25 #2375 [verbose] >
00:01:25 #2376 [verbose] > /// ## trace
00:01:25 #2377 [verbose] >
00:01:25 #2378 [verbose] > let to_trace_level = function
00:01:25 #2379 [verbose] > | Verbose -> SpiralTrace.US0_0
00:01:25 #2380 [verbose] > | Debug -> SpiralTrace.US0_1
00:01:25 #2381 [verbose] > | Info -> SpiralTrace.US0_2
00:01:25 #2382 [verbose] > | Warning -> SpiralTrace.US0_3
00:01:25 #2383 [verbose] > | Critical -> SpiralTrace.US0_4
00:01:25 #2384 [verbose] >
00:01:25 #2385 [verbose] > let trace level fn g...
00:01:25 #2386 [verbose] >
00:01:25 #2387 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:25 #2388 [verbose] > open Common
00:01:25 #2389 [verbose] >
00:01:25 #2390 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:25 #2391 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:25 #2392 [verbose] > │ ## newDisposableToken │
00:01:25 #2393 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:25 #2394 [verbose] >
00:01:25 #2395 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:25 #2396 [verbose] > let inline newDisposableToken (mergeToken: System.Threading.CancellationToken
00:01:25 #2397 [verbose] > option) =
00:01:25 #2398 [verbose] > let cts = new System.Threading.CancellationTokenSource ()
00:01:25 #2399 [verbose] > let cts =
00:01:25 #2400 [verbose] > match mergeToken with
00:01:25 #2401 [verbose] > | None -> cts
00:01:25 #2402 [verbose] > | Some mergeToken ->
00:01:25 #2403 [verbose] > System.Threading.CancellationTokenSource.CreateLinkedTokenSource [[|
00:01:25 #2404 [verbose] > cts.Token; mergeToken |]]
00:01:25 #2405 [verbose] > let disposable = new_disposable cts.Cancel
00:01:25 #2406 [verbose] > cts.Token, disposable
00:01:25 #2407 [verbose] >
00:01:25 #2408 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:25 #2409 [verbose] > //// test
00:01:25 #2410 [verbose] >
00:01:25 #2411 [verbose] > let mutable counter = 0
00:01:25 #2412 [verbose] >
00:01:25 #2413 [verbose] > let inline run fn =
00:01:25 #2414 [verbose] > let token, disposable = newDisposableToken None
00:01:25 #2415 [verbose] > use _ = disposable
00:01:25 #2416 [verbose] > fn token
00:01:25 #2417 [verbose] > async {
00:01:25 #2418 [verbose] > fn token
00:01:25 #2419 [verbose] > }
00:01:25 #2420 [verbose] > |> Async.Start
00:01:25 #2421 [verbose] >
00:01:25 #2422 [verbose] > let inline fn (token : System.Threading.CancellationToken) =
00:01:25 #2423 [verbose] > counter <- counter + (if token.IsCancellationRequested then 10 else 1)
00:01:25 #2424 [verbose] >
00:01:25 #2425 [verbose] > async {
00:01:25 #2426 [verbose] > run fn
00:01:25 #2427 [verbose] > do! Async.Sleep 10
00:01:25 #2428 [verbose] > return counter
00:01:25 #2429 [verbose] > }
00:01:25 #2430 [verbose] > |> Async.RunSynchronously
00:01:25 #2431 [verbose] > |> _assertEqual 11
00:01:26 #2432 [verbose] >
00:01:26 #2433 [verbose] > ╭─[ 128.45ms - stdout ]────────────────────────────────────────────────────────╮
00:01:26 #2434 [verbose] > │ 11 │
00:01:26 #2435 [verbose] > │ │
00:01:26 #2436 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:27 #2437 [verbose] > [NbConvertApp] Converting notebook Threading.dib.ipynb to html
00:01:27 #2438 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:01:27 #2439 [verbose] > validate(nb)
00:01:28 #2440 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:01:28 #2441 [verbose] > return _pygments_highlight(
00:01:28 #2442 [verbose] > [NbConvertApp] Writing 278972 bytes to Threading.dib.html
00:01:29 #2443 [debug] executeAsync / exitCode: 0 / output.Length: 12262
00:01:29 #2444 [debug] main / executeCommand / exitCode: 0
00:01:29 #2445 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 Crypto.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:01:31 #2446 [verbose] >
00:01:31 #2447 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:32 #2448 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:32 #2449 [verbose] > │ # Crypto (Polyglot) │
00:01:32 #2450 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:32 #2451 [verbose] >
00:01:32 #2452 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:32 #2453 [verbose] > #!import ../../lib/fsharp/Notebooks.dib
00:01:32 #2454 [verbose] > #!import ../../lib/fsharp/Testing.dib
00:01:32 #2455 [verbose] >
00:01:32 #2456 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:32 #2457 [verbose] > #r
00:01:32 #2458 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:01:32 #2459 [verbose] > spNetCore.Html.Abstractions.dll"
00:01:32 #2460 [verbose] > #r
00:01:32 #2461 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:32 #2462 [verbose] > otNet.Interactive.dll"
00:01:32 #2463 [verbose] > #r
00:01:32 #2464 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:32 #2465 [verbose] > otNet.Interactive.FSharp.dll"
00:01:32 #2466 [verbose] > #r
00:01:32 #2467 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:32 #2468 [verbose] > otNet.Interactive.Formatting.dll"
00:01:32 #2469 [verbose] > open System
00:01:32 #2470 [verbose] > open System.IO
00:01:32 #2471 [verbose] > open System.Text
00:01:32 #2472 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:01:35 #2473 [verbose] >
00:01:35 #2474 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:35 #2475 [verbose] > #r
00:01:35 #2476 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:35 #2477 [verbose] > otNet.Interactive.FSharp.dll"
00:01:35 #2478 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:01:35 #2479 [verbose] > #r
00:01:35 #2480 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:35 #2481 [verbose] > otNet.Interactive.dll"
00:01:35 #2482 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:01:36 #2483 [verbose] >
00:01:36 #2484 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:36 #2485 [verbose] > //// test
00:01:36 #2486 [verbose] >
00:01:36 #2487 [verbose] > Formatter.ListExpansionLimit <- 100
00:01:36 #2488 [verbose] >
00:01:36 #2489 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:36 #2490 [verbose] > #r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
00:01:36 #2491 [verbose] >
00:01:36 #2492 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:36 #2493 [verbose] > //// test
00:01:36 #2494 [verbose] >
00:01:36 #2495 [verbose] > type AssertExceptionFormatter (ex) =
00:01:36 #2496 [verbose] > member _.Text =
00:01:36 #2497 [verbose] > ex.ToString()
00:01:36 #2498 [verbose] > .Replace("32m", "<span style=\"color: green;\">")
00:01:36 #2499 [verbose] > .Replace("36m", "</span>")
00:01:36 #2500 [verbose] > .Replace("31m", "<span style=\"color: red;\">")
00:01:36 #2501 [verbose] > .Replace("\n", "<br/>\n")
00:01:36 #2502 [verbose] >
00:01:36 #2503 [verbose] >
00:01:36 #2504 [verbose] > Formatter.Register<AssertExceptionFormatter> ((fun (x :
00:01:36 #2505 [verbose] > AssertExceptionFormatter) -> x.Text), "text/html")
00:01:37 #2506 [verbose] >
00:01:37 #2507 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:37 #2508 [verbose] > //// test
00:01:37 #2509 [verbose] >
00:01:37 #2510 [verbose] > let inline __expect fn log expected actual =
00:01:37 #2511 [verbose] > if log then printfn $"{actual.ToDisplayString ()}"
00:01:37 #2512 [verbose] > try
00:01:37 #2513 [verbose] > "Testing.__expect" |> fn actual expected
00:01:37 #2514 [verbose] > with :? Expecto.AssertException as ex ->
00:01:37 #2515 [verbose] > AssertExceptionFormatter(ex).Display () |> ignore
00:01:37 #2516 [verbose] > failwith (ex.GetType().FullName)
00:01:37 #2517 [verbose] >
00:01:37 #2518 [verbose] > let inline __contains log expected actual = __expect Expecto.Expect.contains log
00:01:37 #2519 [verbose] > expected actual
00:01:37 #2520 [verbose] > let inline _contains expected actual = __contains true expected actual
00:01:37 #2521 [verbose] >
00:01:37 #2522 [verbose] > let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
00:01:37 #2523 [verbose] > expected actual
00:01:37 #2524 [verbose] > let inline _assertEqual expected actual = __assertEqual true expected actual
00:01:37 #2525 [verbose] >
00:01:37 #2526 [verbose] > let inline __isGreaterThan log expected actual = __expect
00:01:37 #2527 [verbose] > Expecto.Expect.isGreaterThan log ex...
00:01:37 #2528 [verbose] >
00:01:37 #2529 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:37 #2530 [verbose] > //// test
00:01:37 #2531 [verbose] >
00:01:37 #2532 [verbose] > let inline __isBetween log a b actual =
00:01:37 #2533 [verbose] > let inline isBetween actual (a, b) _ =
00:01:37 #2534 [verbose] > __isGreaterThanOrEqual log a actual
00:01:37 #2535 [verbose] > __isLessThanOrEqual log b actual
00:01:37 #2536 [verbose] > __expect isBetween log (a, b) actual
00:01:37 #2537 [verbose] > let inline _isBetween a b actual = __isBetween true a b actual
00:01:37 #2538 [verbose] >
00:01:37 #2539 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:37 #2540 [verbose] > #!import ../../lib/spiral/common.fsx
00:01:37 #2541 [verbose] > #!import ../../lib/spiral/sm.fsx
00:01:37 #2542 [verbose] > #!import ../../lib/spiral/date_time.fsx
00:01:37 #2543 [verbose] > #!import ../../lib/spiral/file_system.fsx
00:01:37 #2544 [verbose] > #!import ../../lib/spiral/trace.fsx
00:01:37 #2545 [verbose] > #!import ../../lib/spiral/lib.fsx
00:01:37 #2546 [verbose] > #!import ../../lib/fsharp/Common.fs
00:01:37 #2547 [verbose] >
00:01:37 #2548 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:37 #2549 [verbose] > type [[<Struct>]] US0 =
00:01:37 #2550 [verbose] > | US0_0
00:01:37 #2551 [verbose] > | US0_1
00:01:37 #2552 [verbose] > and [[<Struct>]] US1 =
00:01:37 #2553 [verbose] > | US1_0 of f0_0 : US0
00:01:37 #2554 [verbose] > | US1_1
00:01:37 #2555 [verbose] > let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
00:01:37 #2556 [verbose] > let v1 : System.IDisposable option = None
00:01:37 #2557 [verbose] > let mutable _v1 = v1
00:01:37 #2558 [verbose] > #if FABLE_COMPILER_RUST && !WASM && !CONTRACT
00:01:37 #2559 [verbose] > let v2 : System.IDisposable = null |> unbox<System.IDisposable>
00:01:37 #2560 [verbose] > v2
00:01:37 #2561 [verbose] > #endif
00:01:37 #2562 [verbose] > #if FABLE_COMPILER_RUST && WASM
00:01:37 #2563 [verbose] > let v3 : System.IDisposable = null |> unbox<System.IDisposable>
00:01:37 #2564 [verbose] > v3
00:01:37 #2565 [verbose] > #endif
00:01:37 #2566 [verbose] > #if FABLE_COMPILER_RUST && CONTRACT
00:01:37 #2567 [verbose] > let v4 : System.IDisposable = null |> unbox<System.IDisposable>
00:01:37 #2568 [verbose] > v4
00:01:37 #2569 [verbose] > #endif
00:01:37 #2570 [verbose] > #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
00:01:37 #2571 [verbose] > !WASM && !CONTRACT
00:01:37 #2572 [verbose] > let v5 : System.ID...
00:01:38 #2573 [verbose] >
00:01:38 #2574 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:38 #2575 [verbose] > type Mut0 = {mutable l0 : int32; mutable l1 : string}
00:01:38 #2576 [verbose] > and Mut1 = {mutable l0 : int32}
00:01:38 #2577 [verbose] > let rec closure1 (v0 : string) (v1 : string) : bool =
00:01:38 #2578 [verbose] > let v2 : bool = v1.Contains v0
00:01:38 #2579 [verbose] > v2
00:01:38 #2580 [verbose] > and closure0 () (v0 : string) : (string -> bool) =
00:01:38 #2581 [verbose] > closure1(v0)
00:01:38 #2582 [verbose] > and closure3 (v0 : string) (v1 : string) : bool =
00:01:38 #2583 [verbose] > let v2 : bool = v1.EndsWith v0
00:01:38 #2584 [verbose] > v2
00:01:38 #2585 [verbose] > and closure2 () (v0 : string) : (string -> bool) =
00:01:38 #2586 [verbose] > closure3(v0)
00:01:38 #2587 [verbose] > and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
00:01:38 #2588 [verbose] > let v3 : string = v2.PadLeft (v0, v1)
00:01:38 #2589 [verbose] > v3
00:01:38 #2590 [verbose] > and closure5 (v0 : int32) (v1 : char) : (string -> string) =
00:01:38 #2591 [verbose] > closure6(v0, v1)
00:01:38 #2592 [verbose] > and closure4 () (v0 : int32) : (char -> (string -> string)) =
00:01:38 #2593 [verbose] > closure5(v0)
00:01:38 #2594 [verbose] > and closure8 (v0 : int32) (v1 : string) : string =
00:01:38 #2595 [verbose] > let v2 : stri...
00:01:39 #2596 [verbose] >
00:01:39 #2597 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:39 #2598 [verbose] > let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
00:01:39 #2599 [verbose] > let v2 : (System.Guid -> string) = _.ToString()
00:01:39 #2600 [verbose] > let v3 : string = v2 v0
00:01:39 #2601 [verbose] > let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
00:01:39 #2602 [verbose] > let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
00:01:39 #2603 [verbose] > v5
00:01:39 #2604 [verbose] > and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
00:01:39 #2605 [verbose] > closure1(v0)
00:01:39 #2606 [verbose] > and closure5 (v0 : string, v1 : string) (v2 : string) : string =
00:01:39 #2607 [verbose] > let v3 : string = v2.Replace (v0, v1)
00:01:39 #2608 [verbose] > v3
00:01:39 #2609 [verbose] > and closure4 (v0 : string) (v1 : string) : (string -> string) =
00:01:39 #2610 [verbose] > closure5(v0, v1)
00:01:39 #2611 [verbose] > and closure3 () (v0 : string) : (string -> (string -> string)) =
00:01:39 #2612 [verbose] > closure4(v0)
00:01:39 #2613 [verbose] > and method0 () : (string -> (string -> (string -> string))) =
00:01:39 #2614 [verbose] > closure3()
00:01:39 #2615 [verbose] > and closure2 (...
00:01:39 #2616 [verbose] >
00:01:39 #2617 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:39 #2618 [verbose] > #if FABLE_COMPILER // file_system.types
00:01:39 #2619 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
00:01:39 #2620 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
00:01:39 #2621 [verbose] > base64_DecodeError = class end
00:01:39 #2622 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
00:01:39 #2623 [verbose] > = class end
00:01:39 #2624 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
00:01:39 #2625 [verbose] > = class end
00:01:39 #2626 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
00:01:39 #2627 [verbose] > serde_json_Error = class end
00:01:39 #2628 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
00:01:39 #2629 [verbose] > serde_json_Value = class end
00:01:39 #2630 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
00:01:39 #2631 [verbose] > serde_wasm_bindgen_Error = class end
00:01:39 #2632 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
00:01:41 #2633 [verbose] >
00:01:41 #2634 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:41 #2635 [verbose] > module State = let mutable trace_state = None
00:01:41 #2636 [verbose] > type [[<Struct>]] US0 =
00:01:41 #2637 [verbose] > | US0_0
00:01:41 #2638 [verbose] > | US0_1
00:01:41 #2639 [verbose] > | US0_2
00:01:41 #2640 [verbose] > | US0_3
00:01:41 #2641 [verbose] > | US0_4
00:01:41 #2642 [verbose] > and Mut0 = {mutable l0 : int64}
00:01:41 #2643 [verbose] > and Mut1 = {mutable l0 : bool}
00:01:41 #2644 [verbose] > and Mut2 = {mutable l0 : US0}
00:01:41 #2645 [verbose] > and [[<Struct>]] US1 =
00:01:41 #2646 [verbose] > | US1_0 of f0_0 : int64
00:01:41 #2647 [verbose] > | US1_1
00:01:41 #2648 [verbose] > and [[<Struct>]] US2 =
00:01:41 #2649 [verbose] > | US2_0 of f0_0 : int64
00:01:41 #2650 [verbose] > | US2_1
00:01:41 #2651 [verbose] > let rec method1 (v0 : int64 option) : int64 option =
00:01:41 #2652 [verbose] > v0
00:01:41 #2653 [verbose] > and method2 (v0 : int64 option) : int64 option =
00:01:41 #2654 [verbose] > v0
00:01:41 #2655 [verbose] > and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
00:01:41 #2656 [verbose] > let v0 : Mut1 = {l0 = true} : Mut1
00:01:41 #2657 [verbose] > let v1 : Mut0 = {l0 = 0L} : Mut0
00:01:41 #2658 [verbose] > let v2 : US0 = US0_0
00:01:41 #2659 [verbose] > let v3 : Mut2 = {l0 = v2} : Mut2
00:01:41 #2660 [verbose] > let v4 : Mut1 = {l0 = false} : Mut1
00:01:41 #2661 [verbose] > let v5 : int64 option option = None
00:01:41 #2662 [verbose] > ...
00:01:42 #2663 [verbose] >
00:01:42 #2664 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:42 #2665 [verbose] > module SpiralTrace =
00:01:42 #2666 [verbose] > let get_trace_state () =
00:01:42 #2667 [verbose] > #if !INTERACTIVE
00:01:42 #2668 [verbose] > Trace.get_trace_state ()
00:01:42 #2669 [verbose] > #else
00:01:42 #2670 [verbose] > get_trace_state ()
00:01:42 #2671 [verbose] > #endif
00:01:42 #2672 [verbose] > let trace x =
00:01:42 #2673 [verbose] > #if !INTERACTIVE
00:01:42 #2674 [verbose] > Trace.trace x
00:01:42 #2675 [verbose] > #else
00:01:42 #2676 [verbose] > trace x
00:01:42 #2677 [verbose] > #endif
00:01:42 #2678 [verbose] >
00:01:42 #2679 [verbose] > let US0_0 =
00:01:42 #2680 [verbose] > #if !INTERACTIVE
00:01:42 #2681 [verbose] > Trace.US0_0
00:01:42 #2682 [verbose] > #else
00:01:42 #2683 [verbose] > US0_0
00:01:42 #2684 [verbose] > #endif
00:01:42 #2685 [verbose] >
00:01:42 #2686 [verbose] > let US0_1 =
00:01:42 #2687 [verbose] > #if !INTERACTIVE
00:01:42 #2688 [verbose] > Trace.US0_1
00:01:42 #2689 [verbose] > #else
00:01:42 #2690 [verbose] > US0_1
00:01:42 #2691 [verbose] > #endif
00:01:42 #2692 [verbose] >
00:01:42 #2693 [verbose] > let US0_2 =
00:01:42 #2694 [verbose] > #if !INTERACTIVE
00:01:42 #2695 [verbose] > Trace.US0_2
00:01:42 #2696 [verbose] > #else
00:01:42 #2697 [verbose] > US0_2
00:01:42 #2698 [verbose] > #endif
00:01:42 #2699 [verbose] >
00:01:42 #2700 [verbose] > let US0_3 =
00:01:42 #2701 [verbose] > #if !INTERACTIVE
00:01:42 #2702 [verbose] > Trace.US0_3
00:01:42 #2703 [verbose] > #else
00:01:42 #2704 [verbose] > US0_3
00:01:42 #2705 [verbose] > #endif
00:01:42 #2706 [verbose] >
00:01:42 #2707 [verbose] > let US0_4 =
00:01:42 #2708 [verbose] > #if !INTERACTIVE
00:01:42 #2709 [verbose] > Trace.US0_4
00:01:42 #2710 [verbose] > #else
00:01:42 #2711 [verbose] > US0_4
00:01:42 #2712 [verbose] > #endif
00:01:42 #2713 [verbose] >
00:01:42 #2714 [verbose] >
00:01:42 #2715 [verbose] > #if !FABLE_COMPILER && !WASM && !CONTRACT
00:01:42 #2716 [verbose] > module SpiralDateTime =
00:01:42 #2717 [verbose] > let format x =
00:01:42 #2718 [verbose] > #if !INTERACTIVE
00:01:42 #2719 [verbose] > Date_ti...
00:01:42 #2720 [verbose] >
00:01:42 #2721 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:42 #2722 [verbose] > #if !INTERACTIVE
00:01:42 #2723 [verbose] > namespace Polyglot
00:01:42 #2724 [verbose] > #endif
00:01:42 #2725 [verbose] >
00:01:42 #2726 [verbose] > module Common =
00:01:42 #2727 [verbose] >
00:01:42 #2728 [verbose] > #if !INTERACTIVE
00:01:42 #2729 [verbose] > open Lib
00:01:42 #2730 [verbose] > #endif
00:01:42 #2731 [verbose] >
00:01:42 #2732 [verbose] > let nl = System.Environment.NewLine
00:01:42 #2733 [verbose] > let q = @""""
00:01:42 #2734 [verbose] >
00:01:42 #2735 [verbose] > let inline cons head tail = head :: tail
00:01:42 #2736 [verbose] >
00:01:42 #2737 [verbose] > /// ## memoize
00:01:42 #2738 [verbose] >
00:01:42 #2739 [verbose] > let inline memoize fn =
00:01:42 #2740 [verbose] > let result = lazy fn ()
00:01:42 #2741 [verbose] > fun () -> result.Value
00:01:42 #2742 [verbose] >
00:01:42 #2743 [verbose] > /// ## TraceLevel
00:01:42 #2744 [verbose] >
00:01:42 #2745 [verbose] > type TraceLevel =
00:01:42 #2746 [verbose] > | Verbose
00:01:42 #2747 [verbose] > | Debug
00:01:42 #2748 [verbose] > | Info
00:01:42 #2749 [verbose] > | Warning
00:01:42 #2750 [verbose] > | Critical
00:01:42 #2751 [verbose] >
00:01:42 #2752 [verbose] > let inline getLocals () = ""
00:01:42 #2753 [verbose] >
00:01:42 #2754 [verbose] > /// ## trace
00:01:42 #2755 [verbose] >
00:01:42 #2756 [verbose] > let to_trace_level = function
00:01:42 #2757 [verbose] > | Verbose -> SpiralTrace.US0_0
00:01:42 #2758 [verbose] > | Debug -> SpiralTrace.US0_1
00:01:42 #2759 [verbose] > | Info -> SpiralTrace.US0_2
00:01:42 #2760 [verbose] > | Warning -> SpiralTrace.US0_3
00:01:42 #2761 [verbose] > | Critical -> SpiralTrace.US0_4
00:01:42 #2762 [verbose] >
00:01:42 #2763 [verbose] > let trace level fn g...
00:01:42 #2764 [verbose] >
00:01:42 #2765 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:42 #2766 [verbose] > #if !INTERACTIVE
00:01:42 #2767 [verbose] > open Lib
00:01:42 #2768 [verbose] > #endif
00:01:42 #2769 [verbose] >
00:01:42 #2770 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:42 #2771 [verbose] > open Common
00:01:42 #2772 [verbose] >
00:01:42 #2773 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:42 #2774 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:42 #2775 [verbose] > │ ## hashText │
00:01:42 #2776 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:42 #2777 [verbose] >
00:01:42 #2778 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:42 #2779 [verbose] > let hashText (input : string) =
00:01:42 #2780 [verbose] > use sha256 = System.Security.Cryptography.SHA256.Create ()
00:01:42 #2781 [verbose] > input
00:01:42 #2782 [verbose] > |> System.Text.Encoding.UTF8.GetBytes
00:01:42 #2783 [verbose] > |> sha256.ComputeHash
00:01:42 #2784 [verbose] > |> Array.map (fun b -> b.ToString "x2")
00:01:42 #2785 [verbose] > |> SpiralSm.concat ""
00:01:42 #2786 [verbose] >
00:01:42 #2787 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:42 #2788 [verbose] > //// test
00:01:42 #2789 [verbose] >
00:01:42 #2790 [verbose] > ""
00:01:42 #2791 [verbose] > |> hashText
00:01:42 #2792 [verbose] > |> _assertEqual
00:01:42 #2793 [verbose] > "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
00:01:42 #2794 [verbose] >
00:01:42 #2795 [verbose] > ╭─[ 59.97ms - stdout ]─────────────────────────────────────────────────────────╮
00:01:42 #2796 [verbose] > │ e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 │
00:01:42 #2797 [verbose] > │ │
00:01:42 #2798 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:42 #2799 [verbose] >
00:01:42 #2800 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:42 #2801 [verbose] > //// test
00:01:42 #2802 [verbose] >
00:01:42 #2803 [verbose] > " "
00:01:42 #2804 [verbose] > |> hashText
00:01:42 #2805 [verbose] > |> _assertEqual
00:01:42 #2806 [verbose] > "36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068"
00:01:42 #2807 [verbose] >
00:01:42 #2808 [verbose] > ╭─[ 32.06ms - stdout ]─────────────────────────────────────────────────────────╮
00:01:42 #2809 [verbose] > │ 36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068 │
00:01:42 #2810 [verbose] > │ │
00:01:42 #2811 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:44 #2812 [verbose] > [NbConvertApp] Converting notebook Crypto.dib.ipynb to html
00:01:44 #2813 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:01:44 #2814 [verbose] > validate(nb)
00:01:45 #2815 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:01:45 #2816 [verbose] > return _pygments_highlight(
00:01:45 #2817 [verbose] > [NbConvertApp] Writing 278464 bytes to Crypto.dib.html
00:01:46 #2818 [debug] executeAsync / exitCode: 0 / output.Length: 12372
00:01:46 #2819 [debug] main / executeCommand / exitCode: 0
00:01:46 #2820 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 FileSystem.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:01:48 #2821 [verbose] >
00:01:48 #2822 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:48 #2823 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:48 #2824 [verbose] > │ # FileSystem (Polyglot) │
00:01:48 #2825 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:48 #2826 [verbose] >
00:01:48 #2827 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:48 #2828 [verbose] > #!import ../../lib/fsharp/Notebooks.dib
00:01:48 #2829 [verbose] > #!import ../../lib/fsharp/Testing.dib
00:01:48 #2830 [verbose] >
00:01:48 #2831 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:48 #2832 [verbose] > #r
00:01:48 #2833 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:01:48 #2834 [verbose] > spNetCore.Html.Abstractions.dll"
00:01:48 #2835 [verbose] > #r
00:01:48 #2836 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:48 #2837 [verbose] > otNet.Interactive.dll"
00:01:48 #2838 [verbose] > #r
00:01:48 #2839 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:48 #2840 [verbose] > otNet.Interactive.FSharp.dll"
00:01:48 #2841 [verbose] > #r
00:01:48 #2842 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:48 #2843 [verbose] > otNet.Interactive.Formatting.dll"
00:01:48 #2844 [verbose] > open System
00:01:48 #2845 [verbose] > open System.IO
00:01:48 #2846 [verbose] > open System.Text
00:01:48 #2847 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:01:52 #2848 [verbose] >
00:01:52 #2849 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:52 #2850 [verbose] > #r
00:01:52 #2851 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:52 #2852 [verbose] > otNet.Interactive.FSharp.dll"
00:01:52 #2853 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:01:52 #2854 [verbose] > #r
00:01:52 #2855 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:01:52 #2856 [verbose] > otNet.Interactive.dll"
00:01:52 #2857 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:01:52 #2858 [verbose] >
00:01:52 #2859 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:52 #2860 [verbose] > //// test
00:01:52 #2861 [verbose] >
00:01:52 #2862 [verbose] > Formatter.ListExpansionLimit <- 100
00:01:53 #2863 [verbose] >
00:01:53 #2864 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:53 #2865 [verbose] > #r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
00:01:53 #2866 [verbose] >
00:01:53 #2867 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:53 #2868 [verbose] > //// test
00:01:53 #2869 [verbose] >
00:01:53 #2870 [verbose] > type AssertExceptionFormatter (ex) =
00:01:53 #2871 [verbose] > member _.Text =
00:01:53 #2872 [verbose] > ex.ToString()
00:01:53 #2873 [verbose] > .Replace("32m", "<span style=\"color: green;\">")
00:01:53 #2874 [verbose] > .Replace("36m", "</span>")
00:01:53 #2875 [verbose] > .Replace("31m", "<span style=\"color: red;\">")
00:01:53 #2876 [verbose] > .Replace("\n", "<br/>\n")
00:01:53 #2877 [verbose] >
00:01:53 #2878 [verbose] >
00:01:53 #2879 [verbose] > Formatter.Register<AssertExceptionFormatter> ((fun (x :
00:01:53 #2880 [verbose] > AssertExceptionFormatter) -> x.Text), "text/html")
00:01:53 #2881 [verbose] >
00:01:53 #2882 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:53 #2883 [verbose] > //// test
00:01:53 #2884 [verbose] >
00:01:53 #2885 [verbose] > let inline __expect fn log expected actual =
00:01:53 #2886 [verbose] > if log then printfn $"{actual.ToDisplayString ()}"
00:01:53 #2887 [verbose] > try
00:01:53 #2888 [verbose] > "Testing.__expect" |> fn actual expected
00:01:53 #2889 [verbose] > with :? Expecto.AssertException as ex ->
00:01:53 #2890 [verbose] > AssertExceptionFormatter(ex).Display () |> ignore
00:01:53 #2891 [verbose] > failwith (ex.GetType().FullName)
00:01:53 #2892 [verbose] >
00:01:53 #2893 [verbose] > let inline __contains log expected actual = __expect Expecto.Expect.contains log
00:01:53 #2894 [verbose] > expected actual
00:01:53 #2895 [verbose] > let inline _contains expected actual = __contains true expected actual
00:01:53 #2896 [verbose] >
00:01:53 #2897 [verbose] > let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
00:01:53 #2898 [verbose] > expected actual
00:01:53 #2899 [verbose] > let inline _assertEqual expected actual = __assertEqual true expected actual
00:01:53 #2900 [verbose] >
00:01:53 #2901 [verbose] > let inline __isGreaterThan log expected actual = __expect
00:01:53 #2902 [verbose] > Expecto.Expect.isGreaterThan log ex...
00:01:54 #2903 [verbose] >
00:01:54 #2904 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:54 #2905 [verbose] > //// test
00:01:54 #2906 [verbose] >
00:01:54 #2907 [verbose] > let inline __isBetween log a b actual =
00:01:54 #2908 [verbose] > let inline isBetween actual (a, b) _ =
00:01:54 #2909 [verbose] > __isGreaterThanOrEqual log a actual
00:01:54 #2910 [verbose] > __isLessThanOrEqual log b actual
00:01:54 #2911 [verbose] > __expect isBetween log (a, b) actual
00:01:54 #2912 [verbose] > let inline _isBetween a b actual = __isBetween true a b actual
00:01:54 #2913 [verbose] >
00:01:54 #2914 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:54 #2915 [verbose] > #r
00:01:54 #2916 [verbose] > @"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan
00:01:54 #2917 [verbose] > dard2.1/FSharp.Control.AsyncSeq.dll"
00:01:54 #2918 [verbose] > #r
00:01:54 #2919 [verbose] > @"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.
00:01:54 #2920 [verbose] > 0/System.Reactive.dll"
00:01:54 #2921 [verbose] > #r
00:01:54 #2922 [verbose] > @"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib
00:01:54 #2923 [verbose] > netstandard2.0/System.Reactive.Linq.dll"
00:01:54 #2924 [verbose] > #r
00:01:54 #2925 [verbose] > @"../../../../../../../.nuget/packages/argu/6.2.2/lib/netstandard2.0/Argu.dll"
00:01:54 #2926 [verbose] > #r
00:01:54 #2927 [verbose] > @"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li
00:01:54 #2928 [verbose] > b/net6.0/System.CommandLine.dll"
00:01:54 #2929 [verbose] >
00:01:54 #2930 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:54 #2931 [verbose] > #!import ../../lib/spiral/common.fsx
00:01:54 #2932 [verbose] > #!import ../../lib/spiral/sm.fsx
00:01:54 #2933 [verbose] > #!import ../../lib/spiral/date_time.fsx
00:01:54 #2934 [verbose] > #!import ../../lib/spiral/file_system.fsx
00:01:54 #2935 [verbose] > #!import ../../lib/spiral/trace.fsx
00:01:54 #2936 [verbose] > #!import ../../lib/spiral/lib.fsx
00:01:54 #2937 [verbose] > #!import ../../lib/fsharp/Common.fs
00:01:54 #2938 [verbose] > #!import ../../lib/fsharp/CommonFSharp.fs
00:01:54 #2939 [verbose] > #!import ../../lib/fsharp/Async.fs
00:01:54 #2940 [verbose] > #!import ../../lib/fsharp/AsyncSeq.fs
00:01:54 #2941 [verbose] > #!import ../../lib/fsharp/Runtime.fs
00:01:54 #2942 [verbose] >
00:01:54 #2943 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:54 #2944 [verbose] > type [[<Struct>]] US0 =
00:01:54 #2945 [verbose] > | US0_0
00:01:54 #2946 [verbose] > | US0_1
00:01:54 #2947 [verbose] > and [[<Struct>]] US1 =
00:01:54 #2948 [verbose] > | US1_0 of f0_0 : US0
00:01:54 #2949 [verbose] > | US1_1
00:01:54 #2950 [verbose] > let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
00:01:54 #2951 [verbose] > let v1 : System.IDisposable option = None
00:01:54 #2952 [verbose] > let mutable _v1 = v1
00:01:54 #2953 [verbose] > #if FABLE_COMPILER_RUST && !WASM && !CONTRACT
00:01:54 #2954 [verbose] > let v2 : System.IDisposable = null |> unbox<System.IDisposable>
00:01:54 #2955 [verbose] > v2
00:01:54 #2956 [verbose] > #endif
00:01:54 #2957 [verbose] > #if FABLE_COMPILER_RUST && WASM
00:01:54 #2958 [verbose] > let v3 : System.IDisposable = null |> unbox<System.IDisposable>
00:01:54 #2959 [verbose] > v3
00:01:54 #2960 [verbose] > #endif
00:01:54 #2961 [verbose] > #if FABLE_COMPILER_RUST && CONTRACT
00:01:54 #2962 [verbose] > let v4 : System.IDisposable = null |> unbox<System.IDisposable>
00:01:54 #2963 [verbose] > v4
00:01:54 #2964 [verbose] > #endif
00:01:54 #2965 [verbose] > #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
00:01:54 #2966 [verbose] > !WASM && !CONTRACT
00:01:54 #2967 [verbose] > let v5 : System.ID...
00:01:55 #2968 [verbose] >
00:01:55 #2969 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:55 #2970 [verbose] > type Mut0 = {mutable l0 : int32; mutable l1 : string}
00:01:55 #2971 [verbose] > and Mut1 = {mutable l0 : int32}
00:01:55 #2972 [verbose] > let rec closure1 (v0 : string) (v1 : string) : bool =
00:01:55 #2973 [verbose] > let v2 : bool = v1.Contains v0
00:01:55 #2974 [verbose] > v2
00:01:55 #2975 [verbose] > and closure0 () (v0 : string) : (string -> bool) =
00:01:55 #2976 [verbose] > closure1(v0)
00:01:55 #2977 [verbose] > and closure3 (v0 : string) (v1 : string) : bool =
00:01:55 #2978 [verbose] > let v2 : bool = v1.EndsWith v0
00:01:55 #2979 [verbose] > v2
00:01:55 #2980 [verbose] > and closure2 () (v0 : string) : (string -> bool) =
00:01:55 #2981 [verbose] > closure3(v0)
00:01:55 #2982 [verbose] > and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
00:01:55 #2983 [verbose] > let v3 : string = v2.PadLeft (v0, v1)
00:01:55 #2984 [verbose] > v3
00:01:55 #2985 [verbose] > and closure5 (v0 : int32) (v1 : char) : (string -> string) =
00:01:55 #2986 [verbose] > closure6(v0, v1)
00:01:55 #2987 [verbose] > and closure4 () (v0 : int32) : (char -> (string -> string)) =
00:01:55 #2988 [verbose] > closure5(v0)
00:01:55 #2989 [verbose] > and closure8 (v0 : int32) (v1 : string) : string =
00:01:55 #2990 [verbose] > let v2 : stri...
00:01:57 #2991 [verbose] >
00:01:57 #2992 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:57 #2993 [verbose] > let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
00:01:57 #2994 [verbose] > let v2 : (System.Guid -> string) = _.ToString()
00:01:57 #2995 [verbose] > let v3 : string = v2 v0
00:01:57 #2996 [verbose] > let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
00:01:57 #2997 [verbose] > let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
00:01:57 #2998 [verbose] > v5
00:01:57 #2999 [verbose] > and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
00:01:57 #3000 [verbose] > closure1(v0)
00:01:57 #3001 [verbose] > and closure5 (v0 : string, v1 : string) (v2 : string) : string =
00:01:57 #3002 [verbose] > let v3 : string = v2.Replace (v0, v1)
00:01:57 #3003 [verbose] > v3
00:01:57 #3004 [verbose] > and closure4 (v0 : string) (v1 : string) : (string -> string) =
00:01:57 #3005 [verbose] > closure5(v0, v1)
00:01:57 #3006 [verbose] > and closure3 () (v0 : string) : (string -> (string -> string)) =
00:01:57 #3007 [verbose] > closure4(v0)
00:01:57 #3008 [verbose] > and method0 () : (string -> (string -> (string -> string))) =
00:01:57 #3009 [verbose] > closure3()
00:01:57 #3010 [verbose] > and closure2 (...
00:01:57 #3011 [verbose] >
00:01:57 #3012 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:01:57 #3013 [verbose] > #if FABLE_COMPILER // file_system.types
00:01:57 #3014 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
00:01:57 #3015 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
00:01:57 #3016 [verbose] > base64_DecodeError = class end
00:01:57 #3017 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
00:01:57 #3018 [verbose] > = class end
00:01:57 #3019 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
00:01:57 #3020 [verbose] > = class end
00:01:57 #3021 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
00:01:57 #3022 [verbose] > serde_json_Error = class end
00:01:57 #3023 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
00:01:57 #3024 [verbose] > serde_json_Value = class end
00:01:57 #3025 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
00:01:57 #3026 [verbose] > serde_wasm_bindgen_Error = class end
00:01:57 #3027 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
00:02:00 #3028 [verbose] >
00:02:00 #3029 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:00 #3030 [verbose] > module State = let mutable trace_state = None
00:02:00 #3031 [verbose] > type [[<Struct>]] US0 =
00:02:00 #3032 [verbose] > | US0_0
00:02:00 #3033 [verbose] > | US0_1
00:02:00 #3034 [verbose] > | US0_2
00:02:00 #3035 [verbose] > | US0_3
00:02:00 #3036 [verbose] > | US0_4
00:02:00 #3037 [verbose] > and Mut0 = {mutable l0 : int64}
00:02:00 #3038 [verbose] > and Mut1 = {mutable l0 : bool}
00:02:00 #3039 [verbose] > and Mut2 = {mutable l0 : US0}
00:02:00 #3040 [verbose] > and [[<Struct>]] US1 =
00:02:00 #3041 [verbose] > | US1_0 of f0_0 : int64
00:02:00 #3042 [verbose] > | US1_1
00:02:00 #3043 [verbose] > and [[<Struct>]] US2 =
00:02:00 #3044 [verbose] > | US2_0 of f0_0 : int64
00:02:00 #3045 [verbose] > | US2_1
00:02:00 #3046 [verbose] > let rec method1 (v0 : int64 option) : int64 option =
00:02:00 #3047 [verbose] > v0
00:02:00 #3048 [verbose] > and method2 (v0 : int64 option) : int64 option =
00:02:00 #3049 [verbose] > v0
00:02:00 #3050 [verbose] > and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
00:02:00 #3051 [verbose] > let v0 : Mut1 = {l0 = true} : Mut1
00:02:00 #3052 [verbose] > let v1 : Mut0 = {l0 = 0L} : Mut0
00:02:00 #3053 [verbose] > let v2 : US0 = US0_0
00:02:00 #3054 [verbose] > let v3 : Mut2 = {l0 = v2} : Mut2
00:02:00 #3055 [verbose] > let v4 : Mut1 = {l0 = false} : Mut1
00:02:00 #3056 [verbose] > let v5 : int64 option option = None
00:02:00 #3057 [verbose] > ...
00:02:01 #3058 [verbose] >
00:02:01 #3059 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:01 #3060 [verbose] > module SpiralTrace =
00:02:01 #3061 [verbose] > let get_trace_state () =
00:02:01 #3062 [verbose] > #if !INTERACTIVE
00:02:01 #3063 [verbose] > Trace.get_trace_state ()
00:02:01 #3064 [verbose] > #else
00:02:01 #3065 [verbose] > get_trace_state ()
00:02:01 #3066 [verbose] > #endif
00:02:01 #3067 [verbose] > let trace x =
00:02:01 #3068 [verbose] > #if !INTERACTIVE
00:02:01 #3069 [verbose] > Trace.trace x
00:02:01 #3070 [verbose] > #else
00:02:01 #3071 [verbose] > trace x
00:02:01 #3072 [verbose] > #endif
00:02:01 #3073 [verbose] >
00:02:01 #3074 [verbose] > let US0_0 =
00:02:01 #3075 [verbose] > #if !INTERACTIVE
00:02:01 #3076 [verbose] > Trace.US0_0
00:02:01 #3077 [verbose] > #else
00:02:01 #3078 [verbose] > US0_0
00:02:01 #3079 [verbose] > #endif
00:02:01 #3080 [verbose] >
00:02:01 #3081 [verbose] > let US0_1 =
00:02:01 #3082 [verbose] > #if !INTERACTIVE
00:02:01 #3083 [verbose] > Trace.US0_1
00:02:01 #3084 [verbose] > #else
00:02:01 #3085 [verbose] > US0_1
00:02:01 #3086 [verbose] > #endif
00:02:01 #3087 [verbose] >
00:02:01 #3088 [verbose] > let US0_2 =
00:02:01 #3089 [verbose] > #if !INTERACTIVE
00:02:01 #3090 [verbose] > Trace.US0_2
00:02:01 #3091 [verbose] > #else
00:02:01 #3092 [verbose] > US0_2
00:02:01 #3093 [verbose] > #endif
00:02:01 #3094 [verbose] >
00:02:01 #3095 [verbose] > let US0_3 =
00:02:01 #3096 [verbose] > #if !INTERACTIVE
00:02:01 #3097 [verbose] > Trace.US0_3
00:02:01 #3098 [verbose] > #else
00:02:01 #3099 [verbose] > US0_3
00:02:01 #3100 [verbose] > #endif
00:02:01 #3101 [verbose] >
00:02:01 #3102 [verbose] > let US0_4 =
00:02:01 #3103 [verbose] > #if !INTERACTIVE
00:02:01 #3104 [verbose] > Trace.US0_4
00:02:01 #3105 [verbose] > #else
00:02:01 #3106 [verbose] > US0_4
00:02:01 #3107 [verbose] > #endif
00:02:01 #3108 [verbose] >
00:02:01 #3109 [verbose] >
00:02:01 #3110 [verbose] > #if !FABLE_COMPILER && !WASM && !CONTRACT
00:02:01 #3111 [verbose] > module SpiralDateTime =
00:02:01 #3112 [verbose] > let format x =
00:02:01 #3113 [verbose] > #if !INTERACTIVE
00:02:01 #3114 [verbose] > Date_ti...
00:02:01 #3115 [verbose] >
00:02:01 #3116 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:01 #3117 [verbose] > #if !INTERACTIVE
00:02:01 #3118 [verbose] > namespace Polyglot
00:02:01 #3119 [verbose] > #endif
00:02:01 #3120 [verbose] >
00:02:01 #3121 [verbose] > module Common =
00:02:01 #3122 [verbose] >
00:02:01 #3123 [verbose] > #if !INTERACTIVE
00:02:01 #3124 [verbose] > open Lib
00:02:01 #3125 [verbose] > #endif
00:02:01 #3126 [verbose] >
00:02:01 #3127 [verbose] > let nl = System.Environment.NewLine
00:02:01 #3128 [verbose] > let q = @""""
00:02:01 #3129 [verbose] >
00:02:01 #3130 [verbose] > let inline cons head tail = head :: tail
00:02:01 #3131 [verbose] >
00:02:01 #3132 [verbose] > /// ## memoize
00:02:01 #3133 [verbose] >
00:02:01 #3134 [verbose] > let inline memoize fn =
00:02:01 #3135 [verbose] > let result = lazy fn ()
00:02:01 #3136 [verbose] > fun () -> result.Value
00:02:01 #3137 [verbose] >
00:02:01 #3138 [verbose] > /// ## TraceLevel
00:02:01 #3139 [verbose] >
00:02:01 #3140 [verbose] > type TraceLevel =
00:02:01 #3141 [verbose] > | Verbose
00:02:01 #3142 [verbose] > | Debug
00:02:01 #3143 [verbose] > | Info
00:02:01 #3144 [verbose] > | Warning
00:02:01 #3145 [verbose] > | Critical
00:02:01 #3146 [verbose] >
00:02:01 #3147 [verbose] > let inline getLocals () = ""
00:02:01 #3148 [verbose] >
00:02:01 #3149 [verbose] > /// ## trace
00:02:01 #3150 [verbose] >
00:02:01 #3151 [verbose] > let to_trace_level = function
00:02:01 #3152 [verbose] > | Verbose -> SpiralTrace.US0_0
00:02:01 #3153 [verbose] > | Debug -> SpiralTrace.US0_1
00:02:01 #3154 [verbose] > | Info -> SpiralTrace.US0_2
00:02:01 #3155 [verbose] > | Warning -> SpiralTrace.US0_3
00:02:01 #3156 [verbose] > | Critical -> SpiralTrace.US0_4
00:02:01 #3157 [verbose] >
00:02:01 #3158 [verbose] > let trace level fn g...
00:02:01 #3159 [verbose] >
00:02:01 #3160 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:01 #3161 [verbose] > #if !INTERACTIVE
00:02:01 #3162 [verbose] > namespace Polyglot
00:02:01 #3163 [verbose] > #endif
00:02:01 #3164 [verbose] >
00:02:01 #3165 [verbose] > module CommonFSharp =
00:02:01 #3166 [verbose] >
00:02:01 #3167 [verbose] > open Common
00:02:01 #3168 [verbose] >
00:02:01 #3169 [verbose] > /// ## getUnionCaseName
00:02:01 #3170 [verbose] >
00:02:01 #3171 [verbose] > let inline getUnionCaseName<'T> (x: 'T) =
00:02:01 #3172 [verbose] > match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with
00:02:01 #3173 [verbose] > | case, _ -> case.Name
00:02:01 #3174 [verbose] >
00:02:01 #3175 [verbose] >
00:02:01 #3176 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:01 #3177 [verbose] > #if !INTERACTIVE
00:02:01 #3178 [verbose] > namespace Polyglot
00:02:01 #3179 [verbose] > #endif
00:02:01 #3180 [verbose] >
00:02:01 #3181 [verbose] > module Async =
00:02:01 #3182 [verbose] >
00:02:01 #3183 [verbose] > #if !INTERACTIVE
00:02:01 #3184 [verbose] > open Lib
00:02:01 #3185 [verbose] > #endif
00:02:01 #3186 [verbose] >
00:02:01 #3187 [verbose] > open Common
00:02:01 #3188 [verbose] >
00:02:01 #3189 [verbose] > /// ## choice
00:02:01 #3190 [verbose] >
00:02:01 #3191 [verbose] > let inline choice asyncs = async {
00:02:01 #3192 [verbose] > let e = Event<_> ()
00:02:01 #3193 [verbose] > use cts = new System.Threading.CancellationTokenSource ()
00:02:01 #3194 [verbose] > let fn =
00:02:01 #3195 [verbose] > asyncs
00:02:01 #3196 [verbose] > |> Seq.map (fun a -> async {
00:02:01 #3197 [verbose] > let! x = a
00:02:01 #3198 [verbose] > e.Trigger x
00:02:01 #3199 [verbose] > })
00:02:01 #3200 [verbose] > |> Async.Parallel
00:02:01 #3201 [verbose] > |> Async.Ignore
00:02:01 #3202 [verbose] > Async.Start (fn, cts.Token)
00:02:01 #3203 [verbose] > let! result = Async.AwaitEvent e.Publish
00:02:01 #3204 [verbose] > cts.Cancel ()
00:02:01 #3205 [verbose] > return result
00:02:01 #3206 [verbose] > }
00:02:01 #3207 [verbose] >
00:02:01 #3208 [verbose] > /// ## map
00:02:01 #3209 [verbose] >
00:02:01 #3210 [verbose] > let inline map fn a = async {
00:02:01 #3211 [verbose] > let! x = a
00:02:01 #3212 [verbose] > return fn x
00:02:01 #3213 [verbose] > }
00:02:01 #3214 [verbose] >
00:02:01 #3215 [verbose] > /// ## catch
00:02:01 #3216 [verbose] >
00:02:01 #3217 [verbose] > let inline catch a =
00:02:01 #3218 [verbose] > ...
00:02:03 #3219 [verbose] >
00:02:03 #3220 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:03 #3221 [verbose] > #if !INTERACTIVE
00:02:03 #3222 [verbose] > namespace Polyglot
00:02:03 #3223 [verbose] > #endif
00:02:03 #3224 [verbose] >
00:02:03 #3225 [verbose] > module AsyncSeq =
00:02:03 #3226 [verbose] >
00:02:03 #3227 [verbose] > #if !INTERACTIVE
00:02:03 #3228 [verbose] > open Lib
00:02:03 #3229 [verbose] > #endif
00:02:03 #3230 [verbose] >
00:02:03 #3231 [verbose] > open Common
00:02:03 #3232 [verbose] >
00:02:03 #3233 [verbose] > /// ## subscribeEvent
00:02:03 #3234 [verbose] >
00:02:03 #3235 [verbose] > let inline subscribeEvent (event: IEvent<'H, 'A>) map =
00:02:03 #3236 [verbose] > let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,
00:02:03 #3237 [verbose] > 'A>(event.AddHandler, event.RemoveHandler)
00:02:03 #3238 [verbose] > System.Reactive.Linq.Observable.Select (observable, fun event -> map
00:02:03 #3239 [verbose] > event.EventArgs)
00:02:03 #3240 [verbose] > |> FSharp.Control.AsyncSeq.ofObservableBuffered
00:02:03 #3241 [verbose] >
00:02:03 #3242 [verbose] > let subscribeToken (token : System.Threading.CancellationToken) =
00:02:03 #3243 [verbose] > let tcs = new System.Threading.Tasks.TaskCompletionSource ()
00:02:03 #3244 [verbose] > System.Action tcs.SetResult |> token.Register |> ignore
00:02:03 #3245 [verbose] > let start = System.DateTime.Now.Ticks
00:02:03 #3246 [verbose] > FSharp.Control.A...
00:02:04 #3247 [verbose] >
00:02:04 #3248 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:04 #3249 [verbose] > #if !INTERACTIVE
00:02:04 #3250 [verbose] > namespace Polyglot
00:02:04 #3251 [verbose] > #endif
00:02:04 #3252 [verbose] >
00:02:04 #3253 [verbose] > module Runtime =
00:02:04 #3254 [verbose] >
00:02:04 #3255 [verbose] > #if !INTERACTIVE
00:02:04 #3256 [verbose] > open Lib
00:02:04 #3257 [verbose] > #endif
00:02:04 #3258 [verbose] >
00:02:04 #3259 [verbose] > open Common
00:02:04 #3260 [verbose] >
00:02:04 #3261 [verbose] > /// ## isWindows
00:02:04 #3262 [verbose] >
00:02:04 #3263 [verbose] > let isWindows =
00:02:04 #3264 [verbose] > fun () ->
00:02:04 #3265 [verbose] > System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform
00:02:04 #3266 [verbose] > System.Runtime.InteropServices.OSPlatform.Windows
00:02:04 #3267 [verbose] > |> memoize
00:02:04 #3268 [verbose] >
00:02:04 #3269 [verbose] > /// ## getExecutableSuffix
00:02:04 #3270 [verbose] >
00:02:04 #3271 [verbose] > let inline getExecutableSuffix () =
00:02:04 #3272 [verbose] > if isWindows ()
00:02:04 #3273 [verbose] > then ".exe"
00:02:04 #3274 [verbose] > else ""
00:02:04 #3275 [verbose] >
00:02:04 #3276 [verbose] > /// ## splitCommand
00:02:04 #3277 [verbose] >
00:02:04 #3278 [verbose] > type private CommandParseStep =
00:02:04 #3279 [verbose] > | Start
00:02:04 #3280 [verbose] > | Path of quoted: bool
00:02:04 #3281 [verbose] > | Arguments
00:02:04 #3282 [verbose] >
00:02:04 #3283 [verbose] > let splitCommand (command: string) =
00:02:04 #3284 [verbose] > let rec loop (path, args) chars step =
00:02:04 #3285 [verbose] > match chars, step with
00:02:04 #3286 [verbose] > | ('"' | '\'') ...
00:02:05 #3287 [verbose] >
00:02:05 #3288 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:05 #3289 [verbose] > #if !INTERACTIVE
00:02:05 #3290 [verbose] > open Lib
00:02:05 #3291 [verbose] > #endif
00:02:05 #3292 [verbose] >
00:02:05 #3293 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:05 #3294 [verbose] > open Common
00:02:05 #3295 [verbose] > open SpiralFileSystem.Operators
00:02:05 #3296 [verbose] >
00:02:05 #3297 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:05 #3298 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:05 #3299 [verbose] > │ ## watchDirectory │
00:02:05 #3300 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:05 #3301 [verbose] >
00:02:05 #3302 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:05 #3303 [verbose] > [[<RequireQualifiedAccess>]]
00:02:05 #3304 [verbose] > type FileSystemChangeType =
00:02:05 #3305 [verbose] > | Failure
00:02:05 #3306 [verbose] > | Changed
00:02:05 #3307 [verbose] > | Created
00:02:05 #3308 [verbose] > | Deleted
00:02:05 #3309 [verbose] > | Renamed
00:02:05 #3310 [verbose] >
00:02:05 #3311 [verbose] > [[<RequireQualifiedAccess>]]
00:02:05 #3312 [verbose] > type FileSystemChange =
00:02:05 #3313 [verbose] > | Failure of exn: exn
00:02:05 #3314 [verbose] > | Changed of path: string * content: string option
00:02:05 #3315 [verbose] > | Created of path: string * content: string option
00:02:05 #3316 [verbose] > | Deleted of path: string
00:02:05 #3317 [verbose] > | Renamed of oldPath: string * (string * string option)
00:02:05 #3318 [verbose] >
00:02:05 #3319 [verbose] >
00:02:05 #3320 [verbose] > let inline watchDirectoryWithFilter filter shouldReadContent path =
00:02:05 #3321 [verbose] > let fullPath = path |> System.IO.Path.GetFullPath
00:02:05 #3322 [verbose] > let getLocals () = $"filter: {filter} / {getLocals ()}"
00:02:05 #3323 [verbose] >
00:02:05 #3324 [verbose] > let watcher =
00:02:05 #3325 [verbose] > new System.IO.FileSystemWatcher (
00:02:05 #3326 [verbose] > Path = fullPath,
00:02:05 #3327 [verbose] > NotifyFilter = filter,
00:02:05 #3328 [verbose] > EnableRaisingEvents = true,
00:02:05 #3329 [verbose] > IncludeSubdirectories = true
00:02:05 #3330 [verbose] > )
00:02:05 #3331 [verbose] >
00:02:05 #3332 [verbose] > let inline getEventPath (path : string) =
00:02:05 #3333 [verbose] > path |> SpiralSm.trim |> SpiralSm.replace fullPath "" |>
00:02:05 #3334 [verbose] > SpiralSm.trim_start [[| '/'; '\\' |]]
00:02:05 #3335 [verbose] >
00:02:05 #3336 [verbose] > let inline ticks () =
00:02:05 #3337 [verbose] > System.DateTime.UtcNow.Ticks
00:02:05 #3338 [verbose] >
00:02:05 #3339 [verbose] > let changedStream =
00:02:05 #3340 [verbose] > AsyncSeq.subscribeEvent
00:02:05 #3341 [verbose] > watcher.Changed
00:02:05 #3342 [verbose] > (fun event ->
00:02:05 #3343 [verbose] > ticks (),
00:02:05 #3344 [verbose] > [[ FileSystemChange.Changed (getEventPath event.FullPath, None)
00:02:05 #3345 [verbose] > ]]
00:02:05 #3346 [verbose] > )
00:02:05 #3347 [verbose] >
00:02:05 #3348 [verbose] > let deletedStream =
00:02:05 #3349 [verbose] > AsyncSeq.subscribeEvent
00:02:05 #3350 [verbose] > watcher.Deleted
00:02:05 #3351 [verbose] > (fun event ->
00:02:05 #3352 [verbose] > ticks (),
00:02:05 #3353 [verbose] > [[ FileSystemChange.Deleted (getEventPath event.FullPath) ]]
00:02:05 #3354 [verbose] > )
00:02:05 #3355 [verbose] >
00:02:05 #3356 [verbose] > let createdStream =
00:02:05 #3357 [verbose] > AsyncSeq.subscribeEvent
00:02:05 #3358 [verbose] > watcher.Created
00:02:05 #3359 [verbose] > (fun event ->
00:02:05 #3360 [verbose] > let path = getEventPath event.FullPath
00:02:05 #3361 [verbose] > ticks (), [[
00:02:05 #3362 [verbose] > FileSystemChange.Created (path, None)
00:02:05 #3363 [verbose] > if Runtime.isWindows () then
00:02:05 #3364 [verbose] > FileSystemChange.Changed (path, None)
00:02:05 #3365 [verbose] > ]])
00:02:05 #3366 [verbose] >
00:02:05 #3367 [verbose] > let renamedStream =
00:02:05 #3368 [verbose] > AsyncSeq.subscribeEvent
00:02:05 #3369 [verbose] > watcher.Renamed
00:02:05 #3370 [verbose] > (fun event ->
00:02:05 #3371 [verbose] > ticks (), [[
00:02:05 #3372 [verbose] > FileSystemChange.Renamed (
00:02:05 #3373 [verbose] > getEventPath event.OldFullPath,
00:02:05 #3374 [verbose] > (getEventPath event.FullPath, None)
00:02:05 #3375 [verbose] > )
00:02:05 #3376 [verbose] > ]]
00:02:05 #3377 [verbose] > )
00:02:05 #3378 [verbose] >
00:02:05 #3379 [verbose] > let failureStream =
00:02:05 #3380 [verbose] > AsyncSeq.subscribeEvent
00:02:05 #3381 [verbose] > watcher.Error
00:02:05 #3382 [verbose] > (fun event -> ticks (), [[ FileSystemChange.Failure
00:02:05 #3383 [verbose] > (event.GetException ()) ]])
00:02:05 #3384 [verbose] >
00:02:05 #3385 [verbose] > let stream =
00:02:05 #3386 [verbose] > [[
00:02:05 #3387 [verbose] > changedStream
00:02:05 #3388 [verbose] > deletedStream
00:02:05 #3389 [verbose] > createdStream
00:02:05 #3390 [verbose] > renamedStream
00:02:05 #3391 [verbose] > failureStream
00:02:05 #3392 [verbose] > ]]
00:02:05 #3393 [verbose] > |> FSharp.Control.AsyncSeq.mergeAll
00:02:05 #3394 [verbose] > |> FSharp.Control.AsyncSeq.map (fun (t, events) ->
00:02:05 #3395 [verbose] > events
00:02:05 #3396 [verbose] > |> List.fold
00:02:05 #3397 [verbose] > (fun (i, events) event ->
00:02:05 #3398 [verbose] > i + 1L,
00:02:05 #3399 [verbose] > (t + i, event) :: events)
00:02:05 #3400 [verbose] > (0L, [[]])
00:02:05 #3401 [verbose] > |> snd
00:02:05 #3402 [verbose] > |> List.rev
00:02:05 #3403 [verbose] > )
00:02:05 #3404 [verbose] > |> FSharp.Control.AsyncSeq.concatSeq
00:02:05 #3405 [verbose] > |> FSharp.Control.AsyncSeq.mapAsyncParallel (fun (t, event) -> async {
00:02:05 #3406 [verbose] > match shouldReadContent event, event with
00:02:05 #3407 [verbose] > | true, FileSystemChange.Changed (path, _) ->
00:02:05 #3408 [verbose] > do! Async.Sleep 5
00:02:05 #3409 [verbose] > let! content = fullPath </> path |>
00:02:05 #3410 [verbose] > SpiralFileSystem.read_all_text_retry_async
00:02:05 #3411 [verbose] > return t, FileSystemChange.Changed (path, content)
00:02:05 #3412 [verbose] > | true, FileSystemChange.Created (path, _) ->
00:02:05 #3413 [verbose] > do! Async.Sleep 5
00:02:05 #3414 [verbose] > let! content = fullPath </> path |>
00:02:05 #3415 [verbose] > SpiralFileSystem.read_all_text_retry_async
00:02:05 #3416 [verbose] > return t, FileSystemChange.Created (path, content)
00:02:05 #3417 [verbose] > | true, FileSystemChange.Renamed (oldPath, (newPath, _)) ->
00:02:05 #3418 [verbose] > let! content = fullPath </> newPath |>
00:02:05 #3419 [verbose] > SpiralFileSystem.read_all_text_retry_async
00:02:05 #3420 [verbose] > return t, FileSystemChange.Renamed (oldPath, (newPath, content))
00:02:05 #3421 [verbose] > | _ -> return t, event
00:02:05 #3422 [verbose] > })
00:02:05 #3423 [verbose] >
00:02:05 #3424 [verbose] > let disposable =
00:02:05 #3425 [verbose] > new_disposable (fun () ->
00:02:05 #3426 [verbose] > trace Debug (fun () -> "watchWithFilter / Disposing watch stream")
00:02:05 #3427 [verbose] > getLocals
00:02:05 #3428 [verbose] > watcher.EnableRaisingEvents <- false
00:02:05 #3429 [verbose] > watcher.Dispose ()
00:02:05 #3430 [verbose] > )
00:02:05 #3431 [verbose] >
00:02:05 #3432 [verbose] > stream, disposable
00:02:05 #3433 [verbose] >
00:02:05 #3434 [verbose] > let inline watchDirectory path =
00:02:05 #3435 [verbose] > watchDirectoryWithFilter
00:02:05 #3436 [verbose] > (System.IO.NotifyFilters.FileName
00:02:05 #3437 [verbose] > // ||| System.IO.NotifyFilters.DirectoryName
00:02:05 #3438 [verbose] > // ||| System.IO.NotifyFilters.Attributes
00:02:05 #3439 [verbose] > //// ||| System.IO.NotifyFilters.Size
00:02:05 #3440 [verbose] > ||| System.IO.NotifyFilters.LastWrite
00:02:05 #3441 [verbose] > //// ||| System.IO.NotifyFilters.LastAccess
00:02:05 #3442 [verbose] > // ||| System.IO.NotifyFilters.CreationTime
00:02:05 #3443 [verbose] > // ||| System.IO.NotifyFilters.Security
00:02:05 #3444 [verbose] > )
00:02:05 #3445 [verbose] > path
00:02:06 #3446 [verbose] >
00:02:06 #3447 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:06 #3448 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:06 #3449 [verbose] > │ ### testEventsRaw (test) │
00:02:06 #3450 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:06 #3451 [verbose] >
00:02:06 #3452 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:06 #3453 [verbose] > //// test
00:02:06 #3454 [verbose] >
00:02:06 #3455 [verbose] > let inline testEventsRaw
00:02:06 #3456 [verbose] > (watchFn : (_ -> bool) -> string -> FSharp.Control.AsyncSeq<int64 *
00:02:06 #3457 [verbose] > FileSystemChange> * IDisposable)
00:02:06 #3458 [verbose] > write
00:02:06 #3459 [verbose] > =
00:02:06 #3460 [verbose] > let struct (tempDir, tempDisposable) =
00:02:06 #3461 [verbose] > SpiralFileSystem.create_temp_directory ()
00:02:06 #3462 [verbose] > let stream, disposable = watchFn (fun _ -> true) tempDir
00:02:06 #3463 [verbose] >
00:02:06 #3464 [verbose] > let events = System.Collections.Concurrent.ConcurrentBag ()
00:02:06 #3465 [verbose] >
00:02:06 #3466 [verbose] > let inline iter () =
00:02:06 #3467 [verbose] > stream
00:02:06 #3468 [verbose] > |> FSharp.Control.AsyncSeq.iterAsyncParallel (fun event -> async {
00:02:06 #3469 [verbose] > events.Add event })
00:02:06 #3470 [verbose] >
00:02:06 #3471 [verbose] > let run = async {
00:02:06 #3472 [verbose] > let! _ = iter () |> Async.StartChild
00:02:06 #3473 [verbose] > do! Async.Sleep 250
00:02:06 #3474 [verbose] > return! write tempDir
00:02:06 #3475 [verbose] > }
00:02:06 #3476 [verbose] >
00:02:06 #3477 [verbose] > try
00:02:06 #3478 [verbose] > run
00:02:06 #3479 [verbose] > |> Async.runWithTimeout 60000
00:02:06 #3480 [verbose] > |> _assertEqual (Some ())
00:02:06 #3481 [verbose] > finally
00:02:06 #3482 [verbose] > disposable.Dispose ()
00:02:06 #3483 [verbose] > tempDisposable.Dispose ()
00:02:06 #3484 [verbose] >
00:02:06 #3485 [verbose] > let eventsLog =
00:02:06 #3486 [verbose] > events
00:02:06 #3487 [verbose] > |> Seq.toList
00:02:06 #3488 [verbose] > |> List.sortBy fst
00:02:06 #3489 [verbose] > |> List.fold
00:02:06 #3490 [verbose] > (fun (prev, acc) (ticks, event) ->
00:02:06 #3491 [verbose] > ticks, (ticks, (if prev = 0L then 0L else ticks - prev), event)
00:02:06 #3492 [verbose] > :: acc
00:02:06 #3493 [verbose] > )
00:02:06 #3494 [verbose] > (0L, [[]])
00:02:06 #3495 [verbose] > |> snd
00:02:06 #3496 [verbose] > |> List.rev
00:02:06 #3497 [verbose] > |> List.map (fun (diff, n, event) -> $"{n} / {diff} / {event}" |>
00:02:06 #3498 [verbose] > SpiralSm.ellipsis_end 100L)
00:02:06 #3499 [verbose] > |> SpiralSm.concat "\n"
00:02:06 #3500 [verbose] > let getLocals () = $"eventsLog: \n{eventsLog} / {getLocals ()}"
00:02:06 #3501 [verbose] > trace Debug (fun () -> "testEventsRaw") getLocals
00:02:06 #3502 [verbose] >
00:02:06 #3503 [verbose] > events
00:02:06 #3504 [verbose] > |> Seq.toList
00:02:06 #3505 [verbose] > |> List.sortBy fst
00:02:06 #3506 [verbose] > |> List.map snd
00:02:06 #3507 [verbose] > |> List.fold
00:02:06 #3508 [verbose] > (fun acc event ->
00:02:06 #3509 [verbose] > match acc, event with
00:02:06 #3510 [verbose] > | FileSystemChange.Changed (lastPath, Some lastContent) as lastEvent
00:02:06 #3511 [verbose] > :: acc,
00:02:06 #3512 [verbose] > FileSystemChange.Changed (path, Some content)
00:02:06 #3513 [verbose] > when lastPath = path && content |> SpiralSm.starts_with
00:02:06 #3514 [verbose] > lastContent
00:02:06 #3515 [verbose] > ->
00:02:06 #3516 [verbose] > event :: acc
00:02:06 #3517 [verbose] > | _ -> event :: acc
00:02:06 #3518 [verbose] > )
00:02:06 #3519 [verbose] > [[]]
00:02:06 #3520 [verbose] > |> List.rev
00:02:06 #3521 [verbose] >
00:02:06 #3522 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:06 #3523 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:06 #3524 [verbose] > │ #### fast (test) │
00:02:06 #3525 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:06 #3526 [verbose] >
00:02:06 #3527 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:06 #3528 [verbose] > //// test
00:02:06 #3529 [verbose] >
00:02:06 #3530 [verbose] > let inline write path = async {
00:02:06 #3531 [verbose] > let n = 2
00:02:06 #3532 [verbose] >
00:02:06 #3533 [verbose] > for i = 1 to n do
00:02:06 #3534 [verbose] > do! $"a{i}" |> SpiralFileSystem.write_all_text_async (path </>
00:02:06 #3535 [verbose] > $"file{i}.txt")
00:02:06 #3536 [verbose] >
00:02:06 #3537 [verbose] > do! Async.Sleep 250
00:02:06 #3538 [verbose] >
00:02:06 #3539 [verbose] > for i = 1 to n do
00:02:06 #3540 [verbose] > do! $"b{i}" |> SpiralFileSystem.write_all_text_async (path </>
00:02:06 #3541 [verbose] > $"file{i}.txt")
00:02:06 #3542 [verbose] >
00:02:06 #3543 [verbose] > do! Async.Sleep 250
00:02:06 #3544 [verbose] >
00:02:06 #3545 [verbose] > for i = 1 to n do
00:02:06 #3546 [verbose] > do! path </> $"file{i}.txt" |> SpiralFileSystem.move_file_async (path
00:02:06 #3547 [verbose] > </> $"file_{i}.txt") |> Async.Ignore
00:02:06 #3548 [verbose] >
00:02:06 #3549 [verbose] > do! Async.Sleep 250
00:02:06 #3550 [verbose] >
00:02:06 #3551 [verbose] > for i = 1 to n do
00:02:06 #3552 [verbose] > do! $"c{i}" |> SpiralFileSystem.write_all_text_async (path </>
00:02:06 #3553 [verbose] > $"file_{i}.txt")
00:02:06 #3554 [verbose] >
00:02:06 #3555 [verbose] > do! Async.Sleep 250
00:02:06 #3556 [verbose] >
00:02:06 #3557 [verbose] > for i = 1 to n do
00:02:06 #3558 [verbose] > do! SpiralFileSystem.delete_file_async (path </> $"file_{i}.txt") |>
00:02:06 #3559 [verbose] > Async.Ignore
00:02:06 #3560 [verbose] >
00:02:06 #3561 [verbose] > do! Async.Sleep 250
00:02:06 #3562 [verbose] > }
00:02:06 #3563 [verbose] >
00:02:06 #3564 [verbose] > let inline run () =
00:02:06 #3565 [verbose] > let events = testEventsRaw watchDirectory write
00:02:06 #3566 [verbose] >
00:02:06 #3567 [verbose] > events
00:02:06 #3568 [verbose] > |> _sequenceEqual [[
00:02:06 #3569 [verbose] > FileSystemChange.Created ("file1.txt", Some "a1")
00:02:06 #3570 [verbose] > FileSystemChange.Changed ("file1.txt", Some "a1")
00:02:06 #3571 [verbose] > FileSystemChange.Created ("file2.txt", Some "a2")
00:02:06 #3572 [verbose] > FileSystemChange.Changed ("file2.txt", Some "a2")
00:02:06 #3573 [verbose] >
00:02:06 #3574 [verbose] > FileSystemChange.Changed ("file1.txt", Some "b1")
00:02:06 #3575 [verbose] > FileSystemChange.Changed ("file2.txt", Some "b2")
00:02:06 #3576 [verbose] >
00:02:06 #3577 [verbose] > FileSystemChange.Renamed ("file1.txt", ("file_1.txt", Some "b1"))
00:02:06 #3578 [verbose] > FileSystemChange.Renamed ("file2.txt", ("file_2.txt", Some "b2"))
00:02:06 #3579 [verbose] >
00:02:06 #3580 [verbose] > FileSystemChange.Changed ("file_1.txt", Some "c1")
00:02:06 #3581 [verbose] > FileSystemChange.Changed ("file_2.txt", Some "c2")
00:02:06 #3582 [verbose] >
00:02:06 #3583 [verbose] > FileSystemChange.Deleted "file_1.txt"
00:02:06 #3584 [verbose] > FileSystemChange.Deleted "file_2.txt"
00:02:06 #3585 [verbose] > ]]
00:02:06 #3586 [verbose] >
00:02:06 #3587 [verbose] > run
00:02:06 #3588 [verbose] > |> retry_fn 3
00:02:06 #3589 [verbose] > |> _assertEqual (Some ())
00:02:10 #3590 [verbose] >
00:02:10 #3591 [verbose] > ╭─[ 4.35s - stdout ]───────────────────────────────────────────────────────────╮
00:02:10 #3592 [verbose] > │ FSharpOption<Unit> │
00:02:10 #3593 [verbose] > │ Value: <null> │
00:02:10 #3594 [verbose] > │ 00:00:00 #1 [debug] watchWithFilter / Disposing watch stream / filter: │
00:02:10 #3595 [verbose] > │ FileName, LastWrite │
00:02:10 #3596 [verbose] > │ 00:00:00 #2 [debug] testEventsRaw / eventsLog: │
00:02:10 #3597 [verbose] > │ 0 / 638483868522658793 / Created ("file1.txt", Some "a1") │
00:02:10 #3598 [verbose] > │ 1 / 638483868522658794 / Changed ("file1.txt", Some "a1") │
00:02:10 #3599 [verbose] > │ 30374 / 638483868522689168 / Changed ("file1.txt", Some "a1") │
00:02:10 #3600 [verbose] > │ 1822 / 638483868522690990 / Created ("file2.txt", Some "a2") │
00:02:10 #3601 [verbose] > │ 1 / 638483868522690991 / Changed ("file2.txt", Some "a2") │
00:02:11 #3602 [verbose] > │ 117 / 638483868522691108 / Changed ("file2.txt", Some "a2") │
00:02:11 #3603 [verbose] > │ 2625612 / 638483868525316720 / Changed ("file1.txt", Some "b1") │
00:02:11 #3604 [verbose] > │ 4450 / 638483868525321170 / Changed ("file1.txt", Some "b1") │
00:02:11 #3605 [verbose] > │ 17398 / 638483868525338568 / Changed ("file2.txt", Some "b2") │
00:02:11 #3606 [verbose] > │ 2653 / 638483868525341221 / Changed ("file2.txt", Some "b2") │
00:02:11 #3607 [verbose] > │ 2754906 / 638483868528096127 / Renamed ("file1.txt", ("file_1.txt", Some │
00:02:11 #3608 [verbose] > │ "b1")) │
00:02:11 #3609 [verbose] > │ 140806 / 638483868528236933 / Renamed ("file2.txt", ("file_2.txt", Some │
00:02:11 #3610 [verbose] > │ "b2")) │
00:02:11 #3611 [verbose] > │ 2653221 / 638483868530890154 / Changed ("file_1.txt", Some "c1") │
00:02:11 #3612 [verbose] > │ 5609 / 638483868530895763 / Changed ("file_1.txt", Some "c1") │
00:02:11 #3613 [verbose] > │ 27183 / 638483868530922946 / Changed ("file_2.txt", Some "c2") │
00:02:11 #3614 [verbose] > │ 5656 / 638483868530928602 / Changed ("file_2.txt", Some "c2") │
00:02:11 #3615 [verbose] > │ 2701091 / 638483868533629693 / Deleted "file_1.txt" │
00:02:11 #3616 [verbose] > │ 7788 / 638483868533637481 / Deleted "file_2.txt" │
00:02:11 #3617 [verbose] > │ FSharpList<FileSystemChange> │
00:02:11 #3618 [verbose] > │ - path: file1.txt │
00:02:11 #3619 [verbose] > │ content: FSharpOption<String> │
00:02:11 #3620 [verbose] > │ Value: a1 │
00:02:11 #3621 [verbose] > │ IsFailure: False │
00:02:11 #3622 [verbose] > │ IsChanged: False │
00:02:11 #3623 [verbose] > │ IsCreated: True │
00:02:11 #3624 [verbose] > │ IsDeleted: False │
00:02:11 #3625 [verbose] > │ IsRenamed: False │
00:02:11 #3626 [verbose] > │ - path: file1.txt │
00:02:11 #3627 [verbose] > │ content: FSharpOption<String> │
00:02:11 #3628 [verbose] > │ Value: a1 │
00:02:11 #3629 [verbose] > │ IsFailure: False │
00:02:11 #3630 [verbose] > │ IsChanged: True │
00:02:11 #3631 [verbose] > │ IsCreated: False │
00:02:11 #3632 [verbose] > │ IsDeleted: False │
00:02:11 #3633 [verbose] > │ IsRenamed: False │
00:02:11 #3634 [verbose] > │ - path: file2.txt │
00:02:11 #3635 [verbose] > │ content: FSharpOption<String> │
00:02:11 #3636 [verbose] > │ Value: a2 │
00:02:11 #3637 [verbose] > │ IsFailure: False │
00:02:11 #3638 [verbose] > │ IsChanged: False │
00:02:11 #3639 [verbose] > │ IsCreated: True │
00:02:11 #3640 [verbose] > │ IsDeleted: False │
00:02:11 #3641 [verbose] > │ IsRenamed: False │
00:02:11 #3642 [verbose] > │ - path: file2.txt │
00:02:11 #3643 [verbose] > │ content: FSharpOption<String> │
00:02:11 #3644 [verbose] > │ Value: a2 │
00:02:11 #3645 [verbose] > │ IsFailure: False │
00:02:11 #3646 [verbose] > │ IsChanged: True │
00:02:11 #3647 [verbose] > │ IsCreated: False │
00:02:11 #3648 [verbose] > │ IsDeleted: False │
00:02:11 #3649 [verbose] > │ IsRenamed: False │
00:02:11 #3650 [verbose] > │ - path: file1.txt │
00:02:11 #3651 [verbose] > │ content: FSharpOption<String> │
00:02:11 #3652 [verbose] > │ Value: b1 │
00:02:11 #3653 [verbose] > │ IsFailure: False │
00:02:11 #3654 [verbose] > │ IsChanged: True │
00:02:11 #3655 [verbose] > │ IsCreated: False │
00:02:11 #3656 [verbose] > │ IsDeleted: False │
00:02:11 #3657 [verbose] > │ IsRenamed: False │
00:02:11 #3658 [verbose] > │ - path: file2.txt │
00:02:11 #3659 [verbose] > │ content: FSharpOption<String> │
00:02:11 #3660 [verbose] > │ Value: b2 │
00:02:11 #3661 [verbose] > │ IsFailure: False │
00:02:11 #3662 [verbose] > │ IsChanged: True │
00:02:11 #3663 [verbose] > │ IsCreated: False │
00:02:11 #3664 [verbose] > │ IsDeleted: False │
00:02:11 #3665 [verbose] > │ IsRenamed: False │
00:02:11 #3666 [verbose] > │ - oldPath: file1.txt │
00:02:11 #3667 [verbose] > │ Item2: - file_1.txt │
00:02:11 #3668 [verbose] > │ - FSharpOption<String> │
00:02:11 #3669 [verbose] > │ Value: b1 │
00:02:11 #3670 [verbose] > │ - IsFailure: False │
00:02:11 #3671 [verbose] > │ IsChanged: False │
00:02:11 #3672 [verbose] > │ IsCreated: False │
00:02:11 #3673 [verbose] > │ IsDeleted: False │
00:02:11 #3674 [verbose] > │ IsRenamed: True │
00:02:11 #3675 [verbose] > │ - oldPath: file2.txt │
00:02:11 #3676 [verbose] > │ Item2: - file_2.txt │
00:02:11 #3677 [verbose] > │ - FSharpOption<String> │
00:02:11 #3678 [verbose] > │ Value: b2 │
00:02:11 #3679 [verbose] > │ - IsFailure: False │
00:02:11 #3680 [verbose] > │ IsChanged: False │
00:02:11 #3681 [verbose] > │ IsCreated: False │
00:02:11 #3682 [verbose] > │ IsDeleted: False │
00:02:11 #3683 [verbose] > │ IsRenamed: True │
00:02:11 #3684 [verbose] > │ - path: file_1.txt │
00:02:11 #3685 [verbose] > │ content: FSharpOption<String> │
00:02:11 #3686 [verbose] > │ Value: c1 │
00:02:11 #3687 [verbose] > │ IsFailure: False │
00:02:11 #3688 [verbose] > │ IsChanged: True │
00:02:11 #3689 [verbose] > │ IsCreated: False │
00:02:11 #3690 [verbose] > │ IsDeleted: False │
00:02:11 #3691 [verbose] > │ IsRenamed: False │
00:02:11 #3692 [verbose] > │ - path: file_2.txt │
00:02:11 #3693 [verbose] > │ content: FSharpOption<String> │
00:02:11 #3694 [verbose] > │ Value: c2 │
00:02:11 #3695 [verbose] > │ IsFailure: False │
00:02:11 #3696 [verbose] > │ IsChanged: True │
00:02:11 #3697 [verbose] > │ IsCreated: False │
00:02:11 #3698 [verbose] > │ IsDeleted: False │
00:02:11 #3699 [verbose] > │ IsRenamed: False │
00:02:11 #3700 [verbose] > │ - path: file_1.txt │
00:02:11 #3701 [verbose] > │ IsFailure: False │
00:02:11 #3702 [verbose] > │ IsChanged: False │
00:02:11 #3703 [verbose] > │ IsCreated: False │
00:02:11 #3704 [verbose] > │ IsDeleted: True │
00:02:11 #3705 [verbose] > │ IsRenamed: False │
00:02:11 #3706 [verbose] > │ - path: file_2.txt │
00:02:11 #3707 [verbose] > │ IsFailure: False │
00:02:11 #3708 [verbose] > │ IsChanged: False │
00:02:11 #3709 [verbose] > │ IsCreated: False │
00:02:11 #3710 [verbose] > │ IsDeleted: True │
00:02:11 #3711 [verbose] > │ IsRenamed: False │
00:02:11 #3712 [verbose] > │ FSharpOption<Unit> │
00:02:11 #3713 [verbose] > │ Value: <null> │
00:02:11 #3714 [verbose] > │ │
00:02:11 #3715 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:11 #3716 [verbose] >
00:02:11 #3717 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:11 #3718 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:11 #3719 [verbose] > │ #### slow (test) │
00:02:11 #3720 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:11 #3721 [verbose] >
00:02:11 #3722 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:11 #3723 [verbose] > //// test
00:02:11 #3724 [verbose] >
00:02:11 #3725 [verbose] > let inline write path = async {
00:02:11 #3726 [verbose] > let n = 2
00:02:11 #3727 [verbose] >
00:02:11 #3728 [verbose] > let contents =
00:02:11 #3729 [verbose] > [[ 1 .. n ]]
00:02:11 #3730 [verbose] > |> List.map (string >> String.replicate 1_000_000)
00:02:11 #3731 [verbose] >
00:02:11 #3732 [verbose] > for i = 1 to n do
00:02:11 #3733 [verbose] > do! $"{contents.[[i - 1]]}a" |> SpiralFileSystem.write_all_text_async
00:02:11 #3734 [verbose] > (path </> $"file{i}.txt")
00:02:11 #3735 [verbose] >
00:02:11 #3736 [verbose] > do! Async.Sleep 1500
00:02:11 #3737 [verbose] >
00:02:11 #3738 [verbose] > for i = 1 to n do
00:02:11 #3739 [verbose] > do! $"{contents.[[i - 1]]}b" |> SpiralFileSystem.write_all_text_async
00:02:11 #3740 [verbose] > (path </> $"file{i}.txt")
00:02:11 #3741 [verbose] >
00:02:11 #3742 [verbose] > do! Async.Sleep 1500
00:02:11 #3743 [verbose] >
00:02:11 #3744 [verbose] > for i = 1 to n do
00:02:11 #3745 [verbose] > do! path </> $"file{i}.txt" |> SpiralFileSystem.move_file_async (path
00:02:11 #3746 [verbose] > </> $"file_{i}.txt") |> Async.Ignore
00:02:11 #3747 [verbose] >
00:02:11 #3748 [verbose] > do! Async.Sleep 1500
00:02:11 #3749 [verbose] >
00:02:11 #3750 [verbose] > for i = 1 to n do
00:02:11 #3751 [verbose] > do! $"{contents.[[i - 1]]}c" |> SpiralFileSystem.write_all_text_async
00:02:11 #3752 [verbose] > (path </> $"file_{i}.txt")
00:02:11 #3753 [verbose] >
00:02:11 #3754 [verbose] > do! Async.Sleep 1500
00:02:11 #3755 [verbose] >
00:02:11 #3756 [verbose] > for i = 1 to n do
00:02:11 #3757 [verbose] > do! SpiralFileSystem.delete_file_async (path </> $"file_{i}.txt") |>
00:02:11 #3758 [verbose] > Async.Ignore
00:02:11 #3759 [verbose] >
00:02:11 #3760 [verbose] > do! Async.Sleep 1500
00:02:11 #3761 [verbose] > }
00:02:11 #3762 [verbose] >
00:02:11 #3763 [verbose] > let inline run () =
00:02:11 #3764 [verbose] > let events =
00:02:11 #3765 [verbose] > testEventsRaw watchDirectory write
00:02:11 #3766 [verbose] > |> List.map (function
00:02:11 #3767 [verbose] > | FileSystemChange.Changed (path, Some content) ->
00:02:11 #3768 [verbose] > FileSystemChange.Changed (path, content |> Seq.distinct |>
00:02:11 #3769 [verbose] > Seq.map string |> SpiralSm.concat "" |> Some)
00:02:11 #3770 [verbose] > | FileSystemChange.Created (path, Some content) ->
00:02:11 #3771 [verbose] > FileSystemChange.Created (path, content |> Seq.distinct |>
00:02:11 #3772 [verbose] > Seq.map string |> SpiralSm.concat "" |> Some)
00:02:11 #3773 [verbose] > | FileSystemChange.Renamed (oldPath, (newPath, Some content)) ->
00:02:11 #3774 [verbose] > FileSystemChange.Renamed (
00:02:11 #3775 [verbose] > oldPath,
00:02:11 #3776 [verbose] > (newPath, content |> Seq.distinct |> Seq.map string |>
00:02:11 #3777 [verbose] > SpiralSm.concat "" |> Some)
00:02:11 #3778 [verbose] > )
00:02:11 #3779 [verbose] > | event -> event
00:02:11 #3780 [verbose] > )
00:02:11 #3781 [verbose] >
00:02:11 #3782 [verbose] > events
00:02:11 #3783 [verbose] > |> _sequenceEqual [[
00:02:11 #3784 [verbose] > FileSystemChange.Created ("file1.txt", Some "1a")
00:02:11 #3785 [verbose] > FileSystemChange.Changed ("file1.txt", Some "1a")
00:02:11 #3786 [verbose] > FileSystemChange.Created ("file2.txt", Some "2a")
00:02:11 #3787 [verbose] > FileSystemChange.Changed ("file2.txt", Some "2a")
00:02:11 #3788 [verbose] >
00:02:11 #3789 [verbose] > FileSystemChange.Changed ("file1.txt", Some "1b")
00:02:11 #3790 [verbose] > FileSystemChange.Changed ("file2.txt", Some "2b")
00:02:11 #3791 [verbose] >
00:02:11 #3792 [verbose] > FileSystemChange.Renamed ("file1.txt", ("file_1.txt", Some "1b"))
00:02:11 #3793 [verbose] > FileSystemChange.Renamed ("file2.txt", ("file_2.txt", Some "2b"))
00:02:11 #3794 [verbose] >
00:02:11 #3795 [verbose] > FileSystemChange.Changed ("file_1.txt", Some "1c")
00:02:11 #3796 [verbose] > FileSystemChange.Changed ("file_2.txt", Some "2c")
00:02:11 #3797 [verbose] >
00:02:11 #3798 [verbose] > FileSystemChange.Deleted "file_1.txt"
00:02:11 #3799 [verbose] > FileSystemChange.Deleted "file_2.txt"
00:02:11 #3800 [verbose] > ]]
00:02:11 #3801 [verbose] >
00:02:11 #3802 [verbose] > run
00:02:11 #3803 [verbose] > |> retry_fn 5
00:02:11 #3804 [verbose] > |> _assertEqual (Some ())
00:02:27 #3805 [verbose] >
00:02:27 #3806 [verbose] > ╭─[ 16.30s - stdout ]──────────────────────────────────────────────────────────╮
00:02:27 #3807 [verbose] > │ FSharpOption<Unit> │
00:02:27 #3808 [verbose] > │ Value: <null> │
00:02:27 #3809 [verbose] > │ 00:00:15 #3 [debug] watchWithFilter / Disposing watch stream / filter: │
00:02:27 #3810 [verbose] > │ FileName, LastWrite │
00:02:27 #3811 [verbose] > │ 00:00:16 #4 [debug] testEventsRaw / eventsLog: │
00:02:27 #3812 [verbose] > │ 0 / 638483868618958951 / Created │
00:02:27 #3813 [verbose] > │ ("file1.txt", │
00:02:27 #3814 [verbose] > │ ...11111111111111111111111111111111111111111111111a") │
00:02:27 #3815 [verbose] > │ 1 / 638483868618958952 / Changed │
00:02:27 #3816 [verbose] > │ ("file1.txt", │
00:02:27 #3817 [verbose] > │ ...11111111111111111111111111111111111111111111111a") │
00:02:27 #3818 [verbose] > │ 313052 / 638483868619272004 / Changed │
00:02:27 #3819 [verbose] > │ ("file1.tx...11111111111111111111111111111111111111111111111a") │
00:02:27 #3820 [verbose] > │ 65128 / 638483868619337132 / Created │
00:02:27 #3821 [verbose] > │ ("file2.txt...22222222222222222222222222222222222222222222222a") │
00:02:27 #3822 [verbose] > │ 1 / 638483868619337133 / Changed │
00:02:27 #3823 [verbose] > │ ("file2.txt", │
00:02:27 #3824 [verbose] > │ ...22222222222222222222222222222222222222222222222a") │
00:02:27 #3825 [verbose] > │ 824824 / 638483868620161957 / Changed │
00:02:27 #3826 [verbose] > │ ("file2.tx...22222222222222222222222222222222222222222222222a") │
00:02:27 #3827 [verbose] > │ 15259003 / 638483868635420960 / Changed │
00:02:27 #3828 [verbose] > │ ("file1....11111111111111111111111111111111111111111111111b") │
00:02:27 #3829 [verbose] > │ 206209 / 638483868635627169 / Changed │
00:02:27 #3830 [verbose] > │ ("file1.tx...11111111111111111111111111111111111111111111111b") │
00:02:27 #3831 [verbose] > │ 114225 / 638483868635741394 / Changed │
00:02:27 #3832 [verbose] > │ ("file2.tx...22222222222222222222222222222222222222222222222b") │
00:02:27 #3833 [verbose] > │ 109983 / 638483868635851377 / Changed │
00:02:27 #3834 [verbose] > │ ("file2.tx...22222222222222222222222222222222222222222222222b") │
00:02:27 #3835 [verbose] > │ 14950592 / 638483868650801969 / Renamed │
00:02:27 #3836 [verbose] > │ ("file1....1111111111111111111111111111111111111111111111b")) │
00:02:27 #3837 [verbose] > │ 3332 / 638483868650805301 / Renamed │
00:02:27 #3838 [verbose] > │ ("file2.txt"...2222222222222222222222222222222222222222222222b")) │
00:02:27 #3839 [verbose] > │ 15007832 / 638483868665813133 / Changed │
00:02:27 #3840 [verbose] > │ ("file_1...11111111111111111111111111111111111111111111111c") │
00:02:27 #3841 [verbose] > │ 151055 / 638483868665964188 / Changed │
00:02:27 #3842 [verbose] > │ ("file_1.t...11111111111111111111111111111111111111111111111c") │
00:02:27 #3843 [verbose] > │ 40025 / 638483868666004213 / Changed │
00:02:27 #3844 [verbose] > │ ("file_2.tx...22222222222222222222222222222222222222222222222c") │
00:02:27 #3845 [verbose] > │ 109783 / 638483868666113996 / Changed │
00:02:27 #3846 [verbose] > │ ("file_2.t...22222222222222222222222222222222222222222222222c") │
00:02:27 #3847 [verbose] > │ 14997413 / 638483868681111409 / Deleted "file_1.txt" │
00:02:27 #3848 [verbose] > │ 4185 / 638483868681115594 / Deleted "file_2.txt" │
00:02:27 #3849 [verbose] > │ FSharpList<FileSystemChange> │
00:02:27 #3850 [verbose] > │ - path: file1.txt │
00:02:27 #3851 [verbose] > │ content: FSharpOption<String> │
00:02:27 #3852 [verbose] > │ Value: 1a │
00:02:27 #3853 [verbose] > │ IsFailure: False │
00:02:27 #3854 [verbose] > │ IsChanged: False │
00:02:27 #3855 [verbose] > │ IsCreated: True │
00:02:27 #3856 [verbose] > │ IsDeleted: False │
00:02:27 #3857 [verbose] > │ IsRenamed: False │
00:02:27 #3858 [verbose] > │ - path: file1.txt │
00:02:27 #3859 [verbose] > │ content: FSharpOption<String> │
00:02:27 #3860 [verbose] > │ Value: 1a │
00:02:27 #3861 [verbose] > │ IsFailure: False │
00:02:27 #3862 [verbose] > │ IsChanged: True │
00:02:27 #3863 [verbose] > │ IsCreated: False │
00:02:27 #3864 [verbose] > │ IsDeleted: False │
00:02:27 #3865 [verbose] > │ IsRenamed: False │
00:02:27 #3866 [verbose] > │ - path: file2.txt │
00:02:27 #3867 [verbose] > │ content: FSharpOption<String> │
00:02:27 #3868 [verbose] > │ Value: 2a │
00:02:27 #3869 [verbose] > │ IsFailure: False │
00:02:27 #3870 [verbose] > │ IsChanged: False │
00:02:27 #3871 [verbose] > │ IsCreated: True │
00:02:27 #3872 [verbose] > │ IsDeleted: False │
00:02:27 #3873 [verbose] > │ IsRenamed: False │
00:02:27 #3874 [verbose] > │ - path: file2.txt │
00:02:27 #3875 [verbose] > │ content: FSharpOption<String> │
00:02:27 #3876 [verbose] > │ Value: 2a │
00:02:27 #3877 [verbose] > │ IsFailure: False │
00:02:27 #3878 [verbose] > │ IsChanged: True │
00:02:27 #3879 [verbose] > │ IsCreated: False │
00:02:27 #3880 [verbose] > │ IsDeleted: False │
00:02:27 #3881 [verbose] > │ IsRenamed: False │
00:02:27 #3882 [verbose] > │ - path: file1.txt │
00:02:27 #3883 [verbose] > │ content: FSharpOption<String> │
00:02:27 #3884 [verbose] > │ Value: 1b │
00:02:27 #3885 [verbose] > │ IsFailure: False │
00:02:27 #3886 [verbose] > │ IsChanged: True │
00:02:27 #3887 [verbose] > │ IsCreated: False │
00:02:27 #3888 [verbose] > │ IsDeleted: False │
00:02:27 #3889 [verbose] > │ IsRenamed: False │
00:02:27 #3890 [verbose] > │ - path: file2.txt │
00:02:27 #3891 [verbose] > │ content: FSharpOption<String> │
00:02:27 #3892 [verbose] > │ Value: 2b │
00:02:27 #3893 [verbose] > │ IsFailure: False │
00:02:27 #3894 [verbose] > │ IsChanged: True │
00:02:27 #3895 [verbose] > │ IsCreated: False │
00:02:27 #3896 [verbose] > │ IsDeleted: False │
00:02:27 #3897 [verbose] > │ IsRenamed: False │
00:02:27 #3898 [verbose] > │ - oldPath: file1.txt │
00:02:27 #3899 [verbose] > │ Item2: - file_1.txt │
00:02:27 #3900 [verbose] > │ - FSharpOption<String> │
00:02:27 #3901 [verbose] > │ Value: 1b │
00:02:27 #3902 [verbose] > │ - IsFailure: False │
00:02:27 #3903 [verbose] > │ IsChanged: False │
00:02:27 #3904 [verbose] > │ IsCreated: False │
00:02:27 #3905 [verbose] > │ IsDeleted: False │
00:02:27 #3906 [verbose] > │ IsRenamed: True │
00:02:27 #3907 [verbose] > │ - oldPath: file2.txt │
00:02:27 #3908 [verbose] > │ Item2: - file_2.txt │
00:02:27 #3909 [verbose] > │ - FSharpOption<String> │
00:02:27 #3910 [verbose] > │ Value: 2b │
00:02:27 #3911 [verbose] > │ - IsFailure: False │
00:02:27 #3912 [verbose] > │ IsChanged: False │
00:02:27 #3913 [verbose] > │ IsCreated: False │
00:02:27 #3914 [verbose] > │ IsDeleted: False │
00:02:27 #3915 [verbose] > │ IsRenamed: True │
00:02:27 #3916 [verbose] > │ - path: file_1.txt │
00:02:27 #3917 [verbose] > │ content: FSharpOption<String> │
00:02:27 #3918 [verbose] > │ Value: 1c │
00:02:27 #3919 [verbose] > │ IsFailure: False │
00:02:27 #3920 [verbose] > │ IsChanged: True │
00:02:27 #3921 [verbose] > │ IsCreated: False │
00:02:27 #3922 [verbose] > │ IsDeleted: False │
00:02:27 #3923 [verbose] > │ IsRenamed: False │
00:02:27 #3924 [verbose] > │ - path: file_2.txt │
00:02:27 #3925 [verbose] > │ content: FSharpOption<String> │
00:02:27 #3926 [verbose] > │ Value: 2c │
00:02:27 #3927 [verbose] > │ IsFailure: False │
00:02:27 #3928 [verbose] > │ IsChanged: True │
00:02:27 #3929 [verbose] > │ IsCreated: False │
00:02:27 #3930 [verbose] > │ IsDeleted: False │
00:02:27 #3931 [verbose] > │ IsRenamed: False │
00:02:27 #3932 [verbose] > │ - path: file_1.txt │
00:02:27 #3933 [verbose] > │ IsFailure: False │
00:02:27 #3934 [verbose] > │ IsChanged: False │
00:02:27 #3935 [verbose] > │ IsCreated: False │
00:02:27 #3936 [verbose] > │ IsDeleted: True │
00:02:27 #3937 [verbose] > │ IsRenamed: False │
00:02:27 #3938 [verbose] > │ - path: file_2.txt │
00:02:27 #3939 [verbose] > │ IsFailure: False │
00:02:27 #3940 [verbose] > │ IsChanged: False │
00:02:27 #3941 [verbose] > │ IsCreated: False │
00:02:27 #3942 [verbose] > │ IsDeleted: True │
00:02:27 #3943 [verbose] > │ IsRenamed: False │
00:02:27 #3944 [verbose] > │ FSharpOption<Unit> │
00:02:27 #3945 [verbose] > │ Value: <null> │
00:02:27 #3946 [verbose] > │ │
00:02:27 #3947 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:27 #3948 [verbose] >
00:02:27 #3949 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:27 #3950 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:27 #3951 [verbose] > │ ### testEventsSorted (test) │
00:02:27 #3952 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:27 #3953 [verbose] >
00:02:27 #3954 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:27 #3955 [verbose] > //// test
00:02:27 #3956 [verbose] >
00:02:27 #3957 [verbose] > let inline sortEvent event =
00:02:27 #3958 [verbose] > match event with
00:02:27 #3959 [verbose] > | FileSystemChange.Failure _ -> 0
00:02:27 #3960 [verbose] > | FileSystemChange.Created _ -> 1
00:02:27 #3961 [verbose] > | FileSystemChange.Changed _ -> 2
00:02:27 #3962 [verbose] > | FileSystemChange.Renamed (_oldPath, _) -> 3
00:02:27 #3963 [verbose] > | FileSystemChange.Deleted _ -> 4
00:02:27 #3964 [verbose] >
00:02:27 #3965 [verbose] > let inline formatEvents events =
00:02:27 #3966 [verbose] > events
00:02:27 #3967 [verbose] > |> Seq.toList
00:02:27 #3968 [verbose] > |> List.sortBy (snd >> sortEvent)
00:02:27 #3969 [verbose] > |> List.choose (fun (ticks, event) ->
00:02:27 #3970 [verbose] > match event with
00:02:27 #3971 [verbose] > | FileSystemChange.Failure _ ->
00:02:27 #3972 [verbose] > None
00:02:27 #3973 [verbose] > | FileSystemChange.Changed (path, _) ->
00:02:27 #3974 [verbose] > Some (ticks, System.IO.Path.GetFileName path, nameof
00:02:27 #3975 [verbose] > FileSystemChangeType.Changed)
00:02:27 #3976 [verbose] > | FileSystemChange.Created (path, _) ->
00:02:27 #3977 [verbose] > Some (ticks, System.IO.Path.GetFileName path, nameof
00:02:27 #3978 [verbose] > FileSystemChangeType.Created)
00:02:27 #3979 [verbose] > | FileSystemChange.Deleted path ->
00:02:27 #3980 [verbose] > Some (ticks, System.IO.Path.GetFileName path, nameof
00:02:27 #3981 [verbose] > FileSystemChangeType.Deleted)
00:02:27 #3982 [verbose] > | FileSystemChange.Renamed (_oldPath, (path, _)) ->
00:02:27 #3983 [verbose] > Some (ticks, System.IO.Path.GetFileName path, nameof
00:02:27 #3984 [verbose] > FileSystemChangeType.Renamed)
00:02:27 #3985 [verbose] > )
00:02:27 #3986 [verbose] > |> List.sortBy (fun (_, path, _) -> path)
00:02:27 #3987 [verbose] > |> List.distinctBy (fun (_, path, event) -> path, event)
00:02:27 #3988 [verbose] >
00:02:27 #3989 [verbose] > let inline testEventsSorted
00:02:27 #3990 [verbose] > (watchFn : string -> FSharp.Control.AsyncSeq<int64 * FileSystemChange> *
00:02:27 #3991 [verbose] > IDisposable)
00:02:27 #3992 [verbose] > write
00:02:27 #3993 [verbose] > =
00:02:27 #3994 [verbose] > let struct (tempDir, tempDisposable) =
00:02:27 #3995 [verbose] > SpiralFileSystem.create_temp_directory ()
00:02:27 #3996 [verbose] > let stream, disposable = watchFn tempDir
00:02:27 #3997 [verbose] >
00:02:27 #3998 [verbose] > let events = System.Collections.Concurrent.ConcurrentBag ()
00:02:27 #3999 [verbose] >
00:02:27 #4000 [verbose] > let inline iter () =
00:02:27 #4001 [verbose] > stream
00:02:27 #4002 [verbose] > |> FSharp.Control.AsyncSeq.iterAsyncParallel (fun event -> async {
00:02:27 #4003 [verbose] > events.Add event })
00:02:27 #4004 [verbose] >
00:02:27 #4005 [verbose] > let run = async {
00:02:27 #4006 [verbose] > let! _ = iter () |> Async.StartChild
00:02:27 #4007 [verbose] > do! Async.Sleep 250
00:02:27 #4008 [verbose] > return! write tempDir
00:02:27 #4009 [verbose] > }
00:02:27 #4010 [verbose] >
00:02:27 #4011 [verbose] > try
00:02:27 #4012 [verbose] > run
00:02:27 #4013 [verbose] > |> Async.runWithTimeout 5000
00:02:27 #4014 [verbose] > |> _assertEqual (Some ())
00:02:27 #4015 [verbose] > finally
00:02:27 #4016 [verbose] > disposable.Dispose ()
00:02:27 #4017 [verbose] > tempDisposable.Dispose ()
00:02:27 #4018 [verbose] >
00:02:27 #4019 [verbose] > let events = formatEvents events
00:02:27 #4020 [verbose] >
00:02:27 #4021 [verbose] > let eventMap =
00:02:27 #4022 [verbose] > events
00:02:27 #4023 [verbose] > |> List.map (fun (ticks, path, event) -> path, (event, ticks))
00:02:27 #4024 [verbose] > |> List.groupBy fst
00:02:27 #4025 [verbose] > |> List.map (fun (path, events) ->
00:02:27 #4026 [verbose] > let event, _ticks =
00:02:27 #4027 [verbose] > events
00:02:27 #4028 [verbose] > |> List.map snd
00:02:27 #4029 [verbose] > |> List.sortByDescending snd
00:02:27 #4030 [verbose] > |> List.head
00:02:27 #4031 [verbose] >
00:02:27 #4032 [verbose] > path, event
00:02:27 #4033 [verbose] > )
00:02:27 #4034 [verbose] > |> Map.ofList
00:02:27 #4035 [verbose] >
00:02:27 #4036 [verbose] > let eventList =
00:02:27 #4037 [verbose] > events
00:02:27 #4038 [verbose] > |> List.map (fun (_ticks, path, event) -> path, event)
00:02:27 #4039 [verbose] >
00:02:27 #4040 [verbose] > eventMap, eventList
00:02:27 #4041 [verbose] >
00:02:27 #4042 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:27 #4043 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:27 #4044 [verbose] > │ #### create and delete (test) │
00:02:27 #4045 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:27 #4046 [verbose] >
00:02:27 #4047 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:27 #4048 [verbose] > //// test
00:02:27 #4049 [verbose] >
00:02:27 #4050 [verbose] > let inline write path = async {
00:02:27 #4051 [verbose] > let n = 3
00:02:27 #4052 [verbose] >
00:02:27 #4053 [verbose] > for i = 1 to n do
00:02:27 #4054 [verbose] > do! $"{i}" |> SpiralFileSystem.write_all_text_async (path </>
00:02:27 #4055 [verbose] > $"file{i}.txt")
00:02:27 #4056 [verbose] >
00:02:27 #4057 [verbose] > for i = 1 to n do
00:02:27 #4058 [verbose] > do! SpiralFileSystem.delete_file_async (path </> $"file{i}.txt") |>
00:02:27 #4059 [verbose] > Async.Ignore
00:02:27 #4060 [verbose] >
00:02:27 #4061 [verbose] > do! Async.Sleep 150
00:02:27 #4062 [verbose] > }
00:02:27 #4063 [verbose] >
00:02:27 #4064 [verbose] > let inline run () =
00:02:27 #4065 [verbose] > let eventMap, eventList = testEventsSorted (watchDirectory (fun _ -> false))
00:02:27 #4066 [verbose] > write
00:02:27 #4067 [verbose] >
00:02:27 #4068 [verbose] > [[
00:02:27 #4069 [verbose] > "file1.txt", nameof FileSystemChangeType.Created
00:02:27 #4070 [verbose] > "file1.txt", nameof FileSystemChangeType.Changed
00:02:27 #4071 [verbose] > "file1.txt", nameof FileSystemChangeType.Deleted
00:02:27 #4072 [verbose] >
00:02:27 #4073 [verbose] > "file2.txt", nameof FileSystemChangeType.Created
00:02:27 #4074 [verbose] > "file2.txt", nameof FileSystemChangeType.Changed
00:02:27 #4075 [verbose] > "file2.txt", nameof FileSystemChangeType.Deleted
00:02:27 #4076 [verbose] >
00:02:27 #4077 [verbose] > "file3.txt", nameof FileSystemChangeType.Created
00:02:27 #4078 [verbose] > "file3.txt", nameof FileSystemChangeType.Changed
00:02:27 #4079 [verbose] > "file3.txt", nameof FileSystemChangeType.Deleted
00:02:27 #4080 [verbose] > ]]
00:02:27 #4081 [verbose] > |> _sequenceEqual eventList
00:02:27 #4082 [verbose] >
00:02:27 #4083 [verbose] > [[
00:02:27 #4084 [verbose] > "file1.txt", nameof FileSystemChangeType.Deleted
00:02:27 #4085 [verbose] > "file2.txt", nameof FileSystemChangeType.Deleted
00:02:27 #4086 [verbose] > "file3.txt", nameof FileSystemChangeType.Deleted
00:02:27 #4087 [verbose] > ]]
00:02:27 #4088 [verbose] > |> Map.ofList
00:02:27 #4089 [verbose] > |> _sequenceEqual eventMap
00:02:27 #4090 [verbose] >
00:02:27 #4091 [verbose] > run
00:02:27 #4092 [verbose] > |> retry_fn 3
00:02:27 #4093 [verbose] > |> _assertEqual (Some ())
00:02:30 #4094 [verbose] >
00:02:30 #4095 [verbose] > ╭─[ 2.73s - stdout ]───────────────────────────────────────────────────────────╮
00:02:30 #4096 [verbose] > │ FSharpOption<Unit> │
00:02:30 #4097 [verbose] > │ Value: <null> │
00:02:30 #4098 [verbose] > │ 00:00:19 #5 [debug] watchWithFilter / Disposing watch stream / filter: │
00:02:30 #4099 [verbose] > │ FileName, LastWrite │
00:02:30 #4100 [verbose] > │ FSharpList<Tuple<String,String>> │
00:02:30 #4101 [verbose] > │ ( file1.txt, Created ) │
00:02:30 #4102 [verbose] > │ ( file1.txt, Changed ) │
00:02:30 #4103 [verbose] > │ ( file1.txt, Deleted ) │
00:02:30 #4104 [verbose] > │ ( file2.txt, Created ) │
00:02:30 #4105 [verbose] > │ ( file2.txt, Changed ) │
00:02:30 #4106 [verbose] > │ ( file2.txt, Deleted ) │
00:02:30 #4107 [verbose] > │ ( file3.txt, Created ) │
00:02:30 #4108 [verbose] > │ ( file3.txt, Changed ) │
00:02:30 #4109 [verbose] > │ ( file3.txt, Deleted ) │
00:02:30 #4110 [verbose] > │ FSharpMap<String,String> │
00:02:30 #4111 [verbose] > │ - Key: file1.txt │
00:02:30 #4112 [verbose] > │ Value: Deleted │
00:02:30 #4113 [verbose] > │ - Key: file2.txt │
00:02:30 #4114 [verbose] > │ Value: Deleted │
00:02:30 #4115 [verbose] > │ - Key: file3.txt │
00:02:30 #4116 [verbose] > │ Value: Deleted │
00:02:30 #4117 [verbose] > │ FSharpOption<Unit> │
00:02:30 #4118 [verbose] > │ Value: <null> │
00:02:30 #4119 [verbose] > │ │
00:02:30 #4120 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:30 #4121 [verbose] >
00:02:30 #4122 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:30 #4123 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:30 #4124 [verbose] > │ #### change (test) │
00:02:30 #4125 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:30 #4126 [verbose] >
00:02:30 #4127 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:30 #4128 [verbose] > //// test
00:02:30 #4129 [verbose] >
00:02:30 #4130 [verbose] > let inline write path = async {
00:02:30 #4131 [verbose] > let n = 2
00:02:30 #4132 [verbose] >
00:02:30 #4133 [verbose] > for i = 1 to n do
00:02:30 #4134 [verbose] > do! $"{i}" |> SpiralFileSystem.write_all_text_async (path </>
00:02:30 #4135 [verbose] > $"file{i}.txt")
00:02:30 #4136 [verbose] >
00:02:30 #4137 [verbose] > for i = 1 to n do
00:02:30 #4138 [verbose] > do! "" |> SpiralFileSystem.write_all_text_async (path </>
00:02:30 #4139 [verbose] > $"file{i}.txt")
00:02:30 #4140 [verbose] >
00:02:30 #4141 [verbose] > for i = 1 to n do
00:02:30 #4142 [verbose] > do! SpiralFileSystem.delete_file_async (path </> $"file{i}.txt") |>
00:02:30 #4143 [verbose] > Async.Ignore
00:02:30 #4144 [verbose] >
00:02:30 #4145 [verbose] > do! Async.Sleep 150
00:02:30 #4146 [verbose] > }
00:02:30 #4147 [verbose] >
00:02:30 #4148 [verbose] > let inline run () =
00:02:30 #4149 [verbose] > let eventMap, eventList = testEventsSorted (watchDirectory (fun _ -> false))
00:02:30 #4150 [verbose] > write
00:02:30 #4151 [verbose] >
00:02:30 #4152 [verbose] > [[
00:02:30 #4153 [verbose] > "file1.txt", nameof FileSystemChangeType.Created
00:02:30 #4154 [verbose] > "file1.txt", nameof FileSystemChangeType.Changed
00:02:30 #4155 [verbose] > "file1.txt", nameof FileSystemChangeType.Deleted
00:02:30 #4156 [verbose] >
00:02:30 #4157 [verbose] > "file2.txt", nameof FileSystemChangeType.Created
00:02:30 #4158 [verbose] > "file2.txt", nameof FileSystemChangeType.Changed
00:02:30 #4159 [verbose] > "file2.txt", nameof FileSystemChangeType.Deleted
00:02:30 #4160 [verbose] > ]]
00:02:30 #4161 [verbose] > |> _sequenceEqual eventList
00:02:30 #4162 [verbose] >
00:02:30 #4163 [verbose] > [[
00:02:30 #4164 [verbose] > "file1.txt", nameof FileSystemChangeType.Deleted
00:02:30 #4165 [verbose] > "file2.txt", nameof FileSystemChangeType.Deleted
00:02:30 #4166 [verbose] > ]]
00:02:30 #4167 [verbose] > |> Map.ofList
00:02:30 #4168 [verbose] > |> _sequenceEqual eventMap
00:02:30 #4169 [verbose] >
00:02:30 #4170 [verbose] > run
00:02:30 #4171 [verbose] > |> retry_fn 3
00:02:30 #4172 [verbose] > |> _assertEqual (Some ())
00:02:33 #4173 [verbose] >
00:02:33 #4174 [verbose] > ╭─[ 2.81s - stdout ]───────────────────────────────────────────────────────────╮
00:02:33 #4175 [verbose] > │ FSharpOption<Unit> │
00:02:33 #4176 [verbose] > │ Value: <null> │
00:02:33 #4177 [verbose] > │ 00:00:22 #6 [debug] watchWithFilter / Disposing watch stream / filter: │
00:02:33 #4178 [verbose] > │ FileName, LastWrite │
00:02:33 #4179 [verbose] > │ FSharpList<Tuple<String,String>> │
00:02:33 #4180 [verbose] > │ ( file1.txt, Created ) │
00:02:33 #4181 [verbose] > │ ( file1.txt, Changed ) │
00:02:33 #4182 [verbose] > │ ( file1.txt, Deleted ) │
00:02:33 #4183 [verbose] > │ ( file2.txt, Created ) │
00:02:33 #4184 [verbose] > │ ( file2.txt, Changed ) │
00:02:33 #4185 [verbose] > │ ( file2.txt, Deleted ) │
00:02:33 #4186 [verbose] > │ FSharpMap<String,String> │
00:02:33 #4187 [verbose] > │ - Key: file1.txt │
00:02:33 #4188 [verbose] > │ Value: Deleted │
00:02:33 #4189 [verbose] > │ - Key: file2.txt │
00:02:33 #4190 [verbose] > │ Value: Deleted │
00:02:33 #4191 [verbose] > │ FSharpOption<Unit> │
00:02:33 #4192 [verbose] > │ Value: <null> │
00:02:33 #4193 [verbose] > │ │
00:02:33 #4194 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:33 #4195 [verbose] >
00:02:33 #4196 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:33 #4197 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:33 #4198 [verbose] > │ #### rename (test) │
00:02:33 #4199 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:33 #4200 [verbose] >
00:02:33 #4201 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:33 #4202 [verbose] > //// test
00:02:33 #4203 [verbose] >
00:02:33 #4204 [verbose] > let inline write path = async {
00:02:33 #4205 [verbose] > let n = 2
00:02:33 #4206 [verbose] >
00:02:33 #4207 [verbose] > for i = 1 to n do
00:02:33 #4208 [verbose] > do! $"{i}" |> SpiralFileSystem.write_all_text_async (path </>
00:02:33 #4209 [verbose] > $"file{i}.txt")
00:02:33 #4210 [verbose] >
00:02:33 #4211 [verbose] > for i = 1 to n do
00:02:33 #4212 [verbose] > do! path </> $"file{i}.txt" |> SpiralFileSystem.move_file_async (path
00:02:33 #4213 [verbose] > </> $"file_{i}.txt") |> Async.Ignore
00:02:33 #4214 [verbose] >
00:02:33 #4215 [verbose] > for i = 1 to n do
00:02:33 #4216 [verbose] > do! SpiralFileSystem.delete_file_async (path </> $"file_{i}.txt") |>
00:02:33 #4217 [verbose] > Async.Ignore
00:02:33 #4218 [verbose] >
00:02:33 #4219 [verbose] > do! Async.Sleep 150
00:02:33 #4220 [verbose] > }
00:02:33 #4221 [verbose] >
00:02:33 #4222 [verbose] > let inline run () =
00:02:33 #4223 [verbose] > let eventMap, eventList = testEventsSorted (watchDirectory (fun _ -> false))
00:02:33 #4224 [verbose] > write
00:02:33 #4225 [verbose] >
00:02:33 #4226 [verbose] > [[
00:02:33 #4227 [verbose] > "file1.txt", nameof FileSystemChangeType.Created
00:02:33 #4228 [verbose] > "file1.txt", nameof FileSystemChangeType.Changed
00:02:33 #4229 [verbose] > "file2.txt", nameof FileSystemChangeType.Created
00:02:33 #4230 [verbose] > "file2.txt", nameof FileSystemChangeType.Changed
00:02:33 #4231 [verbose] >
00:02:33 #4232 [verbose] > "file_1.txt", nameof FileSystemChangeType.Renamed
00:02:33 #4233 [verbose] > "file_1.txt", nameof FileSystemChangeType.Deleted
00:02:33 #4234 [verbose] >
00:02:33 #4235 [verbose] > "file_2.txt", nameof FileSystemChangeType.Renamed
00:02:33 #4236 [verbose] > "file_2.txt", nameof FileSystemChangeType.Deleted
00:02:33 #4237 [verbose] > ]]
00:02:33 #4238 [verbose] > |> _sequenceEqual eventList
00:02:33 #4239 [verbose] >
00:02:33 #4240 [verbose] > [[
00:02:33 #4241 [verbose] > "file1.txt", nameof FileSystemChangeType.Changed
00:02:33 #4242 [verbose] > "file2.txt", nameof FileSystemChangeType.Changed
00:02:33 #4243 [verbose] > "file_1.txt", nameof FileSystemChangeType.Deleted
00:02:33 #4244 [verbose] > "file_2.txt", nameof FileSystemChangeType.Deleted
00:02:33 #4245 [verbose] > ]]
00:02:33 #4246 [verbose] > |> Map.ofList
00:02:33 #4247 [verbose] > |> _sequenceEqual eventMap
00:02:33 #4248 [verbose] >
00:02:33 #4249 [verbose] > run
00:02:33 #4250 [verbose] > |> retry_fn 3
00:02:33 #4251 [verbose] > |> _assertEqual (Some ())
00:02:35 #4252 [verbose] >
00:02:35 #4253 [verbose] > ╭─[ 2.37s - stdout ]───────────────────────────────────────────────────────────╮
00:02:35 #4254 [verbose] > │ FSharpOption<Unit> │
00:02:35 #4255 [verbose] > │ Value: <null> │
00:02:35 #4256 [verbose] > │ 00:00:25 #7 [debug] watchWithFilter / Disposing watch stream / filter: │
00:02:35 #4257 [verbose] > │ FileName, LastWrite │
00:02:35 #4258 [verbose] > │ FSharpList<Tuple<String,String>> │
00:02:35 #4259 [verbose] > │ ( file1.txt, Created ) │
00:02:35 #4260 [verbose] > │ ( file1.txt, Changed ) │
00:02:35 #4261 [verbose] > │ ( file2.txt, Created ) │
00:02:35 #4262 [verbose] > │ ( file2.txt, Changed ) │
00:02:35 #4263 [verbose] > │ ( file_1.txt, Renamed ) │
00:02:35 #4264 [verbose] > │ ( file_1.txt, Deleted ) │
00:02:35 #4265 [verbose] > │ ( file_2.txt, Renamed ) │
00:02:35 #4266 [verbose] > │ ( file_2.txt, Deleted ) │
00:02:35 #4267 [verbose] > │ FSharpMap<String,String> │
00:02:35 #4268 [verbose] > │ - Key: file1.txt │
00:02:35 #4269 [verbose] > │ Value: Changed │
00:02:35 #4270 [verbose] > │ - Key: file2.txt │
00:02:35 #4271 [verbose] > │ Value: Changed │
00:02:35 #4272 [verbose] > │ - Key: file_1.txt │
00:02:35 #4273 [verbose] > │ Value: Deleted │
00:02:35 #4274 [verbose] > │ - Key: file_2.txt │
00:02:35 #4275 [verbose] > │ Value: Deleted │
00:02:35 #4276 [verbose] > │ FSharpOption<Unit> │
00:02:35 #4277 [verbose] > │ Value: <null> │
00:02:35 #4278 [verbose] > │ │
00:02:35 #4279 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:35 #4280 [verbose] >
00:02:35 #4281 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:35 #4282 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:35 #4283 [verbose] > │ #### full (test) │
00:02:35 #4284 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:35 #4285 [verbose] >
00:02:35 #4286 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:35 #4287 [verbose] > //// test
00:02:35 #4288 [verbose] >
00:02:35 #4289 [verbose] > let inline write path = async {
00:02:35 #4290 [verbose] > let n = 2
00:02:35 #4291 [verbose] >
00:02:35 #4292 [verbose] > for i = 1 to n do
00:02:35 #4293 [verbose] > do! $"{i}" |> SpiralFileSystem.write_all_text_async (path </>
00:02:35 #4294 [verbose] > $"file{i}.txt")
00:02:35 #4295 [verbose] >
00:02:35 #4296 [verbose] > for i = 1 to n do
00:02:35 #4297 [verbose] > do! "" |> SpiralFileSystem.write_all_text_async (path </>
00:02:35 #4298 [verbose] > $"file{i}.txt")
00:02:35 #4299 [verbose] >
00:02:35 #4300 [verbose] > for i = 1 to n do
00:02:35 #4301 [verbose] > do! path </> $"file{i}.txt" |> SpiralFileSystem.move_file_async (path
00:02:35 #4302 [verbose] > </> $"file_{i}.txt") |> Async.Ignore
00:02:35 #4303 [verbose] >
00:02:35 #4304 [verbose] > for i = 1 to n do
00:02:35 #4305 [verbose] > do! $"{i}" |> SpiralFileSystem.write_all_text_async (path </>
00:02:35 #4306 [verbose] > $"file_{i}.txt")
00:02:35 #4307 [verbose] >
00:02:35 #4308 [verbose] > for i = 1 to n do
00:02:35 #4309 [verbose] > do! SpiralFileSystem.delete_file_async (path </> $"file_{i}.txt") |>
00:02:35 #4310 [verbose] > Async.Ignore
00:02:35 #4311 [verbose] >
00:02:35 #4312 [verbose] > do! Async.Sleep 150
00:02:35 #4313 [verbose] > }
00:02:35 #4314 [verbose] >
00:02:35 #4315 [verbose] > let inline run () =
00:02:35 #4316 [verbose] > let eventMap, eventList = testEventsSorted (watchDirectory (fun _ -> false))
00:02:35 #4317 [verbose] > write
00:02:35 #4318 [verbose] >
00:02:35 #4319 [verbose] > [[
00:02:35 #4320 [verbose] > "file1.txt", nameof FileSystemChangeType.Created
00:02:35 #4321 [verbose] > "file1.txt", nameof FileSystemChangeType.Changed
00:02:35 #4322 [verbose] > "file2.txt", nameof FileSystemChangeType.Created
00:02:35 #4323 [verbose] > "file2.txt", nameof FileSystemChangeType.Changed
00:02:35 #4324 [verbose] >
00:02:35 #4325 [verbose] > "file_1.txt", nameof FileSystemChangeType.Changed
00:02:35 #4326 [verbose] > "file_1.txt", nameof FileSystemChangeType.Renamed
00:02:35 #4327 [verbose] > "file_1.txt", nameof FileSystemChangeType.Deleted
00:02:35 #4328 [verbose] >
00:02:35 #4329 [verbose] > "file_2.txt", nameof FileSystemChangeType.Changed
00:02:35 #4330 [verbose] > "file_2.txt", nameof FileSystemChangeType.Renamed
00:02:35 #4331 [verbose] > "file_2.txt", nameof FileSystemChangeType.Deleted
00:02:35 #4332 [verbose] > ]]
00:02:35 #4333 [verbose] > |> _sequenceEqual eventList
00:02:35 #4334 [verbose] >
00:02:35 #4335 [verbose] > [[
00:02:35 #4336 [verbose] > "file1.txt", nameof FileSystemChangeType.Changed
00:02:35 #4337 [verbose] > "file2.txt", nameof FileSystemChangeType.Changed
00:02:35 #4338 [verbose] > "file_1.txt", nameof FileSystemChangeType.Deleted
00:02:35 #4339 [verbose] > "file_2.txt", nameof FileSystemChangeType.Deleted
00:02:35 #4340 [verbose] > ]]
00:02:35 #4341 [verbose] > |> Map.ofList
00:02:35 #4342 [verbose] > |> _sequenceEqual eventMap
00:02:35 #4343 [verbose] >
00:02:35 #4344 [verbose] > run
00:02:35 #4345 [verbose] > |> retry_fn 3
00:02:35 #4346 [verbose] > |> _assertEqual (Some ())
00:02:38 #4347 [verbose] >
00:02:38 #4348 [verbose] > ╭─[ 2.48s - stdout ]───────────────────────────────────────────────────────────╮
00:02:38 #4349 [verbose] > │ FSharpOption<Unit> │
00:02:38 #4350 [verbose] > │ Value: <null> │
00:02:38 #4351 [verbose] > │ 00:00:27 #8 [debug] watchWithFilter / Disposing watch stream / filter: │
00:02:38 #4352 [verbose] > │ FileName, LastWrite │
00:02:38 #4353 [verbose] > │ FSharpList<Tuple<String,String>> │
00:02:38 #4354 [verbose] > │ ( file1.txt, Created ) │
00:02:38 #4355 [verbose] > │ ( file1.txt, Changed ) │
00:02:38 #4356 [verbose] > │ ( file2.txt, Created ) │
00:02:38 #4357 [verbose] > │ ( file2.txt, Changed ) │
00:02:38 #4358 [verbose] > │ ( file_1.txt, Changed ) │
00:02:38 #4359 [verbose] > │ ( file_1.txt, Renamed ) │
00:02:38 #4360 [verbose] > │ ( file_1.txt, Deleted ) │
00:02:38 #4361 [verbose] > │ ( file_2.txt, Changed ) │
00:02:38 #4362 [verbose] > │ ( file_2.txt, Renamed ) │
00:02:38 #4363 [verbose] > │ ( file_2.txt, Deleted ) │
00:02:38 #4364 [verbose] > │ FSharpMap<String,String> │
00:02:38 #4365 [verbose] > │ - Key: file1.txt │
00:02:38 #4366 [verbose] > │ Value: Changed │
00:02:38 #4367 [verbose] > │ - Key: file2.txt │
00:02:38 #4368 [verbose] > │ Value: Changed │
00:02:38 #4369 [verbose] > │ - Key: file_1.txt │
00:02:38 #4370 [verbose] > │ Value: Deleted │
00:02:38 #4371 [verbose] > │ - Key: file_2.txt │
00:02:38 #4372 [verbose] > │ Value: Deleted │
00:02:38 #4373 [verbose] > │ FSharpOption<Unit> │
00:02:38 #4374 [verbose] > │ Value: <null> │
00:02:38 #4375 [verbose] > │ │
00:02:38 #4376 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:40 #4377 [verbose] > [NbConvertApp] Converting notebook FileSystem.dib.ipynb to html
00:02:40 #4378 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:02:40 #4379 [verbose] > validate(nb)
00:02:41 #4380 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:02:41 #4381 [verbose] > return _pygments_highlight(
00:02:42 #4382 [verbose] > [NbConvertApp] Writing 388492 bytes to FileSystem.dib.html
00:02:43 #4383 [debug] executeAsync / exitCode: 0 / output.Length: 66732
00:02:43 #4384 [debug] main / executeCommand / exitCode: 0
00:02:43 #4385 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 Networking.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:02:46 #4386 [verbose] >
00:02:46 #4387 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:46 #4388 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:46 #4389 [verbose] > │ # Networking (Polyglot) │
00:02:46 #4390 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:46 #4391 [verbose] >
00:02:46 #4392 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:46 #4393 [verbose] > #!import ../../lib/fsharp/Notebooks.dib
00:02:46 #4394 [verbose] > #!import ../../lib/fsharp/Testing.dib
00:02:46 #4395 [verbose] >
00:02:46 #4396 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:46 #4397 [verbose] > #r
00:02:46 #4398 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:02:46 #4399 [verbose] > spNetCore.Html.Abstractions.dll"
00:02:46 #4400 [verbose] > #r
00:02:46 #4401 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:02:46 #4402 [verbose] > otNet.Interactive.dll"
00:02:46 #4403 [verbose] > #r
00:02:46 #4404 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:02:46 #4405 [verbose] > otNet.Interactive.FSharp.dll"
00:02:46 #4406 [verbose] > #r
00:02:46 #4407 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:02:46 #4408 [verbose] > otNet.Interactive.Formatting.dll"
00:02:46 #4409 [verbose] > open System
00:02:46 #4410 [verbose] > open System.IO
00:02:46 #4411 [verbose] > open System.Text
00:02:46 #4412 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:02:50 #4413 [verbose] >
00:02:50 #4414 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:50 #4415 [verbose] > #r
00:02:50 #4416 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:02:50 #4417 [verbose] > otNet.Interactive.FSharp.dll"
00:02:50 #4418 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:02:50 #4419 [verbose] > #r
00:02:50 #4420 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:02:50 #4421 [verbose] > otNet.Interactive.dll"
00:02:50 #4422 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:02:50 #4423 [verbose] >
00:02:50 #4424 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:50 #4425 [verbose] > //// test
00:02:50 #4426 [verbose] >
00:02:50 #4427 [verbose] > Formatter.ListExpansionLimit <- 100
00:02:51 #4428 [verbose] >
00:02:51 #4429 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:51 #4430 [verbose] > #r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
00:02:51 #4431 [verbose] >
00:02:51 #4432 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:51 #4433 [verbose] > //// test
00:02:51 #4434 [verbose] >
00:02:51 #4435 [verbose] > type AssertExceptionFormatter (ex) =
00:02:51 #4436 [verbose] > member _.Text =
00:02:51 #4437 [verbose] > ex.ToString()
00:02:51 #4438 [verbose] > .Replace("32m", "<span style=\"color: green;\">")
00:02:51 #4439 [verbose] > .Replace("36m", "</span>")
00:02:51 #4440 [verbose] > .Replace("31m", "<span style=\"color: red;\">")
00:02:51 #4441 [verbose] > .Replace("\n", "<br/>\n")
00:02:51 #4442 [verbose] >
00:02:51 #4443 [verbose] >
00:02:51 #4444 [verbose] > Formatter.Register<AssertExceptionFormatter> ((fun (x :
00:02:51 #4445 [verbose] > AssertExceptionFormatter) -> x.Text), "text/html")
00:02:51 #4446 [verbose] >
00:02:51 #4447 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:51 #4448 [verbose] > //// test
00:02:51 #4449 [verbose] >
00:02:51 #4450 [verbose] > let inline __expect fn log expected actual =
00:02:51 #4451 [verbose] > if log then printfn $"{actual.ToDisplayString ()}"
00:02:51 #4452 [verbose] > try
00:02:51 #4453 [verbose] > "Testing.__expect" |> fn actual expected
00:02:51 #4454 [verbose] > with :? Expecto.AssertException as ex ->
00:02:51 #4455 [verbose] > AssertExceptionFormatter(ex).Display () |> ignore
00:02:51 #4456 [verbose] > failwith (ex.GetType().FullName)
00:02:51 #4457 [verbose] >
00:02:51 #4458 [verbose] > let inline __contains log expected actual = __expect Expecto.Expect.contains log
00:02:51 #4459 [verbose] > expected actual
00:02:51 #4460 [verbose] > let inline _contains expected actual = __contains true expected actual
00:02:51 #4461 [verbose] >
00:02:51 #4462 [verbose] > let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
00:02:51 #4463 [verbose] > expected actual
00:02:51 #4464 [verbose] > let inline _assertEqual expected actual = __assertEqual true expected actual
00:02:51 #4465 [verbose] >
00:02:51 #4466 [verbose] > let inline __isGreaterThan log expected actual = __expect
00:02:51 #4467 [verbose] > Expecto.Expect.isGreaterThan log ex...
00:02:52 #4468 [verbose] >
00:02:52 #4469 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:52 #4470 [verbose] > //// test
00:02:52 #4471 [verbose] >
00:02:52 #4472 [verbose] > let inline __isBetween log a b actual =
00:02:52 #4473 [verbose] > let inline isBetween actual (a, b) _ =
00:02:52 #4474 [verbose] > __isGreaterThanOrEqual log a actual
00:02:52 #4475 [verbose] > __isLessThanOrEqual log b actual
00:02:52 #4476 [verbose] > __expect isBetween log (a, b) actual
00:02:52 #4477 [verbose] > let inline _isBetween a b actual = __isBetween true a b actual
00:02:52 #4478 [verbose] >
00:02:52 #4479 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:52 #4480 [verbose] > #r
00:02:52 #4481 [verbose] > @"../../../../../../../.nuget/packages/argu/6.2.2/lib/netstandard2.0/Argu.dll"
00:02:52 #4482 [verbose] > #r
00:02:52 #4483 [verbose] > @"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li
00:02:52 #4484 [verbose] > b/net6.0/System.CommandLine.dll"
00:02:52 #4485 [verbose] >
00:02:52 #4486 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:52 #4487 [verbose] > #!import ../../lib/spiral/common.fsx
00:02:52 #4488 [verbose] > #!import ../../lib/spiral/sm.fsx
00:02:52 #4489 [verbose] > #!import ../../lib/spiral/date_time.fsx
00:02:52 #4490 [verbose] > #!import ../../lib/spiral/file_system.fsx
00:02:52 #4491 [verbose] > #!import ../../lib/spiral/trace.fsx
00:02:52 #4492 [verbose] > #!import ../../lib/spiral/lib.fsx
00:02:52 #4493 [verbose] > #!import ../../lib/fsharp/Common.fs
00:02:52 #4494 [verbose] > #!import ../../lib/fsharp/CommonFSharp.fs
00:02:52 #4495 [verbose] > #!import ../../lib/fsharp/Async.fs
00:02:52 #4496 [verbose] > #!import ../../lib/fsharp/Runtime.fs
00:02:52 #4497 [verbose] >
00:02:52 #4498 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:52 #4499 [verbose] > type [[<Struct>]] US0 =
00:02:52 #4500 [verbose] > | US0_0
00:02:52 #4501 [verbose] > | US0_1
00:02:52 #4502 [verbose] > and [[<Struct>]] US1 =
00:02:52 #4503 [verbose] > | US1_0 of f0_0 : US0
00:02:52 #4504 [verbose] > | US1_1
00:02:52 #4505 [verbose] > let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
00:02:52 #4506 [verbose] > let v1 : System.IDisposable option = None
00:02:52 #4507 [verbose] > let mutable _v1 = v1
00:02:52 #4508 [verbose] > #if FABLE_COMPILER_RUST && !WASM && !CONTRACT
00:02:52 #4509 [verbose] > let v2 : System.IDisposable = null |> unbox<System.IDisposable>
00:02:52 #4510 [verbose] > v2
00:02:52 #4511 [verbose] > #endif
00:02:52 #4512 [verbose] > #if FABLE_COMPILER_RUST && WASM
00:02:52 #4513 [verbose] > let v3 : System.IDisposable = null |> unbox<System.IDisposable>
00:02:52 #4514 [verbose] > v3
00:02:52 #4515 [verbose] > #endif
00:02:52 #4516 [verbose] > #if FABLE_COMPILER_RUST && CONTRACT
00:02:52 #4517 [verbose] > let v4 : System.IDisposable = null |> unbox<System.IDisposable>
00:02:52 #4518 [verbose] > v4
00:02:52 #4519 [verbose] > #endif
00:02:52 #4520 [verbose] > #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
00:02:52 #4521 [verbose] > !WASM && !CONTRACT
00:02:52 #4522 [verbose] > let v5 : System.ID...
00:02:53 #4523 [verbose] >
00:02:53 #4524 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:53 #4525 [verbose] > type Mut0 = {mutable l0 : int32; mutable l1 : string}
00:02:53 #4526 [verbose] > and Mut1 = {mutable l0 : int32}
00:02:53 #4527 [verbose] > let rec closure1 (v0 : string) (v1 : string) : bool =
00:02:53 #4528 [verbose] > let v2 : bool = v1.Contains v0
00:02:53 #4529 [verbose] > v2
00:02:53 #4530 [verbose] > and closure0 () (v0 : string) : (string -> bool) =
00:02:53 #4531 [verbose] > closure1(v0)
00:02:53 #4532 [verbose] > and closure3 (v0 : string) (v1 : string) : bool =
00:02:53 #4533 [verbose] > let v2 : bool = v1.EndsWith v0
00:02:53 #4534 [verbose] > v2
00:02:53 #4535 [verbose] > and closure2 () (v0 : string) : (string -> bool) =
00:02:53 #4536 [verbose] > closure3(v0)
00:02:53 #4537 [verbose] > and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
00:02:53 #4538 [verbose] > let v3 : string = v2.PadLeft (v0, v1)
00:02:53 #4539 [verbose] > v3
00:02:53 #4540 [verbose] > and closure5 (v0 : int32) (v1 : char) : (string -> string) =
00:02:53 #4541 [verbose] > closure6(v0, v1)
00:02:53 #4542 [verbose] > and closure4 () (v0 : int32) : (char -> (string -> string)) =
00:02:53 #4543 [verbose] > closure5(v0)
00:02:53 #4544 [verbose] > and closure8 (v0 : int32) (v1 : string) : string =
00:02:53 #4545 [verbose] > let v2 : stri...
00:02:53 #4546 [verbose] >
00:02:53 #4547 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:53 #4548 [verbose] > let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
00:02:53 #4549 [verbose] > let v2 : (System.Guid -> string) = _.ToString()
00:02:53 #4550 [verbose] > let v3 : string = v2 v0
00:02:53 #4551 [verbose] > let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
00:02:53 #4552 [verbose] > let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
00:02:53 #4553 [verbose] > v5
00:02:53 #4554 [verbose] > and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
00:02:53 #4555 [verbose] > closure1(v0)
00:02:53 #4556 [verbose] > and closure5 (v0 : string, v1 : string) (v2 : string) : string =
00:02:53 #4557 [verbose] > let v3 : string = v2.Replace (v0, v1)
00:02:53 #4558 [verbose] > v3
00:02:53 #4559 [verbose] > and closure4 (v0 : string) (v1 : string) : (string -> string) =
00:02:53 #4560 [verbose] > closure5(v0, v1)
00:02:53 #4561 [verbose] > and closure3 () (v0 : string) : (string -> (string -> string)) =
00:02:53 #4562 [verbose] > closure4(v0)
00:02:53 #4563 [verbose] > and method0 () : (string -> (string -> (string -> string))) =
00:02:53 #4564 [verbose] > closure3()
00:02:53 #4565 [verbose] > and closure2 (...
00:02:53 #4566 [verbose] >
00:02:53 #4567 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:53 #4568 [verbose] > #if FABLE_COMPILER // file_system.types
00:02:53 #4569 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
00:02:53 #4570 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
00:02:53 #4571 [verbose] > base64_DecodeError = class end
00:02:53 #4572 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
00:02:53 #4573 [verbose] > = class end
00:02:53 #4574 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
00:02:53 #4575 [verbose] > = class end
00:02:53 #4576 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
00:02:53 #4577 [verbose] > serde_json_Error = class end
00:02:53 #4578 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
00:02:53 #4579 [verbose] > serde_json_Value = class end
00:02:53 #4580 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
00:02:53 #4581 [verbose] > serde_wasm_bindgen_Error = class end
00:02:53 #4582 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
00:02:55 #4583 [verbose] >
00:02:55 #4584 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:55 #4585 [verbose] > module State = let mutable trace_state = None
00:02:55 #4586 [verbose] > type [[<Struct>]] US0 =
00:02:55 #4587 [verbose] > | US0_0
00:02:55 #4588 [verbose] > | US0_1
00:02:55 #4589 [verbose] > | US0_2
00:02:55 #4590 [verbose] > | US0_3
00:02:55 #4591 [verbose] > | US0_4
00:02:55 #4592 [verbose] > and Mut0 = {mutable l0 : int64}
00:02:55 #4593 [verbose] > and Mut1 = {mutable l0 : bool}
00:02:55 #4594 [verbose] > and Mut2 = {mutable l0 : US0}
00:02:55 #4595 [verbose] > and [[<Struct>]] US1 =
00:02:55 #4596 [verbose] > | US1_0 of f0_0 : int64
00:02:55 #4597 [verbose] > | US1_1
00:02:55 #4598 [verbose] > and [[<Struct>]] US2 =
00:02:55 #4599 [verbose] > | US2_0 of f0_0 : int64
00:02:55 #4600 [verbose] > | US2_1
00:02:55 #4601 [verbose] > let rec method1 (v0 : int64 option) : int64 option =
00:02:55 #4602 [verbose] > v0
00:02:55 #4603 [verbose] > and method2 (v0 : int64 option) : int64 option =
00:02:55 #4604 [verbose] > v0
00:02:55 #4605 [verbose] > and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
00:02:55 #4606 [verbose] > let v0 : Mut1 = {l0 = true} : Mut1
00:02:55 #4607 [verbose] > let v1 : Mut0 = {l0 = 0L} : Mut0
00:02:55 #4608 [verbose] > let v2 : US0 = US0_0
00:02:55 #4609 [verbose] > let v3 : Mut2 = {l0 = v2} : Mut2
00:02:55 #4610 [verbose] > let v4 : Mut1 = {l0 = false} : Mut1
00:02:55 #4611 [verbose] > let v5 : int64 option option = None
00:02:55 #4612 [verbose] > ...
00:02:56 #4613 [verbose] >
00:02:56 #4614 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:56 #4615 [verbose] > module SpiralTrace =
00:02:56 #4616 [verbose] > let get_trace_state () =
00:02:56 #4617 [verbose] > #if !INTERACTIVE
00:02:56 #4618 [verbose] > Trace.get_trace_state ()
00:02:56 #4619 [verbose] > #else
00:02:56 #4620 [verbose] > get_trace_state ()
00:02:56 #4621 [verbose] > #endif
00:02:56 #4622 [verbose] > let trace x =
00:02:56 #4623 [verbose] > #if !INTERACTIVE
00:02:56 #4624 [verbose] > Trace.trace x
00:02:56 #4625 [verbose] > #else
00:02:56 #4626 [verbose] > trace x
00:02:56 #4627 [verbose] > #endif
00:02:56 #4628 [verbose] >
00:02:56 #4629 [verbose] > let US0_0 =
00:02:56 #4630 [verbose] > #if !INTERACTIVE
00:02:56 #4631 [verbose] > Trace.US0_0
00:02:56 #4632 [verbose] > #else
00:02:56 #4633 [verbose] > US0_0
00:02:56 #4634 [verbose] > #endif
00:02:56 #4635 [verbose] >
00:02:56 #4636 [verbose] > let US0_1 =
00:02:56 #4637 [verbose] > #if !INTERACTIVE
00:02:56 #4638 [verbose] > Trace.US0_1
00:02:56 #4639 [verbose] > #else
00:02:56 #4640 [verbose] > US0_1
00:02:56 #4641 [verbose] > #endif
00:02:56 #4642 [verbose] >
00:02:56 #4643 [verbose] > let US0_2 =
00:02:56 #4644 [verbose] > #if !INTERACTIVE
00:02:56 #4645 [verbose] > Trace.US0_2
00:02:56 #4646 [verbose] > #else
00:02:56 #4647 [verbose] > US0_2
00:02:56 #4648 [verbose] > #endif
00:02:56 #4649 [verbose] >
00:02:56 #4650 [verbose] > let US0_3 =
00:02:56 #4651 [verbose] > #if !INTERACTIVE
00:02:56 #4652 [verbose] > Trace.US0_3
00:02:56 #4653 [verbose] > #else
00:02:56 #4654 [verbose] > US0_3
00:02:56 #4655 [verbose] > #endif
00:02:56 #4656 [verbose] >
00:02:56 #4657 [verbose] > let US0_4 =
00:02:56 #4658 [verbose] > #if !INTERACTIVE
00:02:56 #4659 [verbose] > Trace.US0_4
00:02:56 #4660 [verbose] > #else
00:02:56 #4661 [verbose] > US0_4
00:02:56 #4662 [verbose] > #endif
00:02:56 #4663 [verbose] >
00:02:56 #4664 [verbose] >
00:02:56 #4665 [verbose] > #if !FABLE_COMPILER && !WASM && !CONTRACT
00:02:56 #4666 [verbose] > module SpiralDateTime =
00:02:56 #4667 [verbose] > let format x =
00:02:56 #4668 [verbose] > #if !INTERACTIVE
00:02:56 #4669 [verbose] > Date_ti...
00:02:56 #4670 [verbose] >
00:02:56 #4671 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:56 #4672 [verbose] > #if !INTERACTIVE
00:02:56 #4673 [verbose] > namespace Polyglot
00:02:56 #4674 [verbose] > #endif
00:02:56 #4675 [verbose] >
00:02:56 #4676 [verbose] > module Common =
00:02:56 #4677 [verbose] >
00:02:56 #4678 [verbose] > #if !INTERACTIVE
00:02:56 #4679 [verbose] > open Lib
00:02:56 #4680 [verbose] > #endif
00:02:56 #4681 [verbose] >
00:02:56 #4682 [verbose] > let nl = System.Environment.NewLine
00:02:56 #4683 [verbose] > let q = @""""
00:02:56 #4684 [verbose] >
00:02:56 #4685 [verbose] > let inline cons head tail = head :: tail
00:02:56 #4686 [verbose] >
00:02:56 #4687 [verbose] > /// ## memoize
00:02:56 #4688 [verbose] >
00:02:56 #4689 [verbose] > let inline memoize fn =
00:02:56 #4690 [verbose] > let result = lazy fn ()
00:02:56 #4691 [verbose] > fun () -> result.Value
00:02:56 #4692 [verbose] >
00:02:56 #4693 [verbose] > /// ## TraceLevel
00:02:56 #4694 [verbose] >
00:02:56 #4695 [verbose] > type TraceLevel =
00:02:56 #4696 [verbose] > | Verbose
00:02:56 #4697 [verbose] > | Debug
00:02:56 #4698 [verbose] > | Info
00:02:56 #4699 [verbose] > | Warning
00:02:56 #4700 [verbose] > | Critical
00:02:56 #4701 [verbose] >
00:02:56 #4702 [verbose] > let inline getLocals () = ""
00:02:56 #4703 [verbose] >
00:02:56 #4704 [verbose] > /// ## trace
00:02:56 #4705 [verbose] >
00:02:56 #4706 [verbose] > let to_trace_level = function
00:02:56 #4707 [verbose] > | Verbose -> SpiralTrace.US0_0
00:02:56 #4708 [verbose] > | Debug -> SpiralTrace.US0_1
00:02:56 #4709 [verbose] > | Info -> SpiralTrace.US0_2
00:02:56 #4710 [verbose] > | Warning -> SpiralTrace.US0_3
00:02:56 #4711 [verbose] > | Critical -> SpiralTrace.US0_4
00:02:56 #4712 [verbose] >
00:02:56 #4713 [verbose] > let trace level fn g...
00:02:56 #4714 [verbose] >
00:02:56 #4715 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:56 #4716 [verbose] > #if !INTERACTIVE
00:02:56 #4717 [verbose] > namespace Polyglot
00:02:56 #4718 [verbose] > #endif
00:02:56 #4719 [verbose] >
00:02:56 #4720 [verbose] > module CommonFSharp =
00:02:56 #4721 [verbose] >
00:02:56 #4722 [verbose] > open Common
00:02:56 #4723 [verbose] >
00:02:56 #4724 [verbose] > /// ## getUnionCaseName
00:02:56 #4725 [verbose] >
00:02:56 #4726 [verbose] > let inline getUnionCaseName<'T> (x: 'T) =
00:02:56 #4727 [verbose] > match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with
00:02:56 #4728 [verbose] > | case, _ -> case.Name
00:02:56 #4729 [verbose] >
00:02:56 #4730 [verbose] >
00:02:56 #4731 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:56 #4732 [verbose] > #if !INTERACTIVE
00:02:56 #4733 [verbose] > namespace Polyglot
00:02:56 #4734 [verbose] > #endif
00:02:56 #4735 [verbose] >
00:02:56 #4736 [verbose] > module Async =
00:02:56 #4737 [verbose] >
00:02:56 #4738 [verbose] > #if !INTERACTIVE
00:02:56 #4739 [verbose] > open Lib
00:02:56 #4740 [verbose] > #endif
00:02:56 #4741 [verbose] >
00:02:56 #4742 [verbose] > open Common
00:02:56 #4743 [verbose] >
00:02:56 #4744 [verbose] > /// ## choice
00:02:56 #4745 [verbose] >
00:02:56 #4746 [verbose] > let inline choice asyncs = async {
00:02:56 #4747 [verbose] > let e = Event<_> ()
00:02:56 #4748 [verbose] > use cts = new System.Threading.CancellationTokenSource ()
00:02:56 #4749 [verbose] > let fn =
00:02:56 #4750 [verbose] > asyncs
00:02:56 #4751 [verbose] > |> Seq.map (fun a -> async {
00:02:56 #4752 [verbose] > let! x = a
00:02:56 #4753 [verbose] > e.Trigger x
00:02:56 #4754 [verbose] > })
00:02:56 #4755 [verbose] > |> Async.Parallel
00:02:56 #4756 [verbose] > |> Async.Ignore
00:02:56 #4757 [verbose] > Async.Start (fn, cts.Token)
00:02:56 #4758 [verbose] > let! result = Async.AwaitEvent e.Publish
00:02:56 #4759 [verbose] > cts.Cancel ()
00:02:56 #4760 [verbose] > return result
00:02:56 #4761 [verbose] > }
00:02:56 #4762 [verbose] >
00:02:56 #4763 [verbose] > /// ## map
00:02:56 #4764 [verbose] >
00:02:56 #4765 [verbose] > let inline map fn a = async {
00:02:56 #4766 [verbose] > let! x = a
00:02:56 #4767 [verbose] > return fn x
00:02:56 #4768 [verbose] > }
00:02:56 #4769 [verbose] >
00:02:56 #4770 [verbose] > /// ## catch
00:02:56 #4771 [verbose] >
00:02:56 #4772 [verbose] > let inline catch a =
00:02:56 #4773 [verbose] > ...
00:02:56 #4774 [verbose] >
00:02:56 #4775 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:02:56 #4776 [verbose] > #if !INTERACTIVE
00:02:56 #4777 [verbose] > namespace Polyglot
00:02:56 #4778 [verbose] > #endif
00:02:56 #4779 [verbose] >
00:02:56 #4780 [verbose] > module Runtime =
00:02:56 #4781 [verbose] >
00:02:56 #4782 [verbose] > #if !INTERACTIVE
00:02:56 #4783 [verbose] > open Lib
00:02:56 #4784 [verbose] > #endif
00:02:56 #4785 [verbose] >
00:02:56 #4786 [verbose] > open Common
00:02:56 #4787 [verbose] >
00:02:56 #4788 [verbose] > /// ## isWindows
00:02:56 #4789 [verbose] >
00:02:56 #4790 [verbose] > let isWindows =
00:02:56 #4791 [verbose] > fun () ->
00:02:56 #4792 [verbose] > System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform
00:02:56 #4793 [verbose] > System.Runtime.InteropServices.OSPlatform.Windows
00:02:56 #4794 [verbose] > |> memoize
00:02:56 #4795 [verbose] >
00:02:56 #4796 [verbose] > /// ## getExecutableSuffix
00:02:56 #4797 [verbose] >
00:02:56 #4798 [verbose] > let inline getExecutableSuffix () =
00:02:56 #4799 [verbose] > if isWindows ()
00:02:56 #4800 [verbose] > then ".exe"
00:02:56 #4801 [verbose] > else ""
00:02:56 #4802 [verbose] >
00:02:56 #4803 [verbose] > /// ## splitCommand
00:02:56 #4804 [verbose] >
00:02:56 #4805 [verbose] > type private CommandParseStep =
00:02:56 #4806 [verbose] > | Start
00:02:56 #4807 [verbose] > | Path of quoted: bool
00:02:56 #4808 [verbose] > | Arguments
00:02:56 #4809 [verbose] >
00:02:56 #4810 [verbose] > let splitCommand (command: string) =
00:02:56 #4811 [verbose] > let rec loop (path, args) chars step =
00:02:56 #4812 [verbose] > match chars, step with
00:02:56 #4813 [verbose] > | ('"' | '\'') ...
00:02:57 #4814 [verbose] >
00:02:57 #4815 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:57 #4816 [verbose] > #if !INTERACTIVE
00:02:57 #4817 [verbose] > open Lib
00:02:57 #4818 [verbose] > #endif
00:02:57 #4819 [verbose] >
00:02:57 #4820 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:57 #4821 [verbose] > open Common
00:02:57 #4822 [verbose] >
00:02:57 #4823 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:57 #4824 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:57 #4825 [verbose] > │ ## testPortOpen │
00:02:57 #4826 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:57 #4827 [verbose] >
00:02:57 #4828 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:57 #4829 [verbose] > let inline testPortOpen port = async {
00:02:57 #4830 [verbose] > let! ct = Async.CancellationToken
00:02:57 #4831 [verbose] > use client = new System.Net.Sockets.TcpClient ()
00:02:57 #4832 [verbose] > try
00:02:57 #4833 [verbose] > do! client.ConnectAsync ("127.0.0.1", port, ct) |>
00:02:57 #4834 [verbose] > Async.awaitValueTaskUnit
00:02:57 #4835 [verbose] > return true
00:02:57 #4836 [verbose] > with ex ->
00:02:57 #4837 [verbose] > trace Verbose (fun () -> $"testPortOpen / ex: {ex |>
00:02:57 #4838 [verbose] > SpiralSm.format_exception}") getLocals
00:02:57 #4839 [verbose] > return false
00:02:57 #4840 [verbose] > }
00:02:57 #4841 [verbose] >
00:02:57 #4842 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:57 #4843 [verbose] > //// test
00:02:57 #4844 [verbose] >
00:02:57 #4845 [verbose] > testPortOpen 65536
00:02:57 #4846 [verbose] > |> Async.runWithTimeout 120
00:02:57 #4847 [verbose] > |> _assertEqual (Some false)
00:02:58 #4848 [verbose] >
00:02:58 #4849 [verbose] > ╭─[ 160.79ms - stdout ]────────────────────────────────────────────────────────╮
00:02:58 #4850 [verbose] > │ 00:00:00 #1 [verbose] testPortOpen / ex: System.ArgumentOutOfRangeException: │
00:02:58 #4851 [verbose] > │ Specified argument was out of the range of valid values. (Parameter 'port') │
00:02:58 #4852 [verbose] > │ FSharpOption<Boolean> │
00:02:58 #4853 [verbose] > │ Value: False │
00:02:58 #4854 [verbose] > │ │
00:02:58 #4855 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:58 #4856 [verbose] >
00:02:58 #4857 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:58 #4858 [verbose] > let inline testPortOpenTimeout timeout port = async {
00:02:58 #4859 [verbose] > let! result =
00:02:58 #4860 [verbose] > testPortOpen port
00:02:58 #4861 [verbose] > |> Async.runWithTimeoutAsync timeout
00:02:58 #4862 [verbose] > return
00:02:58 #4863 [verbose] > match result with
00:02:58 #4864 [verbose] > | None -> false
00:02:58 #4865 [verbose] > | Some result -> result
00:02:58 #4866 [verbose] > }
00:02:58 #4867 [verbose] >
00:02:58 #4868 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:58 #4869 [verbose] > //// test
00:02:58 #4870 [verbose] >
00:02:58 #4871 [verbose] > testPortOpenTimeout 120 65535
00:02:58 #4872 [verbose] > |> Async.RunSynchronously
00:02:58 #4873 [verbose] > |> _assertEqual false
00:02:58 #4874 [verbose] >
00:02:58 #4875 [verbose] > ╭─[ 246.50ms - stdout ]────────────────────────────────────────────────────────╮
00:02:58 #4876 [verbose] > │ 00:00:00 #2 [debug] runWithTimeoutChildAsync / timeout: 120 │
00:02:58 #4877 [verbose] > │ False │
00:02:58 #4878 [verbose] > │ │
00:02:58 #4879 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:58 #4880 [verbose] >
00:02:58 #4881 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:58 #4882 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:58 #4883 [verbose] > │ ## waitForPortAccess │
00:02:58 #4884 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:58 #4885 [verbose] >
00:02:58 #4886 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:58 #4887 [verbose] > let inline waitForPortAccess timeout status port =
00:02:58 #4888 [verbose] > let rec loop retry = async {
00:02:58 #4889 [verbose] > let! isPortOpen =
00:02:58 #4890 [verbose] > match timeout with
00:02:58 #4891 [verbose] > | None -> testPortOpen port
00:02:58 #4892 [verbose] > | Some timeout -> testPortOpenTimeout timeout port
00:02:58 #4893 [verbose] > if isPortOpen = status
00:02:58 #4894 [verbose] > then return retry
00:02:58 #4895 [verbose] > else
00:02:58 #4896 [verbose] > if retry % 100 = 0 then
00:02:58 #4897 [verbose] > let getLocals () = $"port: {port} / retry: {retry} / {getLocals
00:02:58 #4898 [verbose] > ()}"
00:02:58 #4899 [verbose] > trace Verbose (fun () -> "waitForPortAccess") getLocals
00:02:58 #4900 [verbose] > do! Async.Sleep 10
00:02:58 #4901 [verbose] > return! loop (retry + 1)
00:02:58 #4902 [verbose] > }
00:02:58 #4903 [verbose] > loop 0
00:02:58 #4904 [verbose] >
00:02:58 #4905 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:02:58 #4906 [verbose] > //// test
00:02:58 #4907 [verbose] >
00:02:58 #4908 [verbose] > let port = 5555
00:02:58 #4909 [verbose] >
00:02:58 #4910 [verbose] > let inline lockPort () = async {
00:02:58 #4911 [verbose] > trace Debug (fun () -> "_1") getLocals
00:02:58 #4912 [verbose] > do! Async.Sleep 5000
00:02:58 #4913 [verbose] > use listener = new System.Net.Sockets.TcpListener
00:02:58 #4914 [verbose] > (System.Net.IPAddress.Parse "127.0.0.1", port)
00:02:58 #4915 [verbose] > trace Debug (fun () -> "_2") getLocals
00:02:58 #4916 [verbose] > listener.Start ()
00:02:58 #4917 [verbose] > trace Debug (fun () -> "_3") getLocals
00:02:58 #4918 [verbose] > do! Async.Sleep 2000
00:02:58 #4919 [verbose] > trace Debug (fun () -> "_4") getLocals
00:02:58 #4920 [verbose] > listener.Stop ()
00:02:58 #4921 [verbose] > trace Debug (fun () -> "_5") getLocals
00:02:58 #4922 [verbose] > }
00:02:58 #4923 [verbose] >
00:02:58 #4924 [verbose] > async {
00:02:58 #4925 [verbose] > trace Debug (fun () -> "1") getLocals
00:02:58 #4926 [verbose] > let! child = lockPort () |> Async.StartChild
00:02:58 #4927 [verbose] > trace Debug (fun () -> "2") getLocals
00:02:58 #4928 [verbose] > do! Async.Sleep 1
00:02:58 #4929 [verbose] > trace Debug (fun () -> "3") getLocals
00:02:58 #4930 [verbose] > let! retries1 = waitForPortAccess None true port
00:02:58 #4931 [verbose] > trace Debug (fun () -> "4") getLocals
00:02:58 #4932 [verbose] > let! retries2 = waitForPortAccess None false port
00:02:58 #4933 [verbose] > trace Debug (fun () -> "5") getLocals
00:02:58 #4934 [verbose] > do! child
00:02:58 #4935 [verbose] > trace Debug (fun () -> "6") getLocals
00:02:58 #4936 [verbose] > return retries1, retries2
00:02:58 #4937 [verbose] > }
00:02:58 #4938 [verbose] > |> Async.runWithTimeout 20000
00:02:58 #4939 [verbose] > |> function
00:02:58 #4940 [verbose] > | Some (retries1, retries2) ->
00:02:58 #4941 [verbose] > retries1
00:02:58 #4942 [verbose] > |> _isBetween
00:02:58 #4943 [verbose] > (if Runtime.isWindows () then 2 else 2)
00:02:58 #4944 [verbose] > (if Runtime.isWindows () then 5 else 1500)
00:02:58 #4945 [verbose] >
00:02:58 #4946 [verbose] > retries2
00:02:58 #4947 [verbose] > |> _isBetween
00:02:58 #4948 [verbose] > (if Runtime.isWindows () then 80 else 80)
00:02:58 #4949 [verbose] > (if Runtime.isWindows () then 150 else 600)
00:02:58 #4950 [verbose] >
00:02:58 #4951 [verbose] > true
00:02:58 #4952 [verbose] > | _ -> false
00:02:58 #4953 [verbose] > |> _assertEqual true
00:03:08 #4954 [verbose] >
00:03:08 #4955 [verbose] > ╭─[ 9.70s - stdout ]───────────────────────────────────────────────────────────╮
00:03:08 #4956 [verbose] > │ 00:00:01 #3 [debug] 1 │
00:03:08 #4957 [verbose] > │ 00:00:01 #4 [debug] _1 │
00:03:08 #4958 [verbose] > │ 00:00:01 #5 [debug] 2 │
00:03:08 #4959 [verbose] > │ 00:00:01 #6 [debug] 3 │
00:03:08 #4960 [verbose] > │ 00:00:03 #7 [verbose] testPortOpen / ex: System.AggregateException: One or │
00:03:08 #4961 [verbose] > │ more errors occurred. (No connection could be made because the target │
00:03:08 #4962 [verbose] > │ machine actively refused it.) │
00:03:08 #4963 [verbose] > │ 00:00:03 #8 [verbose] waitForPortAccess / port: 5555 / retry: 0 │
00:03:08 #4964 [verbose] > │ 00:00:05 #9 [verbose] testPortOpen / ex: System.AggregateException: One or │
00:03:08 #4965 [verbose] > │ more errors occurred. (No connection could be made because the target │
00:03:08 #4966 [verbose] > │ machine actively refused it.) │
00:03:08 #4967 [verbose] > │ 00:00:06 #10 [debug] _2 │
00:03:08 #4968 [verbose] > │ 00:00:06 #11 [debug] _3 │
00:03:08 #4969 [verbose] > │ 00:00:06 #12 [debug] 4 │
00:03:08 #4970 [verbose] > │ 00:00:06 #13 [verbose] waitForPortAccess / port: 5555 / retry: 0 │
00:03:08 #4971 [verbose] > │ 00:00:07 #14 [verbose] waitForPortAccess / port: 5555 / retry: 100 │
00:03:08 #4972 [verbose] > │ 00:00:08 #15 [debug] _4 │
00:03:08 #4973 [verbose] > │ 00:00:08 #16 [debug] _5 │
00:03:08 #4974 [verbose] > │ 00:00:10 #17 [verbose] testPortOpen / ex: System.AggregateException: One or │
00:03:08 #4975 [verbose] > │ more errors occurred. (No connection could be made because the target │
00:03:08 #4976 [verbose] > │ machine actively refused it.) │
00:03:08 #4977 [verbose] > │ 00:00:10 #18 [debug] 5 │
00:03:08 #4978 [verbose] > │ 00:00:10 #19 [debug] 6 │
00:03:08 #4979 [verbose] > │ 2 │
00:03:08 #4980 [verbose] > │ 2 │
00:03:08 #4981 [verbose] > │ 2 │
00:03:08 #4982 [verbose] > │ 121 │
00:03:08 #4983 [verbose] > │ 121 │
00:03:08 #4984 [verbose] > │ 121 │
00:03:08 #4985 [verbose] > │ True │
00:03:08 #4986 [verbose] > │ │
00:03:08 #4987 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:08 #4988 [verbose] >
00:03:08 #4989 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:08 #4990 [verbose] > //// test
00:03:08 #4991 [verbose] >
00:03:08 #4992 [verbose] > let port = 5555
00:03:08 #4993 [verbose] >
00:03:08 #4994 [verbose] > let inline lockPort () = async {
00:03:08 #4995 [verbose] > trace Debug (fun () -> "_1") getLocals
00:03:08 #4996 [verbose] > do! Async.Sleep 500
00:03:08 #4997 [verbose] > use listener = new System.Net.Sockets.TcpListener
00:03:08 #4998 [verbose] > (System.Net.IPAddress.Parse "127.0.0.1", port)
00:03:08 #4999 [verbose] > trace Debug (fun () -> "_2") getLocals
00:03:08 #5000 [verbose] > listener.Start ()
00:03:08 #5001 [verbose] > trace Debug (fun () -> "_3") getLocals
00:03:08 #5002 [verbose] > do! Async.Sleep 200
00:03:08 #5003 [verbose] > trace Debug (fun () -> "_4") getLocals
00:03:08 #5004 [verbose] > listener.Stop ()
00:03:08 #5005 [verbose] > trace Debug (fun () -> "_5") getLocals
00:03:08 #5006 [verbose] > }
00:03:08 #5007 [verbose] >
00:03:08 #5008 [verbose] > async {
00:03:08 #5009 [verbose] > trace Debug (fun () -> "1") getLocals
00:03:08 #5010 [verbose] > let! child = lockPort () |> Async.StartChild
00:03:08 #5011 [verbose] > trace Debug (fun () -> "2") getLocals
00:03:08 #5012 [verbose] > do! Async.Sleep 1
00:03:08 #5013 [verbose] > trace Debug (fun () -> "3") getLocals
00:03:08 #5014 [verbose] > let! retries1 = waitForPortAccess (Some 60) true port
00:03:08 #5015 [verbose] > trace Debug (fun () -> "4") getLocals
00:03:08 #5016 [verbose] > let! retries2 = waitForPortAccess (Some 60) false port
00:03:08 #5017 [verbose] > trace Debug (fun () -> "5") getLocals
00:03:08 #5018 [verbose] > do! child
00:03:08 #5019 [verbose] > trace Debug (fun () -> "6") getLocals
00:03:08 #5020 [verbose] > return retries1, retries2
00:03:08 #5021 [verbose] > }
00:03:08 #5022 [verbose] > |> Async.runWithTimeout 2000
00:03:08 #5023 [verbose] > |> function
00:03:08 #5024 [verbose] > | Some (retries1, retries2) ->
00:03:08 #5025 [verbose] > retries1
00:03:08 #5026 [verbose] > |> _isBetween
00:03:08 #5027 [verbose] > (if Runtime.isWindows () then 4 else 2)
00:03:08 #5028 [verbose] > (if Runtime.isWindows () then 15 else 150)
00:03:08 #5029 [verbose] >
00:03:08 #5030 [verbose] > retries2
00:03:08 #5031 [verbose] > |> _isBetween
00:03:08 #5032 [verbose] > (if Runtime.isWindows () then 5 else 0)
00:03:08 #5033 [verbose] > (if Runtime.isWindows () then 20 else 60)
00:03:08 #5034 [verbose] >
00:03:08 #5035 [verbose] > true
00:03:08 #5036 [verbose] > | _ -> false
00:03:08 #5037 [verbose] > |> _assertEqual true
00:03:10 #5038 [verbose] >
00:03:10 #5039 [verbose] > ╭─[ 1.73s - stdout ]───────────────────────────────────────────────────────────╮
00:03:10 #5040 [verbose] > │ 00:00:11 #20 [debug] 1 │
00:03:10 #5041 [verbose] > │ 00:00:11 #21 [debug] 2 │
00:03:10 #5042 [verbose] > │ 00:00:11 #22 [debug] _1 │
00:03:10 #5043 [verbose] > │ 00:00:11 #23 [debug] 3 │
00:03:10 #5044 [verbose] > │ 00:00:11 #24 [debug] runWithTimeoutChildAsync / timeout: 60 │
00:03:10 #5045 [verbose] > │ 00:00:11 #25 [verbose] waitForPortAccess / port: 5555 / retry: 0 │
00:03:10 #5046 [verbose] > │ 00:00:11 #26 [debug] runWithTimeoutChildAsync / timeout: 60 │
00:03:10 #5047 [verbose] > │ 00:00:11 #27 [debug] runWithTimeoutChildAsync / timeout: 60 │
00:03:10 #5048 [verbose] > │ 00:00:11 #28 [debug] runWithTimeoutChildAsync / timeout: 60 │
00:03:10 #5049 [verbose] > │ 00:00:11 #29 [debug] runWithTimeoutChildAsync / timeout: 60 │
00:03:10 #5050 [verbose] > │ 00:00:11 #30 [debug] runWithTimeoutChildAsync / timeout: 60 │
00:03:10 #5051 [verbose] > │ 00:00:11 #31 [debug] _2 │
00:03:10 #5052 [verbose] > │ 00:00:11 #32 [debug] _3 │
00:03:10 #5053 [verbose] > │ 00:00:11 #33 [debug] runWithTimeoutChildAsync / timeout: 60 │
00:03:10 #5054 [verbose] > │ 00:00:11 #34 [debug] 4 │
00:03:10 #5055 [verbose] > │ 00:00:11 #35 [verbose] waitForPortAccess / port: 5555 / retry: 0 │
00:03:10 #5056 [verbose] > │ 00:00:12 #36 [debug] _4 │
00:03:10 #5057 [verbose] > │ 00:00:12 #37 [debug] _5 │
00:03:10 #5058 [verbose] > │ 00:00:12 #38 [debug] runWithTimeoutChildAsync / timeout: 60 │
00:03:10 #5059 [verbose] > │ 00:00:12 #39 [debug] 5 │
00:03:10 #5060 [verbose] > │ 00:00:12 #40 [debug] 6 │
00:03:10 #5061 [verbose] > │ 7 │
00:03:10 #5062 [verbose] > │ 7 │
00:03:10 #5063 [verbose] > │ 7 │
00:03:10 #5064 [verbose] > │ 8 │
00:03:10 #5065 [verbose] > │ 8 │
00:03:10 #5066 [verbose] > │ 8 │
00:03:10 #5067 [verbose] > │ True │
00:03:10 #5068 [verbose] > │ │
00:03:10 #5069 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:10 #5070 [verbose] >
00:03:10 #5071 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:10 #5072 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:10 #5073 [verbose] > │ ## getAvailablePort │
00:03:10 #5074 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:10 #5075 [verbose] >
00:03:10 #5076 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:10 #5077 [verbose] > let inline getAvailablePort timeout initialPort =
00:03:10 #5078 [verbose] > let rec loop port = async {
00:03:10 #5079 [verbose] > let! isPortOpen =
00:03:10 #5080 [verbose] > match timeout with
00:03:10 #5081 [verbose] > | None -> testPortOpen port
00:03:10 #5082 [verbose] > | Some timeout -> testPortOpenTimeout timeout port
00:03:10 #5083 [verbose] > if not isPortOpen
00:03:10 #5084 [verbose] > then return port
00:03:10 #5085 [verbose] > else return! loop (port + 1)
00:03:10 #5086 [verbose] > }
00:03:10 #5087 [verbose] > loop initialPort
00:03:10 #5088 [verbose] >
00:03:10 #5089 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:10 #5090 [verbose] > //// test
00:03:10 #5091 [verbose] >
00:03:10 #5092 [verbose] > let port = 5555
00:03:10 #5093 [verbose] >
00:03:10 #5094 [verbose] > let inline lockPorts () = async {
00:03:10 #5095 [verbose] > trace Debug (fun () -> "_1") getLocals
00:03:10 #5096 [verbose] > use listener1 = new System.Net.Sockets.TcpListener
00:03:10 #5097 [verbose] > (System.Net.IPAddress.Parse "127.0.0.1", port)
00:03:10 #5098 [verbose] > use listener2 = new System.Net.Sockets.TcpListener
00:03:10 #5099 [verbose] > (System.Net.IPAddress.Parse "127.0.0.1", port + 1)
00:03:10 #5100 [verbose] > trace Debug (fun () -> "_2") getLocals
00:03:10 #5101 [verbose] > listener1.Start ()
00:03:10 #5102 [verbose] > listener2.Start ()
00:03:10 #5103 [verbose] > trace Debug (fun () -> "_3") getLocals
00:03:10 #5104 [verbose] > do! Async.Sleep 4000
00:03:10 #5105 [verbose] > trace Debug (fun () -> "_4") getLocals
00:03:10 #5106 [verbose] > listener1.Stop ()
00:03:10 #5107 [verbose] > listener2.Stop ()
00:03:10 #5108 [verbose] > trace Debug (fun () -> "_5") getLocals
00:03:10 #5109 [verbose] > }
00:03:10 #5110 [verbose] >
00:03:10 #5111 [verbose] > async {
00:03:10 #5112 [verbose] > trace Debug (fun () -> "1") getLocals
00:03:10 #5113 [verbose] > let! child = lockPorts () |> Async.StartChild
00:03:10 #5114 [verbose] > trace Debug (fun () -> "2") getLocals
00:03:10 #5115 [verbose] > do! Async.Sleep 240
00:03:10 #5116 [verbose] > trace Debug (fun () -> "3") getLocals
00:03:10 #5117 [verbose] > let! availablePort = getAvailablePort None port
00:03:10 #5118 [verbose] > trace Debug (fun () -> "4") getLocals
00:03:10 #5119 [verbose] > let! retries = waitForPortAccess None false port
00:03:10 #5120 [verbose] > trace Debug (fun () -> "5") getLocals
00:03:10 #5121 [verbose] > do! child
00:03:10 #5122 [verbose] > trace Debug (fun () -> "6") getLocals
00:03:10 #5123 [verbose] > return availablePort, retries
00:03:10 #5124 [verbose] > }
00:03:10 #5125 [verbose] > |> Async.runWithTimeout 15000
00:03:10 #5126 [verbose] > |> function
00:03:10 #5127 [verbose] > | Some (availablePort, retries) ->
00:03:10 #5128 [verbose] > availablePort |> _assertEqual (port + 2)
00:03:10 #5129 [verbose] >
00:03:10 #5130 [verbose] > retries
00:03:10 #5131 [verbose] > |> _isBetween
00:03:10 #5132 [verbose] > (if Runtime.isWindows () then 100 else 100)
00:03:10 #5133 [verbose] > (if Runtime.isWindows () then 150 else 1200)
00:03:10 #5134 [verbose] >
00:03:10 #5135 [verbose] > true
00:03:10 #5136 [verbose] > | _ -> false
00:03:10 #5137 [verbose] > |> _assertEqual true
00:03:17 #5138 [verbose] >
00:03:17 #5139 [verbose] > ╭─[ 6.66s - stdout ]───────────────────────────────────────────────────────────╮
00:03:17 #5140 [verbose] > │ 00:00:13 #41 [debug] 1 │
00:03:17 #5141 [verbose] > │ 00:00:13 #42 [debug] 2 │
00:03:17 #5142 [verbose] > │ 00:00:13 #43 [debug] _1 │
00:03:17 #5143 [verbose] > │ 00:00:13 #44 [debug] _2 │
00:03:17 #5144 [verbose] > │ 00:00:13 #45 [debug] _3 │
00:03:17 #5145 [verbose] > │ 00:00:13 #46 [debug] 3 │
00:03:17 #5146 [verbose] > │ 00:00:15 #47 [verbose] testPortOpen / ex: System.AggregateException: One or │
00:03:17 #5147 [verbose] > │ more errors occurred. (No connection could be made because the target │
00:03:17 #5148 [verbose] > │ machine actively refused it.) │
00:03:17 #5149 [verbose] > │ 00:00:15 #48 [debug] 4 │
00:03:17 #5150 [verbose] > │ 00:00:15 #49 [verbose] waitForPortAccess / port: 5555 / retry: 0 │
00:03:17 #5151 [verbose] > │ 00:00:17 #50 [verbose] waitForPortAccess / port: 5555 / retry: 100 │
00:03:17 #5152 [verbose] > │ 00:00:17 #51 [debug] _4 │
00:03:17 #5153 [verbose] > │ 00:00:17 #52 [debug] _5 │
00:03:17 #5154 [verbose] > │ 00:00:19 #53 [verbose] testPortOpen / ex: System.AggregateException: One or │
00:03:17 #5155 [verbose] > │ more errors occurred. (No connection could be made because the target │
00:03:17 #5156 [verbose] > │ machine actively refused it.) │
00:03:17 #5157 [verbose] > │ 00:00:19 #54 [debug] 5 │
00:03:17 #5158 [verbose] > │ 00:00:19 #55 [debug] 6 │
00:03:17 #5159 [verbose] > │ 5557 │
00:03:17 #5160 [verbose] > │ 109 │
00:03:17 #5161 [verbose] > │ 109 │
00:03:17 #5162 [verbose] > │ 109 │
00:03:17 #5163 [verbose] > │ True │
00:03:17 #5164 [verbose] > │ │
00:03:17 #5165 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:17 #5166 [verbose] >
00:03:17 #5167 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:17 #5168 [verbose] > //// test
00:03:17 #5169 [verbose] >
00:03:17 #5170 [verbose] > let port = 5555
00:03:17 #5171 [verbose] >
00:03:17 #5172 [verbose] > let inline lockPorts () = async {
00:03:17 #5173 [verbose] > trace Debug (fun () -> "_1") getLocals
00:03:17 #5174 [verbose] > use listener1 = new System.Net.Sockets.TcpListener
00:03:17 #5175 [verbose] > (System.Net.IPAddress.Parse "127.0.0.1", port)
00:03:17 #5176 [verbose] > use listener2 = new System.Net.Sockets.TcpListener
00:03:17 #5177 [verbose] > (System.Net.IPAddress.Parse "127.0.0.1", port + 1)
00:03:17 #5178 [verbose] > trace Debug (fun () -> "_2") getLocals
00:03:17 #5179 [verbose] > listener1.Start ()
00:03:17 #5180 [verbose] > listener2.Start ()
00:03:17 #5181 [verbose] > trace Debug (fun () -> "_3") getLocals
00:03:17 #5182 [verbose] > do! Async.Sleep 400
00:03:17 #5183 [verbose] > trace Debug (fun () -> "_4") getLocals
00:03:17 #5184 [verbose] > listener1.Stop ()
00:03:17 #5185 [verbose] > listener2.Stop ()
00:03:17 #5186 [verbose] > trace Debug (fun () -> "_5") getLocals
00:03:17 #5187 [verbose] > }
00:03:17 #5188 [verbose] >
00:03:17 #5189 [verbose] > async {
00:03:17 #5190 [verbose] > trace Debug (fun () -> "1") getLocals
00:03:17 #5191 [verbose] > let! child = lockPorts () |> Async.StartChild
00:03:17 #5192 [verbose] > trace Debug (fun () -> "2") getLocals
00:03:17 #5193 [verbose] > do! Async.Sleep 240
00:03:17 #5194 [verbose] > trace Debug (fun () -> "3") getLocals
00:03:17 #5195 [verbose] > let! availablePort = getAvailablePort (Some 60) port
00:03:17 #5196 [verbose] > trace Debug (fun () -> "4") getLocals
00:03:17 #5197 [verbose] > let! retries = waitForPortAccess (Some 60) false port
00:03:17 #5198 [verbose] > trace Debug (fun () -> "5") getLocals
00:03:17 #5199 [verbose] > do! child
00:03:17 #5200 [verbose] > trace Debug (fun () -> "6") getLocals
00:03:17 #5201 [verbose] > return availablePort, retries
00:03:17 #5202 [verbose] > }
00:03:17 #5203 [verbose] > |> Async.runWithTimeout 1500
00:03:17 #5204 [verbose] > |> function
00:03:17 #5205 [verbose] > | Some (availablePort, retries) ->
00:03:17 #5206 [verbose] > availablePort |> _assertEqual (port + 2)
00:03:17 #5207 [verbose] >
00:03:17 #5208 [verbose] > retries
00:03:17 #5209 [verbose] > |> _isBetween
00:03:17 #5210 [verbose] > (if Runtime.isWindows () then 2 else 1)
00:03:17 #5211 [verbose] > (if Runtime.isWindows () then 10 else 120)
00:03:17 #5212 [verbose] >
00:03:17 #5213 [verbose] > true
00:03:17 #5214 [verbose] > | _ -> false
00:03:17 #5215 [verbose] > |> _assertEqual true
00:03:18 #5216 [verbose] >
00:03:18 #5217 [verbose] > ╭─[ 1.34s - stdout ]───────────────────────────────────────────────────────────╮
00:03:18 #5218 [verbose] > │ 00:00:20 #56 [debug] 1 │
00:03:18 #5219 [verbose] > │ 00:00:20 #57 [debug] _1 │
00:03:18 #5220 [verbose] > │ 00:00:20 #58 [debug] 2 │
00:03:18 #5221 [verbose] > │ 00:00:20 #59 [debug] _2 │
00:03:18 #5222 [verbose] > │ 00:00:20 #60 [debug] _3 │
00:03:18 #5223 [verbose] > │ 00:00:20 #61 [debug] 3 │
00:03:18 #5224 [verbose] > │ 00:00:20 #62 [debug] runWithTimeoutChildAsync / timeout: 60 │
00:03:18 #5225 [verbose] > │ 00:00:20 #63 [debug] 4 │
00:03:18 #5226 [verbose] > │ 00:00:20 #64 [verbose] waitForPortAccess / port: 5555 / retry: 0 │
00:03:18 #5227 [verbose] > │ 00:00:20 #65 [debug] _4 │
00:03:18 #5228 [verbose] > │ 00:00:20 #66 [debug] _5 │
00:03:18 #5229 [verbose] > │ 00:00:20 #67 [debug] runWithTimeoutChildAsync / timeout: 60 │
00:03:18 #5230 [verbose] > │ 00:00:20 #68 [debug] 5 │
00:03:18 #5231 [verbose] > │ 00:00:20 #69 [debug] 6 │
00:03:18 #5232 [verbose] > │ 5557 │
00:03:18 #5233 [verbose] > │ 6 │
00:03:18 #5234 [verbose] > │ 6 │
00:03:18 #5235 [verbose] > │ 6 │
00:03:18 #5236 [verbose] > │ True │
00:03:18 #5237 [verbose] > │ │
00:03:18 #5238 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:20 #5239 [verbose] > [NbConvertApp] Converting notebook Networking.dib.ipynb to html
00:03:20 #5240 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:03:20 #5241 [verbose] > validate(nb)
00:03:22 #5242 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:03:22 #5243 [verbose] > return _pygments_highlight(
00:03:22 #5244 [verbose] > [NbConvertApp] Writing 326332 bytes to Networking.dib.html
00:03:23 #5245 [debug] executeAsync / exitCode: 0 / output.Length: 32408
00:03:23 #5246 [debug] main / executeCommand / exitCode: 0
00:03:23 #5247 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 Runtime.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:03:27 #5248 [verbose] >
00:03:27 #5249 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:27 #5250 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:27 #5251 [verbose] > │ # Runtime (Polyglot) │
00:03:27 #5252 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:27 #5253 [verbose] >
00:03:27 #5254 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:27 #5255 [verbose] > #!import ../../lib/fsharp/Notebooks.dib
00:03:27 #5256 [verbose] > #!import ../../lib/fsharp/Testing.dib
00:03:27 #5257 [verbose] >
00:03:27 #5258 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:27 #5259 [verbose] > #r
00:03:27 #5260 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:03:27 #5261 [verbose] > spNetCore.Html.Abstractions.dll"
00:03:27 #5262 [verbose] > #r
00:03:27 #5263 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:03:27 #5264 [verbose] > otNet.Interactive.dll"
00:03:27 #5265 [verbose] > #r
00:03:27 #5266 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:03:27 #5267 [verbose] > otNet.Interactive.FSharp.dll"
00:03:27 #5268 [verbose] > #r
00:03:27 #5269 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:03:27 #5270 [verbose] > otNet.Interactive.Formatting.dll"
00:03:27 #5271 [verbose] > open System
00:03:27 #5272 [verbose] > open System.IO
00:03:27 #5273 [verbose] > open System.Text
00:03:27 #5274 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:03:31 #5275 [verbose] >
00:03:31 #5276 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:31 #5277 [verbose] > #r
00:03:31 #5278 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:03:31 #5279 [verbose] > otNet.Interactive.FSharp.dll"
00:03:31 #5280 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:03:31 #5281 [verbose] > #r
00:03:31 #5282 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:03:31 #5283 [verbose] > otNet.Interactive.dll"
00:03:31 #5284 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:03:31 #5285 [verbose] >
00:03:31 #5286 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:31 #5287 [verbose] > //// test
00:03:31 #5288 [verbose] >
00:03:31 #5289 [verbose] > Formatter.ListExpansionLimit <- 100
00:03:32 #5290 [verbose] >
00:03:32 #5291 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:32 #5292 [verbose] > #r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
00:03:32 #5293 [verbose] >
00:03:32 #5294 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:32 #5295 [verbose] > //// test
00:03:32 #5296 [verbose] >
00:03:32 #5297 [verbose] > type AssertExceptionFormatter (ex) =
00:03:32 #5298 [verbose] > member _.Text =
00:03:32 #5299 [verbose] > ex.ToString()
00:03:32 #5300 [verbose] > .Replace("32m", "<span style=\"color: green;\">")
00:03:32 #5301 [verbose] > .Replace("36m", "</span>")
00:03:32 #5302 [verbose] > .Replace("31m", "<span style=\"color: red;\">")
00:03:32 #5303 [verbose] > .Replace("\n", "<br/>\n")
00:03:32 #5304 [verbose] >
00:03:32 #5305 [verbose] >
00:03:32 #5306 [verbose] > Formatter.Register<AssertExceptionFormatter> ((fun (x :
00:03:32 #5307 [verbose] > AssertExceptionFormatter) -> x.Text), "text/html")
00:03:33 #5308 [verbose] >
00:03:33 #5309 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:33 #5310 [verbose] > //// test
00:03:33 #5311 [verbose] >
00:03:33 #5312 [verbose] > let inline __expect fn log expected actual =
00:03:33 #5313 [verbose] > if log then printfn $"{actual.ToDisplayString ()}"
00:03:33 #5314 [verbose] > try
00:03:33 #5315 [verbose] > "Testing.__expect" |> fn actual expected
00:03:33 #5316 [verbose] > with :? Expecto.AssertException as ex ->
00:03:33 #5317 [verbose] > AssertExceptionFormatter(ex).Display () |> ignore
00:03:33 #5318 [verbose] > failwith (ex.GetType().FullName)
00:03:33 #5319 [verbose] >
00:03:33 #5320 [verbose] > let inline __contains log expected actual = __expect Expecto.Expect.contains log
00:03:33 #5321 [verbose] > expected actual
00:03:33 #5322 [verbose] > let inline _contains expected actual = __contains true expected actual
00:03:33 #5323 [verbose] >
00:03:33 #5324 [verbose] > let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
00:03:33 #5325 [verbose] > expected actual
00:03:33 #5326 [verbose] > let inline _assertEqual expected actual = __assertEqual true expected actual
00:03:33 #5327 [verbose] >
00:03:33 #5328 [verbose] > let inline __isGreaterThan log expected actual = __expect
00:03:33 #5329 [verbose] > Expecto.Expect.isGreaterThan log ex...
00:03:34 #5330 [verbose] >
00:03:34 #5331 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:34 #5332 [verbose] > //// test
00:03:34 #5333 [verbose] >
00:03:34 #5334 [verbose] > let inline __isBetween log a b actual =
00:03:34 #5335 [verbose] > let inline isBetween actual (a, b) _ =
00:03:34 #5336 [verbose] > __isGreaterThanOrEqual log a actual
00:03:34 #5337 [verbose] > __isLessThanOrEqual log b actual
00:03:34 #5338 [verbose] > __expect isBetween log (a, b) actual
00:03:34 #5339 [verbose] > let inline _isBetween a b actual = __isBetween true a b actual
00:03:34 #5340 [verbose] >
00:03:34 #5341 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:34 #5342 [verbose] > #r
00:03:34 #5343 [verbose] > @"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan
00:03:34 #5344 [verbose] > dard2.1/FSharp.Control.AsyncSeq.dll"
00:03:34 #5345 [verbose] > #r
00:03:34 #5346 [verbose] > @"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.
00:03:34 #5347 [verbose] > 0/System.Reactive.dll"
00:03:34 #5348 [verbose] > #r
00:03:34 #5349 [verbose] > @"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib
00:03:34 #5350 [verbose] > netstandard2.0/System.Reactive.Linq.dll"
00:03:34 #5351 [verbose] > #r
00:03:34 #5352 [verbose] > @"../../../../../../../.nuget/packages/argu/6.2.2/lib/netstandard2.0/Argu.dll"
00:03:34 #5353 [verbose] > #r
00:03:34 #5354 [verbose] > @"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li
00:03:34 #5355 [verbose] > b/net6.0/System.CommandLine.dll"
00:03:35 #5356 [verbose] >
00:03:35 #5357 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:35 #5358 [verbose] > #!import ../../lib/spiral/common.fsx
00:03:35 #5359 [verbose] > #!import ../../lib/spiral/sm.fsx
00:03:35 #5360 [verbose] > #!import ../../lib/spiral/date_time.fsx
00:03:35 #5361 [verbose] > #!import ../../lib/spiral/file_system.fsx
00:03:35 #5362 [verbose] > #!import ../../lib/spiral/trace.fsx
00:03:35 #5363 [verbose] > #!import ../../lib/spiral/lib.fsx
00:03:35 #5364 [verbose] > #!import ../../lib/fsharp/Common.fs
00:03:35 #5365 [verbose] > #!import ../../lib/fsharp/CommonFSharp.fs
00:03:35 #5366 [verbose] > #!import ../../lib/fsharp/Async.fs
00:03:35 #5367 [verbose] > #!import ../../lib/fsharp/AsyncSeq.fs
00:03:35 #5368 [verbose] > #!import ../../lib/fsharp/Runtime.fs
00:03:35 #5369 [verbose] > #!import ../../lib/fsharp/FileSystem.fs
00:03:35 #5370 [verbose] >
00:03:35 #5371 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:35 #5372 [verbose] > type [[<Struct>]] US0 =
00:03:35 #5373 [verbose] > | US0_0
00:03:35 #5374 [verbose] > | US0_1
00:03:35 #5375 [verbose] > and [[<Struct>]] US1 =
00:03:35 #5376 [verbose] > | US1_0 of f0_0 : US0
00:03:35 #5377 [verbose] > | US1_1
00:03:35 #5378 [verbose] > let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
00:03:35 #5379 [verbose] > let v1 : System.IDisposable option = None
00:03:35 #5380 [verbose] > let mutable _v1 = v1
00:03:35 #5381 [verbose] > #if FABLE_COMPILER_RUST && !WASM && !CONTRACT
00:03:35 #5382 [verbose] > let v2 : System.IDisposable = null |> unbox<System.IDisposable>
00:03:35 #5383 [verbose] > v2
00:03:35 #5384 [verbose] > #endif
00:03:35 #5385 [verbose] > #if FABLE_COMPILER_RUST && WASM
00:03:35 #5386 [verbose] > let v3 : System.IDisposable = null |> unbox<System.IDisposable>
00:03:35 #5387 [verbose] > v3
00:03:35 #5388 [verbose] > #endif
00:03:35 #5389 [verbose] > #if FABLE_COMPILER_RUST && CONTRACT
00:03:35 #5390 [verbose] > let v4 : System.IDisposable = null |> unbox<System.IDisposable>
00:03:35 #5391 [verbose] > v4
00:03:35 #5392 [verbose] > #endif
00:03:35 #5393 [verbose] > #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
00:03:35 #5394 [verbose] > !WASM && !CONTRACT
00:03:35 #5395 [verbose] > let v5 : System.ID...
00:03:36 #5396 [verbose] >
00:03:36 #5397 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:36 #5398 [verbose] > type Mut0 = {mutable l0 : int32; mutable l1 : string}
00:03:36 #5399 [verbose] > and Mut1 = {mutable l0 : int32}
00:03:36 #5400 [verbose] > let rec closure1 (v0 : string) (v1 : string) : bool =
00:03:36 #5401 [verbose] > let v2 : bool = v1.Contains v0
00:03:36 #5402 [verbose] > v2
00:03:36 #5403 [verbose] > and closure0 () (v0 : string) : (string -> bool) =
00:03:36 #5404 [verbose] > closure1(v0)
00:03:36 #5405 [verbose] > and closure3 (v0 : string) (v1 : string) : bool =
00:03:36 #5406 [verbose] > let v2 : bool = v1.EndsWith v0
00:03:36 #5407 [verbose] > v2
00:03:36 #5408 [verbose] > and closure2 () (v0 : string) : (string -> bool) =
00:03:36 #5409 [verbose] > closure3(v0)
00:03:36 #5410 [verbose] > and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
00:03:36 #5411 [verbose] > let v3 : string = v2.PadLeft (v0, v1)
00:03:36 #5412 [verbose] > v3
00:03:36 #5413 [verbose] > and closure5 (v0 : int32) (v1 : char) : (string -> string) =
00:03:36 #5414 [verbose] > closure6(v0, v1)
00:03:36 #5415 [verbose] > and closure4 () (v0 : int32) : (char -> (string -> string)) =
00:03:36 #5416 [verbose] > closure5(v0)
00:03:36 #5417 [verbose] > and closure8 (v0 : int32) (v1 : string) : string =
00:03:36 #5418 [verbose] > let v2 : stri...
00:03:37 #5419 [verbose] >
00:03:37 #5420 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:37 #5421 [verbose] > let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
00:03:37 #5422 [verbose] > let v2 : (System.Guid -> string) = _.ToString()
00:03:37 #5423 [verbose] > let v3 : string = v2 v0
00:03:37 #5424 [verbose] > let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
00:03:37 #5425 [verbose] > let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
00:03:37 #5426 [verbose] > v5
00:03:37 #5427 [verbose] > and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
00:03:37 #5428 [verbose] > closure1(v0)
00:03:37 #5429 [verbose] > and closure5 (v0 : string, v1 : string) (v2 : string) : string =
00:03:37 #5430 [verbose] > let v3 : string = v2.Replace (v0, v1)
00:03:37 #5431 [verbose] > v3
00:03:37 #5432 [verbose] > and closure4 (v0 : string) (v1 : string) : (string -> string) =
00:03:37 #5433 [verbose] > closure5(v0, v1)
00:03:37 #5434 [verbose] > and closure3 () (v0 : string) : (string -> (string -> string)) =
00:03:37 #5435 [verbose] > closure4(v0)
00:03:37 #5436 [verbose] > and method0 () : (string -> (string -> (string -> string))) =
00:03:37 #5437 [verbose] > closure3()
00:03:37 #5438 [verbose] > and closure2 (...
00:03:37 #5439 [verbose] >
00:03:37 #5440 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:37 #5441 [verbose] > #if FABLE_COMPILER // file_system.types
00:03:37 #5442 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
00:03:37 #5443 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
00:03:37 #5444 [verbose] > base64_DecodeError = class end
00:03:37 #5445 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
00:03:37 #5446 [verbose] > = class end
00:03:37 #5447 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
00:03:37 #5448 [verbose] > = class end
00:03:37 #5449 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
00:03:37 #5450 [verbose] > serde_json_Error = class end
00:03:37 #5451 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
00:03:37 #5452 [verbose] > serde_json_Value = class end
00:03:37 #5453 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
00:03:37 #5454 [verbose] > serde_wasm_bindgen_Error = class end
00:03:37 #5455 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
00:03:43 #5456 [verbose] >
00:03:43 #5457 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:43 #5458 [verbose] > module State = let mutable trace_state = None
00:03:43 #5459 [verbose] > type [[<Struct>]] US0 =
00:03:43 #5460 [verbose] > | US0_0
00:03:43 #5461 [verbose] > | US0_1
00:03:43 #5462 [verbose] > | US0_2
00:03:43 #5463 [verbose] > | US0_3
00:03:43 #5464 [verbose] > | US0_4
00:03:43 #5465 [verbose] > and Mut0 = {mutable l0 : int64}
00:03:43 #5466 [verbose] > and Mut1 = {mutable l0 : bool}
00:03:43 #5467 [verbose] > and Mut2 = {mutable l0 : US0}
00:03:43 #5468 [verbose] > and [[<Struct>]] US1 =
00:03:43 #5469 [verbose] > | US1_0 of f0_0 : int64
00:03:43 #5470 [verbose] > | US1_1
00:03:43 #5471 [verbose] > and [[<Struct>]] US2 =
00:03:43 #5472 [verbose] > | US2_0 of f0_0 : int64
00:03:43 #5473 [verbose] > | US2_1
00:03:43 #5474 [verbose] > let rec method1 (v0 : int64 option) : int64 option =
00:03:43 #5475 [verbose] > v0
00:03:43 #5476 [verbose] > and method2 (v0 : int64 option) : int64 option =
00:03:43 #5477 [verbose] > v0
00:03:43 #5478 [verbose] > and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
00:03:43 #5479 [verbose] > let v0 : Mut1 = {l0 = true} : Mut1
00:03:43 #5480 [verbose] > let v1 : Mut0 = {l0 = 0L} : Mut0
00:03:43 #5481 [verbose] > let v2 : US0 = US0_0
00:03:43 #5482 [verbose] > let v3 : Mut2 = {l0 = v2} : Mut2
00:03:43 #5483 [verbose] > let v4 : Mut1 = {l0 = false} : Mut1
00:03:43 #5484 [verbose] > let v5 : int64 option option = None
00:03:43 #5485 [verbose] > ...
00:03:44 #5486 [verbose] >
00:03:44 #5487 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:44 #5488 [verbose] > module SpiralTrace =
00:03:44 #5489 [verbose] > let get_trace_state () =
00:03:44 #5490 [verbose] > #if !INTERACTIVE
00:03:44 #5491 [verbose] > Trace.get_trace_state ()
00:03:44 #5492 [verbose] > #else
00:03:44 #5493 [verbose] > get_trace_state ()
00:03:44 #5494 [verbose] > #endif
00:03:44 #5495 [verbose] > let trace x =
00:03:44 #5496 [verbose] > #if !INTERACTIVE
00:03:44 #5497 [verbose] > Trace.trace x
00:03:44 #5498 [verbose] > #else
00:03:44 #5499 [verbose] > trace x
00:03:44 #5500 [verbose] > #endif
00:03:44 #5501 [verbose] >
00:03:44 #5502 [verbose] > let US0_0 =
00:03:44 #5503 [verbose] > #if !INTERACTIVE
00:03:44 #5504 [verbose] > Trace.US0_0
00:03:44 #5505 [verbose] > #else
00:03:44 #5506 [verbose] > US0_0
00:03:44 #5507 [verbose] > #endif
00:03:44 #5508 [verbose] >
00:03:44 #5509 [verbose] > let US0_1 =
00:03:44 #5510 [verbose] > #if !INTERACTIVE
00:03:44 #5511 [verbose] > Trace.US0_1
00:03:44 #5512 [verbose] > #else
00:03:44 #5513 [verbose] > US0_1
00:03:44 #5514 [verbose] > #endif
00:03:44 #5515 [verbose] >
00:03:44 #5516 [verbose] > let US0_2 =
00:03:44 #5517 [verbose] > #if !INTERACTIVE
00:03:44 #5518 [verbose] > Trace.US0_2
00:03:44 #5519 [verbose] > #else
00:03:44 #5520 [verbose] > US0_2
00:03:44 #5521 [verbose] > #endif
00:03:44 #5522 [verbose] >
00:03:44 #5523 [verbose] > let US0_3 =
00:03:44 #5524 [verbose] > #if !INTERACTIVE
00:03:44 #5525 [verbose] > Trace.US0_3
00:03:44 #5526 [verbose] > #else
00:03:44 #5527 [verbose] > US0_3
00:03:44 #5528 [verbose] > #endif
00:03:44 #5529 [verbose] >
00:03:44 #5530 [verbose] > let US0_4 =
00:03:44 #5531 [verbose] > #if !INTERACTIVE
00:03:44 #5532 [verbose] > Trace.US0_4
00:03:44 #5533 [verbose] > #else
00:03:44 #5534 [verbose] > US0_4
00:03:44 #5535 [verbose] > #endif
00:03:44 #5536 [verbose] >
00:03:44 #5537 [verbose] >
00:03:44 #5538 [verbose] > #if !FABLE_COMPILER && !WASM && !CONTRACT
00:03:44 #5539 [verbose] > module SpiralDateTime =
00:03:44 #5540 [verbose] > let format x =
00:03:44 #5541 [verbose] > #if !INTERACTIVE
00:03:44 #5542 [verbose] > Date_ti...
00:03:44 #5543 [verbose] >
00:03:44 #5544 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:44 #5545 [verbose] > #if !INTERACTIVE
00:03:44 #5546 [verbose] > namespace Polyglot
00:03:44 #5547 [verbose] > #endif
00:03:44 #5548 [verbose] >
00:03:44 #5549 [verbose] > module Common =
00:03:44 #5550 [verbose] >
00:03:44 #5551 [verbose] > #if !INTERACTIVE
00:03:44 #5552 [verbose] > open Lib
00:03:44 #5553 [verbose] > #endif
00:03:44 #5554 [verbose] >
00:03:44 #5555 [verbose] > let nl = System.Environment.NewLine
00:03:44 #5556 [verbose] > let q = @""""
00:03:44 #5557 [verbose] >
00:03:44 #5558 [verbose] > let inline cons head tail = head :: tail
00:03:44 #5559 [verbose] >
00:03:44 #5560 [verbose] > /// ## memoize
00:03:44 #5561 [verbose] >
00:03:44 #5562 [verbose] > let inline memoize fn =
00:03:44 #5563 [verbose] > let result = lazy fn ()
00:03:44 #5564 [verbose] > fun () -> result.Value
00:03:44 #5565 [verbose] >
00:03:44 #5566 [verbose] > /// ## TraceLevel
00:03:44 #5567 [verbose] >
00:03:44 #5568 [verbose] > type TraceLevel =
00:03:44 #5569 [verbose] > | Verbose
00:03:44 #5570 [verbose] > | Debug
00:03:44 #5571 [verbose] > | Info
00:03:44 #5572 [verbose] > | Warning
00:03:44 #5573 [verbose] > | Critical
00:03:44 #5574 [verbose] >
00:03:44 #5575 [verbose] > let inline getLocals () = ""
00:03:44 #5576 [verbose] >
00:03:44 #5577 [verbose] > /// ## trace
00:03:44 #5578 [verbose] >
00:03:44 #5579 [verbose] > let to_trace_level = function
00:03:44 #5580 [verbose] > | Verbose -> SpiralTrace.US0_0
00:03:44 #5581 [verbose] > | Debug -> SpiralTrace.US0_1
00:03:44 #5582 [verbose] > | Info -> SpiralTrace.US0_2
00:03:44 #5583 [verbose] > | Warning -> SpiralTrace.US0_3
00:03:44 #5584 [verbose] > | Critical -> SpiralTrace.US0_4
00:03:44 #5585 [verbose] >
00:03:45 #5586 [verbose] > let trace level fn g...
00:03:45 #5587 [verbose] >
00:03:45 #5588 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:45 #5589 [verbose] > #if !INTERACTIVE
00:03:45 #5590 [verbose] > namespace Polyglot
00:03:45 #5591 [verbose] > #endif
00:03:45 #5592 [verbose] >
00:03:45 #5593 [verbose] > module CommonFSharp =
00:03:45 #5594 [verbose] >
00:03:45 #5595 [verbose] > open Common
00:03:45 #5596 [verbose] >
00:03:45 #5597 [verbose] > /// ## getUnionCaseName
00:03:45 #5598 [verbose] >
00:03:45 #5599 [verbose] > let inline getUnionCaseName<'T> (x: 'T) =
00:03:45 #5600 [verbose] > match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with
00:03:45 #5601 [verbose] > | case, _ -> case.Name
00:03:45 #5602 [verbose] >
00:03:45 #5603 [verbose] >
00:03:45 #5604 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:45 #5605 [verbose] > #if !INTERACTIVE
00:03:45 #5606 [verbose] > namespace Polyglot
00:03:45 #5607 [verbose] > #endif
00:03:45 #5608 [verbose] >
00:03:45 #5609 [verbose] > module Async =
00:03:45 #5610 [verbose] >
00:03:45 #5611 [verbose] > #if !INTERACTIVE
00:03:45 #5612 [verbose] > open Lib
00:03:45 #5613 [verbose] > #endif
00:03:45 #5614 [verbose] >
00:03:45 #5615 [verbose] > open Common
00:03:45 #5616 [verbose] >
00:03:45 #5617 [verbose] > /// ## choice
00:03:45 #5618 [verbose] >
00:03:45 #5619 [verbose] > let inline choice asyncs = async {
00:03:45 #5620 [verbose] > let e = Event<_> ()
00:03:45 #5621 [verbose] > use cts = new System.Threading.CancellationTokenSource ()
00:03:45 #5622 [verbose] > let fn =
00:03:45 #5623 [verbose] > asyncs
00:03:45 #5624 [verbose] > |> Seq.map (fun a -> async {
00:03:45 #5625 [verbose] > let! x = a
00:03:45 #5626 [verbose] > e.Trigger x
00:03:45 #5627 [verbose] > })
00:03:45 #5628 [verbose] > |> Async.Parallel
00:03:45 #5629 [verbose] > |> Async.Ignore
00:03:45 #5630 [verbose] > Async.Start (fn, cts.Token)
00:03:45 #5631 [verbose] > let! result = Async.AwaitEvent e.Publish
00:03:45 #5632 [verbose] > cts.Cancel ()
00:03:45 #5633 [verbose] > return result
00:03:45 #5634 [verbose] > }
00:03:45 #5635 [verbose] >
00:03:45 #5636 [verbose] > /// ## map
00:03:45 #5637 [verbose] >
00:03:45 #5638 [verbose] > let inline map fn a = async {
00:03:45 #5639 [verbose] > let! x = a
00:03:45 #5640 [verbose] > return fn x
00:03:45 #5641 [verbose] > }
00:03:45 #5642 [verbose] >
00:03:45 #5643 [verbose] > /// ## catch
00:03:45 #5644 [verbose] >
00:03:45 #5645 [verbose] > let inline catch a =
00:03:45 #5646 [verbose] > ...
00:03:48 #5647 [verbose] >
00:03:48 #5648 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:48 #5649 [verbose] > #if !INTERACTIVE
00:03:48 #5650 [verbose] > namespace Polyglot
00:03:48 #5651 [verbose] > #endif
00:03:48 #5652 [verbose] >
00:03:48 #5653 [verbose] > module AsyncSeq =
00:03:48 #5654 [verbose] >
00:03:48 #5655 [verbose] > #if !INTERACTIVE
00:03:48 #5656 [verbose] > open Lib
00:03:48 #5657 [verbose] > #endif
00:03:48 #5658 [verbose] >
00:03:48 #5659 [verbose] > open Common
00:03:48 #5660 [verbose] >
00:03:48 #5661 [verbose] > /// ## subscribeEvent
00:03:48 #5662 [verbose] >
00:03:48 #5663 [verbose] > let inline subscribeEvent (event: IEvent<'H, 'A>) map =
00:03:48 #5664 [verbose] > let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,
00:03:48 #5665 [verbose] > 'A>(event.AddHandler, event.RemoveHandler)
00:03:48 #5666 [verbose] > System.Reactive.Linq.Observable.Select (observable, fun event -> map
00:03:48 #5667 [verbose] > event.EventArgs)
00:03:48 #5668 [verbose] > |> FSharp.Control.AsyncSeq.ofObservableBuffered
00:03:48 #5669 [verbose] >
00:03:48 #5670 [verbose] > let subscribeToken (token : System.Threading.CancellationToken) =
00:03:48 #5671 [verbose] > let tcs = new System.Threading.Tasks.TaskCompletionSource ()
00:03:48 #5672 [verbose] > System.Action tcs.SetResult |> token.Register |> ignore
00:03:48 #5673 [verbose] > let start = System.DateTime.Now.Ticks
00:03:48 #5674 [verbose] > FSharp.Control.A...
00:03:48 #5675 [verbose] >
00:03:49 #5676 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:49 #5677 [verbose] > #if !INTERACTIVE
00:03:49 #5678 [verbose] > namespace Polyglot
00:03:49 #5679 [verbose] > #endif
00:03:49 #5680 [verbose] >
00:03:49 #5681 [verbose] > module Runtime =
00:03:49 #5682 [verbose] >
00:03:49 #5683 [verbose] > #if !INTERACTIVE
00:03:49 #5684 [verbose] > open Lib
00:03:49 #5685 [verbose] > #endif
00:03:49 #5686 [verbose] >
00:03:49 #5687 [verbose] > open Common
00:03:49 #5688 [verbose] >
00:03:49 #5689 [verbose] > /// ## isWindows
00:03:49 #5690 [verbose] >
00:03:49 #5691 [verbose] > let isWindows =
00:03:49 #5692 [verbose] > fun () ->
00:03:49 #5693 [verbose] > System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform
00:03:49 #5694 [verbose] > System.Runtime.InteropServices.OSPlatform.Windows
00:03:49 #5695 [verbose] > |> memoize
00:03:49 #5696 [verbose] >
00:03:49 #5697 [verbose] > /// ## getExecutableSuffix
00:03:49 #5698 [verbose] >
00:03:49 #5699 [verbose] > let inline getExecutableSuffix () =
00:03:49 #5700 [verbose] > if isWindows ()
00:03:49 #5701 [verbose] > then ".exe"
00:03:49 #5702 [verbose] > else ""
00:03:49 #5703 [verbose] >
00:03:49 #5704 [verbose] > /// ## splitCommand
00:03:49 #5705 [verbose] >
00:03:49 #5706 [verbose] > type private CommandParseStep =
00:03:49 #5707 [verbose] > | Start
00:03:49 #5708 [verbose] > | Path of quoted: bool
00:03:49 #5709 [verbose] > | Arguments
00:03:49 #5710 [verbose] >
00:03:49 #5711 [verbose] > let splitCommand (command: string) =
00:03:49 #5712 [verbose] > let rec loop (path, args) chars step =
00:03:49 #5713 [verbose] > match chars, step with
00:03:49 #5714 [verbose] > | ('"' | '\'') ...
00:03:51 #5715 [verbose] >
00:03:51 #5716 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:51 #5717 [verbose] > #if !INTERACTIVE
00:03:51 #5718 [verbose] > namespace Polyglot
00:03:51 #5719 [verbose] > #endif
00:03:51 #5720 [verbose] >
00:03:51 #5721 [verbose] > module FileSystem =
00:03:51 #5722 [verbose] >
00:03:51 #5723 [verbose] > #if !INTERACTIVE
00:03:51 #5724 [verbose] > open Lib
00:03:51 #5725 [verbose] > #endif
00:03:51 #5726 [verbose] >
00:03:51 #5727 [verbose] > open Common
00:03:51 #5728 [verbose] > open SpiralFileSystem.Operators
00:03:51 #5729 [verbose] >
00:03:51 #5730 [verbose] > /// ## watchDirectory
00:03:51 #5731 [verbose] >
00:03:51 #5732 [verbose] > [[<RequireQualifiedAccess>]]
00:03:51 #5733 [verbose] > type FileSystemChangeType =
00:03:51 #5734 [verbose] > | Failure
00:03:51 #5735 [verbose] > | Changed
00:03:51 #5736 [verbose] > | Created
00:03:51 #5737 [verbose] > | Deleted
00:03:51 #5738 [verbose] > | Renamed
00:03:51 #5739 [verbose] >
00:03:51 #5740 [verbose] > [[<RequireQualifiedAccess>]]
00:03:51 #5741 [verbose] > type FileSystemChange =
00:03:51 #5742 [verbose] > | Failure of exn: exn
00:03:51 #5743 [verbose] > | Changed of path: string * content: string option
00:03:51 #5744 [verbose] > | Created of path: string * content: string option
00:03:51 #5745 [verbose] > | Deleted of path: string
00:03:51 #5746 [verbose] > | Renamed of oldPath: string * (string * string option)
00:03:51 #5747 [verbose] >
00:03:51 #5748 [verbose] >
00:03:51 #5749 [verbose] > let inline watchDirectoryWithFilter filter shouldReadContent path =
00:03:51 #5750 [verbose] > let fullPath = path |> Sys...
00:03:52 #5751 [verbose] >
00:03:52 #5752 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:52 #5753 [verbose] > #if !INTERACTIVE
00:03:52 #5754 [verbose] > open Lib
00:03:52 #5755 [verbose] > #endif
00:03:52 #5756 [verbose] >
00:03:52 #5757 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:52 #5758 [verbose] > open Common
00:03:52 #5759 [verbose] >
00:03:52 #5760 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:52 #5761 [verbose] > //// test
00:03:52 #5762 [verbose] >
00:03:52 #5763 [verbose] > open SpiralFileSystem.Operators
00:03:52 #5764 [verbose] >
00:03:52 #5765 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:52 #5766 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:52 #5767 [verbose] > │ ## isWindows │
00:03:52 #5768 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:52 #5769 [verbose] >
00:03:52 #5770 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:52 #5771 [verbose] > let isWindows =
00:03:52 #5772 [verbose] > fun () ->
00:03:52 #5773 [verbose] > System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform
00:03:52 #5774 [verbose] > System.Runtime.InteropServices.OSPlatform.Windows
00:03:52 #5775 [verbose] > |> memoize
00:03:52 #5776 [verbose] >
00:03:52 #5777 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:52 #5778 [verbose] > //// test
00:03:52 #5779 [verbose] >
00:03:52 #5780 [verbose] > isWindows ()
00:03:53 #5781 [verbose] >
00:03:53 #5782 [verbose] > ╭─[ 250.09ms - return value ]──────────────────────────────────────────────────╮
00:03:53 #5783 [verbose] > │ <div class="dni-plaintext"><pre>True</pre></div><style> │
00:03:53 #5784 [verbose] > │ .dni-code-hint { │
00:03:53 #5785 [verbose] > │ font-style: italic; │
00:03:53 #5786 [verbose] > │ overflow: hidden; │
00:03:53 #5787 [verbose] > │ white-space: nowrap; │
00:03:53 #5788 [verbose] > │ } │
00:03:53 #5789 [verbose] > │ .dni-treeview { │
00:03:53 #5790 [verbose] > │ white-space: nowrap; │
00:03:53 #5791 [verbose] > │ } │
00:03:53 #5792 [verbose] > │ .dni-treeview td { │
00:03:53 #5793 [verbose] > │ vertical-align: top; │
00:03:53 #5794 [verbose] > │ text-align: start; │
00:03:53 #5795 [verbose] > │ } │
00:03:53 #5796 [verbose] > │ details.dni-treeview { │
00:03:53 #5797 [verbose] > │ padding-left: 1em; │
00:03:53 #5798 [verbose] > │ } │
00:03:53 #5799 [verbose] > │ table td { │
00:03:53 #5800 [verbose] > │ text-align: start; │
00:03:53 #5801 [verbose] > │ } │
00:03:53 #5802 [verbose] > │ table tr { │
00:03:53 #5803 [verbose] > │ vertical-align: top; │
00:03:53 #5804 [verbose] > │ margin: 0em 0px; │
00:03:53 #5805 [verbose] > │ } │
00:03:53 #5806 [verbose] > │ table tr td pre │
00:03:53 #5807 [verbose] > │ { │
00:03:53 #5808 [verbose] > │ vertical-align: top !important; │
00:03:53 #5809 [verbose] > │ margin: 0em 0px !important; │
00:03:53 #5810 [verbose] > │ } │
00:03:53 #5811 [verbose] > │ table th { │
00:03:53 #5812 [verbose] > │ text-align: start; │
00:03:53 #5813 [verbose] > │ } │
00:03:53 #5814 [verbose] > │ </style> │
00:03:53 #5815 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:53 #5816 [verbose] >
00:03:53 #5817 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:53 #5818 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:53 #5819 [verbose] > │ ## getExecutableSuffix │
00:03:53 #5820 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:53 #5821 [verbose] >
00:03:53 #5822 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:53 #5823 [verbose] > let inline getExecutableSuffix () =
00:03:53 #5824 [verbose] > if isWindows ()
00:03:53 #5825 [verbose] > then ".exe"
00:03:53 #5826 [verbose] > else ""
00:03:53 #5827 [verbose] >
00:03:53 #5828 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:53 #5829 [verbose] > //// test
00:03:53 #5830 [verbose] >
00:03:53 #5831 [verbose] > getExecutableSuffix ()
00:03:53 #5832 [verbose] >
00:03:53 #5833 [verbose] > ╭─[ 35.30ms - return value ]───────────────────────────────────────────────────╮
00:03:53 #5834 [verbose] > │ .exe │
00:03:53 #5835 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:53 #5836 [verbose] >
00:03:53 #5837 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:53 #5838 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:53 #5839 [verbose] > │ ## splitCommand │
00:03:53 #5840 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:53 #5841 [verbose] >
00:03:53 #5842 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:53 #5843 [verbose] > type private CommandParseStep =
00:03:53 #5844 [verbose] > | Start
00:03:53 #5845 [verbose] > | Path of quoted: bool
00:03:53 #5846 [verbose] > | Arguments
00:03:53 #5847 [verbose] >
00:03:53 #5848 [verbose] > let splitCommand (command: string) =
00:03:53 #5849 [verbose] > let rec loop (path, args) chars step =
00:03:53 #5850 [verbose] > match chars, step with
00:03:53 #5851 [verbose] > | ('"' | '\'') :: tail, _ when path = "" -> loop (path, args) tail (Path
00:03:53 #5852 [verbose] > true)
00:03:53 #5853 [verbose] > | ('"' | '\'') :: tail, Path true -> loop (path, args) tail (Path false)
00:03:53 #5854 [verbose] > | ' ' :: tail, Path true -> loop ($"{path} ", args) tail (Path true)
00:03:53 #5855 [verbose] > | ' ' :: tail, (Start | Path _) -> loop (path, args) tail Arguments
00:03:53 #5856 [verbose] > | char :: tail, Arguments -> loop (path, $"{args}{char}") tail Arguments
00:03:53 #5857 [verbose] > | char :: tail, _ -> loop ($"{path}{char}", args) tail step
00:03:53 #5858 [verbose] > | _, _ -> path |> SpiralSm.replace @"\" "/", args
00:03:53 #5859 [verbose] > loop ("", "") (command |> Seq.toList) Start
00:03:53 #5860 [verbose] >
00:03:53 #5861 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:53 #5862 [verbose] > //// test
00:03:53 #5863 [verbose] >
00:03:53 #5864 [verbose] > splitCommand ""
00:03:53 #5865 [verbose] > |> _assertEqual ("", "")
00:03:53 #5866 [verbose] >
00:03:53 #5867 [verbose] > splitCommand "/a/b/c"
00:03:53 #5868 [verbose] > |> _assertEqual ("/a/b/c", "")
00:03:53 #5869 [verbose] >
00:03:53 #5870 [verbose] > splitCommand "cat file.txt"
00:03:53 #5871 [verbose] > |> _assertEqual ("cat", "file.txt")
00:03:53 #5872 [verbose] >
00:03:53 #5873 [verbose] > splitCommand """..\..\file.exe file1.txt file2.txt"""
00:03:53 #5874 [verbose] > |> _assertEqual ("../../file.exe", "file1.txt file2.txt")
00:03:53 #5875 [verbose] >
00:03:53 #5876 [verbose] > splitCommand @"c:\dir\file.exe ""file1.txt file2.txt"""
00:03:53 #5877 [verbose] > |> _assertEqual ("c:/dir/file.exe", @"""file1.txt file2.txt""")
00:03:53 #5878 [verbose] >
00:03:53 #5879 [verbose] > splitCommand @"""..\..\dir name\file.exe"" ""file 1.txt"" file2.txt"
00:03:53 #5880 [verbose] > |> _assertEqual ("../../dir name/file.exe", @"""file 1.txt"" file2.txt")
00:03:53 #5881 [verbose] >
00:03:53 #5882 [verbose] > splitCommand @"""..\..\file 1.exe"" -c \\""echo 1\\"""
00:03:53 #5883 [verbose] > |> _assertEqual ("../../file 1.exe", @"-c \\""echo 1\\""")
00:03:53 #5884 [verbose] >
00:03:53 #5885 [verbose] > splitCommand @"..\..\file 1.exe -c \\""echo 1\\"""
00:03:53 #5886 [verbose] > |> _assertEqual ("../../file", @"1.exe -c \\""echo 1\\""")
00:03:53 #5887 [verbose] >
00:03:53 #5888 [verbose] > ╭─[ 146.63ms - stdout ]────────────────────────────────────────────────────────╮
00:03:53 #5889 [verbose] > │ ( , ) │
00:03:53 #5890 [verbose] > │ ( /a/b/c, ) │
00:03:53 #5891 [verbose] > │ ( cat, file.txt ) │
00:03:53 #5892 [verbose] > │ ( ../../file.exe, file1.txt file2.txt ) │
00:03:53 #5893 [verbose] > │ ( c:/dir/file.exe, "file1.txt file2.txt" ) │
00:03:53 #5894 [verbose] > │ ( ../../dir name/file.exe, "file 1.txt" file2.txt ) │
00:03:53 #5895 [verbose] > │ ( ../../file 1.exe, -c \\"echo 1\\" ) │
00:03:53 #5896 [verbose] > │ ( ../../file, 1.exe -c \\"echo 1\\" ) │
00:03:53 #5897 [verbose] > │ │
00:03:53 #5898 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:53 #5899 [verbose] >
00:03:53 #5900 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:53 #5901 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:53 #5902 [verbose] > │ ## executeAsync │
00:03:53 #5903 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:53 #5904 [verbose] >
00:03:53 #5905 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:53 #5906 [verbose] > type ExecutionLine =
00:03:53 #5907 [verbose] > {
00:03:53 #5908 [verbose] > ProcessId : int
00:03:53 #5909 [verbose] > Line : string
00:03:53 #5910 [verbose] > Error : bool
00:03:53 #5911 [verbose] > }
00:03:53 #5912 [verbose] >
00:03:53 #5913 [verbose] > type ExecutionOptions =
00:03:53 #5914 [verbose] > {
00:03:53 #5915 [verbose] > Command : string
00:03:53 #5916 [verbose] > WorkingDirectory : string option
00:03:53 #5917 [verbose] > CancellationToken : System.Threading.CancellationToken option
00:03:53 #5918 [verbose] > OnLine : (ExecutionLine -> Async<unit>) option
00:03:53 #5919 [verbose] > }
00:03:53 #5920 [verbose] >
00:03:53 #5921 [verbose] > let inline executeWithOptionsAsync (options : ExecutionOptions) = async {
00:03:53 #5922 [verbose] > let fileName, arguments = options.Command |> splitCommand
00:03:53 #5923 [verbose] > let workingDirectory = options.WorkingDirectory |> Option.defaultValue ""
00:03:53 #5924 [verbose] >
00:03:53 #5925 [verbose] > trace Debug (fun () -> $"executeAsync / options: {options}") getLocals
00:03:53 #5926 [verbose] >
00:03:53 #5927 [verbose] > let startInfo = System.Diagnostics.ProcessStartInfo (
00:03:53 #5928 [verbose] > Arguments = arguments,
00:03:53 #5929 [verbose] > CreateNoWindow = true,
00:03:53 #5930 [verbose] > FileName = fileName,
00:03:53 #5931 [verbose] > RedirectStandardError = true,
00:03:53 #5932 [verbose] > RedirectStandardOutput = true,
00:03:53 #5933 [verbose] > StandardOutputEncoding = System.Text.Encoding.UTF8,
00:03:53 #5934 [verbose] > UseShellExecute = false,
00:03:53 #5935 [verbose] > WorkingDirectory = workingDirectory
00:03:53 #5936 [verbose] > )
00:03:53 #5937 [verbose] >
00:03:53 #5938 [verbose] > use proc = new System.Diagnostics.Process (StartInfo = startInfo)
00:03:53 #5939 [verbose] > let output = System.Collections.Concurrent.ConcurrentStack<string> ()
00:03:53 #5940 [verbose] >
00:03:53 #5941 [verbose] > let inline event error (e: System.Diagnostics.DataReceivedEventArgs) = async
00:03:53 #5942 [verbose] > {
00:03:53 #5943 [verbose] > if e.Data <> null then
00:03:53 #5944 [verbose] > match options.OnLine with
00:03:53 #5945 [verbose] > | Some onLine ->
00:03:53 #5946 [verbose] > do!
00:03:53 #5947 [verbose] > onLine
00:03:53 #5948 [verbose] > {
00:03:53 #5949 [verbose] > ProcessId = proc.Id
00:03:53 #5950 [verbose] > Line = e.Data
00:03:53 #5951 [verbose] > Error = error
00:03:53 #5952 [verbose] > }
00:03:53 #5953 [verbose] > | None -> ()
00:03:53 #5954 [verbose] >
00:03:53 #5955 [verbose] > trace
00:03:53 #5956 [verbose] > Verbose
00:03:53 #5957 [verbose] > (fun () -> $"> {e.Data}")
00:03:53 #5958 [verbose] > Common.getLocals
00:03:53 #5959 [verbose] >
00:03:53 #5960 [verbose] > output.Push
00:03:53 #5961 [verbose] > $"{
00:03:53 #5962 [verbose] > if error then '[['.ToString() else System.String.Empty
00:03:53 #5963 [verbose] > }{
00:03:53 #5964 [verbose] > e.Data
00:03:53 #5965 [verbose] > }{
00:03:53 #5966 [verbose] > if error then ']]'.ToString() else System.String.Empty
00:03:53 #5967 [verbose] > }"
00:03:53 #5968 [verbose] > }
00:03:53 #5969 [verbose] >
00:03:53 #5970 [verbose] > proc.OutputDataReceived.Add (event false >> Async.StartImmediate)
00:03:53 #5971 [verbose] > proc.ErrorDataReceived.Add (event true >> Async.StartImmediate)
00:03:53 #5972 [verbose] >
00:03:53 #5973 [verbose] > if proc.Start () |> not
00:03:53 #5974 [verbose] > then failwith $"executeAsync / proc.Start () error"
00:03:53 #5975 [verbose] >
00:03:53 #5976 [verbose] > proc.BeginErrorReadLine ()
00:03:53 #5977 [verbose] > proc.BeginOutputReadLine ()
00:03:53 #5978 [verbose] >
00:03:53 #5979 [verbose] > let! ct =
00:03:53 #5980 [verbose] > options.CancellationToken
00:03:53 #5981 [verbose] > |> Option.defaultValue System.Threading.CancellationToken.None
00:03:53 #5982 [verbose] > |> Async.mergeCancellationTokenWithDefaultAsync
00:03:53 #5983 [verbose] >
00:03:53 #5984 [verbose] > use reg = ct.Register (fun _ ->
00:03:53 #5985 [verbose] > if not proc.HasExited then proc.Kill ()
00:03:53 #5986 [verbose] > )
00:03:53 #5987 [verbose] >
00:03:53 #5988 [verbose] > let! exitCode = async {
00:03:53 #5989 [verbose] > try
00:03:53 #5990 [verbose] > do! proc.WaitForExitAsync ct |> Async.AwaitTask
00:03:53 #5991 [verbose] > return proc.ExitCode
00:03:53 #5992 [verbose] > with :? System.Threading.Tasks.TaskCanceledException as ex ->
00:03:53 #5993 [verbose] > trace Warning (fun () -> $"executeAsync / WaitForExitAsync / ex: {ex
00:03:53 #5994 [verbose] > |> SpiralSm.format_exception}") getLocals
00:03:53 #5995 [verbose] > ex |> SpiralSm.format_exception |> output.Push
00:03:53 #5996 [verbose] > return System.Int32.MinValue
00:03:53 #5997 [verbose] > }
00:03:53 #5998 [verbose] >
00:03:53 #5999 [verbose] > let output = output |> Seq.rev |> SpiralSm.concat "\n"
00:03:53 #6000 [verbose] >
00:03:53 #6001 [verbose] > trace Debug (fun () ->
00:03:53 #6002 [verbose] > $"executeAsync / exitCode: {exitCode} / output.Length: {output.Length}"
00:03:53 #6003 [verbose] > ) getLocals
00:03:53 #6004 [verbose] >
00:03:53 #6005 [verbose] > return exitCode, output
00:03:53 #6006 [verbose] > }
00:03:53 #6007 [verbose] >
00:03:53 #6008 [verbose] > let inline executeAsync command =
00:03:53 #6009 [verbose] > executeWithOptionsAsync
00:03:53 #6010 [verbose] > {
00:03:53 #6011 [verbose] > Command = command
00:03:53 #6012 [verbose] > CancellationToken = None
00:03:53 #6013 [verbose] > OnLine = None
00:03:53 #6014 [verbose] > WorkingDirectory = None
00:03:53 #6015 [verbose] > }
00:03:54 #6016 [verbose] >
00:03:54 #6017 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:54 #6018 [verbose] > //// test
00:03:54 #6019 [verbose] >
00:03:54 #6020 [verbose] > let struct (tempFolder, disposable) = SpiralFileSystem.create_temp_directory ()
00:03:54 #6021 [verbose] > let fileName = "test.txt"
00:03:54 #6022 [verbose] > let path = tempFolder </> fileName
00:03:54 #6023 [verbose] >
00:03:54 #6024 [verbose] > async {
00:03:54 #6025 [verbose] > let! exitCode, result = executeAsync @$"pwsh -c ""Get-Content {path}"""
00:03:54 #6026 [verbose] > exitCode |> _assertEqual 1
00:03:54 #6027 [verbose] > result |> _stringContains "not exist"
00:03:54 #6028 [verbose] >
00:03:54 #6029 [verbose] > do! "0" |> SpiralFileSystem.write_all_text_async path
00:03:54 #6030 [verbose] >
00:03:54 #6031 [verbose] > return!
00:03:54 #6032 [verbose] > executeWithOptionsAsync
00:03:54 #6033 [verbose] > {
00:03:54 #6034 [verbose] > Command = @$"pwsh -c ""Get-Content {fileName}"""
00:03:54 #6035 [verbose] > CancellationToken = None
00:03:54 #6036 [verbose] > OnLine = None
00:03:54 #6037 [verbose] > WorkingDirectory = Some tempFolder
00:03:54 #6038 [verbose] > }
00:03:54 #6039 [verbose] >
00:03:54 #6040 [verbose] > }
00:03:54 #6041 [verbose] > |> Async.runWithTimeout 10000
00:03:54 #6042 [verbose] > |> function
00:03:54 #6043 [verbose] > | Some (exitCode, output) ->
00:03:54 #6044 [verbose] > exitCode |> _assertEqual 0
00:03:54 #6045 [verbose] > output |> _assertEqual "0"
00:03:54 #6046 [verbose] > true
00:03:54 #6047 [verbose] > | _ -> false
00:03:54 #6048 [verbose] > |> _assertEqual true
00:03:54 #6049 [verbose] >
00:03:54 #6050 [verbose] > disposable.Dispose ()
00:03:59 #6051 [verbose] >
00:03:59 #6052 [verbose] > ╭─[ 5.29s - stdout ]───────────────────────────────────────────────────────────╮
00:03:59 #6053 [verbose] > │ 00:00:00 #1 [debug] executeAsync / options: { Command = │
00:03:59 #6054 [verbose] > │ "pwsh -c "Get-Content │
00:03:59 #6055 [verbose] > │ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20240410-1902-3889-8995-82128 │
00:03:59 #6056 [verbose] > │ 6fd9f58\test.txt"" │
00:03:59 #6057 [verbose] > │ WorkingDirectory = None │
00:03:59 #6058 [verbose] > │ CancellationToken = None │
00:03:59 #6059 [verbose] > │ OnLine = None } │
00:03:59 #6060 [verbose] > │ 00:00:01 #2 [verbose] > Get-Content: Cannot find path │
00:03:59 #6061 [verbose] > │ 'C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20240410-1902-3889-8995-8212 │
00:03:59 #6062 [verbose] > │ 86fd9f58\test.txt' because it does not exist. │
00:03:59 #6063 [verbose] > │ 00:00:02 #3 [debug] executeAsync / exitCode: 1 / output.Length: 171 │
00:03:59 #6064 [verbose] > │ 1 │
00:03:59 #6065 [verbose] > │ [Get-Content: Cannot find path │
00:03:59 #6066 [verbose] > │ 'C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20240410-1902-3889-8995-8212 │
00:03:59 #6067 [verbose] > │ 86fd9f58\test.txt' because it does not exist.] │
00:03:59 #6068 [verbose] > │ 00:00:02 #4 [debug] executeAsync / options: { Command = "pwsh -c │
00:03:59 #6069 [verbose] > │ "Get-Content test.txt"" │
00:03:59 #6070 [verbose] > │ WorkingDirectory = │
00:03:59 #6071 [verbose] > │ Some │
00:03:59 #6072 [verbose] > │ │
00:03:59 #6073 [verbose] > │ "C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20240410-1902-3889-8995-8212 │
00:03:59 #6074 [verbose] > │ 86fd9f58" │
00:03:59 #6075 [verbose] > │ CancellationToken = None │
00:03:59 #6076 [verbose] > │ OnLine = None } │
00:03:59 #6077 [verbose] > │ 00:00:03 #5 [verbose] > 0 │
00:03:59 #6078 [verbose] > │ 00:00:03 #6 [debug] executeAsync / exitCode: 0 / output.Length: 1 │
00:03:59 #6079 [verbose] > │ 0 │
00:03:59 #6080 [verbose] > │ 0 │
00:03:59 #6081 [verbose] > │ True │
00:03:59 #6082 [verbose] > │ │
00:03:59 #6083 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:59 #6084 [verbose] >
00:03:59 #6085 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:59 #6086 [verbose] > //// test
00:03:59 #6087 [verbose] >
00:03:59 #6088 [verbose] > let struct (tempFolder, disposable) = SpiralFileSystem.create_temp_directory ()
00:03:59 #6089 [verbose] > let path = tempFolder </> "test.txt"
00:03:59 #6090 [verbose] >
00:03:59 #6091 [verbose] > let command = @$"pwsh -c ""Get-Content {path}"""
00:03:59 #6092 [verbose] >
00:03:59 #6093 [verbose] > async {
00:03:59 #6094 [verbose] > do! "0" |> SpiralFileSystem.write_all_text_async path
00:03:59 #6095 [verbose] > let cts = new System.Threading.CancellationTokenSource ()
00:03:59 #6096 [verbose] > trace Debug (fun () -> "1") getLocals
00:03:59 #6097 [verbose] > let! result =
00:03:59 #6098 [verbose] > executeWithOptionsAsync
00:03:59 #6099 [verbose] > {
00:03:59 #6100 [verbose] > Command = command
00:03:59 #6101 [verbose] > CancellationToken = Some cts.Token
00:03:59 #6102 [verbose] > OnLine = None
00:03:59 #6103 [verbose] > WorkingDirectory = None
00:03:59 #6104 [verbose] > }
00:03:59 #6105 [verbose] > |> Async.StartChild
00:03:59 #6106 [verbose] > trace Debug (fun () -> "2") getLocals
00:03:59 #6107 [verbose] > do! Async.Sleep 100
00:03:59 #6108 [verbose] > trace Debug (fun () -> "3") getLocals
00:03:59 #6109 [verbose] > cts.Cancel ()
00:03:59 #6110 [verbose] > trace Debug (fun () -> "4") getLocals
00:03:59 #6111 [verbose] > let! exitCode, output = result
00:03:59 #6112 [verbose] > trace Debug (fun () -> "5") getLocals
00:03:59 #6113 [verbose] > return exitCode, output
00:03:59 #6114 [verbose] > }
00:03:59 #6115 [verbose] > |> Async.runWithTimeout 10000
00:03:59 #6116 [verbose] > |> function
00:03:59 #6117 [verbose] > | Some (exitCode, output) ->
00:03:59 #6118 [verbose] > exitCode |> _assertEqual -2147483648
00:03:59 #6119 [verbose] > output |> _assertEqual "System.Threading.Tasks.TaskCanceledException: A
00:03:59 #6120 [verbose] > task was canceled."
00:03:59 #6121 [verbose] >
00:03:59 #6122 [verbose] > true
00:03:59 #6123 [verbose] > | _ -> false
00:03:59 #6124 [verbose] > |> _assertEqual true
00:03:59 #6125 [verbose] >
00:03:59 #6126 [verbose] > disposable.Dispose ()
00:04:01 #6127 [verbose] >
00:04:01 #6128 [verbose] > ╭─[ 1.81s - stdout ]───────────────────────────────────────────────────────────╮
00:04:01 #6129 [verbose] > │ 00:00:05 #7 [debug] 1 │
00:04:01 #6130 [verbose] > │ 00:00:05 #9 [debug] 2 │
00:04:01 #6131 [verbose] > │ 00:00:05 #8 [debug] executeAsync / options: { Command = │
00:04:01 #6132 [verbose] > │ "pwsh -c "Get-Content │
00:04:01 #6133 [verbose] > │ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20240410-1902-4437-3793-336ad │
00:04:01 #6134 [verbose] > │ d85591d\test.txt"" │
00:04:01 #6135 [verbose] > │ WorkingDirectory = None │
00:04:01 #6136 [verbose] > │ CancellationToken = Some System.Threading.CancellationToken │
00:04:01 #6137 [verbose] > │ OnLine = None } │
00:04:01 #6138 [verbose] > │ 00:00:05 #10 [debug] 3 │
00:04:01 #6139 [verbose] > │ 00:00:05 #11 [debug] 4 │
00:04:01 #6140 [verbose] > │ 00:00:05 #12 [warning] executeAsync / WaitForExitAsync / ex: │
00:04:01 #6141 [verbose] > │ System.Threading.Tasks.TaskCanceledException: A task was canceled. │
00:04:01 #6142 [verbose] > │ 00:00:05 #13 [debug] executeAsync / exitCode: -2147483648 / output.Length: │
00:04:01 #6143 [verbose] > │ 66 │
00:04:01 #6144 [verbose] > │ 00:00:05 #14 [debug] 5 │
00:04:01 #6145 [verbose] > │ -2147483648 │
00:04:01 #6146 [verbose] > │ System.Threading.Tasks.TaskCanceledException: A task was canceled. │
00:04:01 #6147 [verbose] > │ True │
00:04:01 #6148 [verbose] > │ │
00:04:01 #6149 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:01 #6150 [verbose] >
00:04:01 #6151 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:01 #6152 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:01 #6153 [verbose] > │ ## splitArgs │
00:04:01 #6154 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:01 #6155 [verbose] >
00:04:01 #6156 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:01 #6157 [verbose] > let inline splitArgs commandLine =
00:04:01 #6158 [verbose] > commandLine
00:04:01 #6159 [verbose] > |> System.CommandLine.Parsing.CommandLineStringSplitter.Instance.Split
00:04:01 #6160 [verbose] >
00:04:01 #6161 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:01 #6162 [verbose] > //// test
00:04:01 #6163 [verbose] >
00:04:01 #6164 [verbose] > """a b "c d" e"""
00:04:01 #6165 [verbose] > |> splitArgs
00:04:01 #6166 [verbose] > |> Seq.toArray
00:04:01 #6167 [verbose] > |> _assertEqual [[| "a"; "b"; "c d"; "e" |]]
00:04:01 #6168 [verbose] >
00:04:01 #6169 [verbose] > ╭─[ 46.36ms - stdout ]─────────────────────────────────────────────────────────╮
00:04:01 #6170 [verbose] > │ [ a, b, c d, e ] │
00:04:01 #6171 [verbose] > │ │
00:04:01 #6172 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:01 #6173 [verbose] >
00:04:01 #6174 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:01 #6175 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:01 #6176 [verbose] > │ ## parseArgs │
00:04:01 #6177 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:01 #6178 [verbose] >
00:04:01 #6179 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:01 #6180 [verbose] > let inline parseArgs<'T when 'T :> Argu.IArgParserTemplate> args =
00:04:01 #6181 [verbose] > let assemblyName =
00:04:01 #6182 [verbose] > System.Reflection.Assembly.GetEntryAssembly().GetName().Name
00:04:01 #6183 [verbose] > let errorHandler : Argu.IExiter =
00:04:01 #6184 [verbose] > if [[ "Microsoft.DotNet.Interactive.App"; "dotnet-repl" ]] |>
00:04:01 #6185 [verbose] > List.contains assemblyName
00:04:01 #6186 [verbose] > then Argu.ExceptionExiter ()
00:04:01 #6187 [verbose] > else Argu.ProcessExiter (function Argu.ErrorCode.HelpText -> None | _ ->
00:04:01 #6188 [verbose] > Some System.ConsoleColor.Red)
00:04:01 #6189 [verbose] >
00:04:01 #6190 [verbose] > let parser =
00:04:01 #6191 [verbose] > Argu.ArgumentParser.Create<'T> (
00:04:01 #6192 [verbose] > programName = $"{assemblyName}{getExecutableSuffix ()}",
00:04:01 #6193 [verbose] > errorHandler = errorHandler
00:04:01 #6194 [verbose] > )
00:04:01 #6195 [verbose] >
00:04:01 #6196 [verbose] > parser.ParseCommandLine args
00:04:01 #6197 [verbose] >
00:04:01 #6198 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:01 #6199 [verbose] > //// test
00:04:01 #6200 [verbose] >
00:04:01 #6201 [verbose] > [[<RequireQualifiedAccess>]]
00:04:01 #6202 [verbose] > type Arguments =
00:04:01 #6203 [verbose] > | [[<Argu.ArguAttributes.MainCommand; Argu.ArguAttributes.ExactlyOnce;
00:04:01 #6204 [verbose] > Argu.ArguAttributes.Last>]]
00:04:01 #6205 [verbose] > Paths of paths : string list
00:04:01 #6206 [verbose] >
00:04:01 #6207 [verbose] > interface Argu.IArgParserTemplate with
00:04:01 #6208 [verbose] > member s.Usage =
00:04:01 #6209 [verbose] > match s with
00:04:01 #6210 [verbose] > | Paths _ -> nameof Paths
00:04:01 #6211 [verbose] >
00:04:01 #6212 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:01 #6213 [verbose] > //// test
00:04:01 #6214 [verbose] >
00:04:01 #6215 [verbose] > Argu.ArgumentParser.Create<Arguments>().PrintUsage ()
00:04:02 #6216 [verbose] >
00:04:02 #6217 [verbose] > ╭─[ 145.44ms - return value ]──────────────────────────────────────────────────╮
00:04:02 #6218 [verbose] > │ USAGE: dotnet-repl [--help] <paths>... │
00:04:02 #6219 [verbose] > │ │
00:04:02 #6220 [verbose] > │ PATHS: │
00:04:02 #6221 [verbose] > │ │
00:04:02 #6222 [verbose] > │ <paths>... Paths │
00:04:02 #6223 [verbose] > │ │
00:04:02 #6224 [verbose] > │ OPTIONS: │
00:04:02 #6225 [verbose] > │ │
00:04:02 #6226 [verbose] > │ --help display this list of options. │
00:04:02 #6227 [verbose] > │ │
00:04:02 #6228 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:02 #6229 [verbose] >
00:04:02 #6230 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:02 #6231 [verbose] > //// test
00:04:02 #6232 [verbose] >
00:04:02 #6233 [verbose] > fun () -> parseArgs<Arguments> [[||]] |> ignore
00:04:02 #6234 [verbose] > |> _throwsC (fun ex _ ->
00:04:02 #6235 [verbose] > SpiralSm.format_exception ex
00:04:02 #6236 [verbose] > |> _stringContains "Argu.ArguParseException: ERROR: missing parameter
00:04:02 #6237 [verbose] > '<paths>...'."
00:04:02 #6238 [verbose] > )
00:04:02 #6239 [verbose] >
00:04:02 #6240 [verbose] > ╭─[ 124.19ms - stdout ]────────────────────────────────────────────────────────╮
00:04:02 #6241 [verbose] > │ FSI_0036+it@3-1 │
00:04:02 #6242 [verbose] > │ Argu.ArguParseException: ERROR: missing parameter '<paths>...'. │
00:04:02 #6243 [verbose] > │ USAGE: dotnet-repl.exe [--help] <paths>... │
00:04:02 #6244 [verbose] > │ │
00:04:02 #6245 [verbose] > │ PATHS: │
00:04:02 #6246 [verbose] > │ │
00:04:02 #6247 [verbose] > │ <paths>... Paths │
00:04:02 #6248 [verbose] > │ │
00:04:02 #6249 [verbose] > │ OPTIONS: │
00:04:02 #6250 [verbose] > │ │
00:04:02 #6251 [verbose] > │ --help display this list of options. │
00:04:02 #6252 [verbose] > │ │
00:04:02 #6253 [verbose] > │ │
00:04:02 #6254 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:02 #6255 [verbose] >
00:04:02 #6256 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:02 #6257 [verbose] > let inline parseAllArgs<'T when 'T :> Argu.IArgParserTemplate> args =
00:04:02 #6258 [verbose] > args
00:04:02 #6259 [verbose] > |> parseArgs<'T>
00:04:02 #6260 [verbose] > |> fun results -> results.GetAllResults ()
00:04:02 #6261 [verbose] >
00:04:02 #6262 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:02 #6263 [verbose] > //// test
00:04:02 #6264 [verbose] >
00:04:02 #6265 [verbose] > [[<RequireQualifiedAccess>]]
00:04:02 #6266 [verbose] > type Arguments =
00:04:02 #6267 [verbose] > | [[<Argu.ArguAttributes.MainCommand; Argu.ArguAttributes.ExactlyOnce;
00:04:02 #6268 [verbose] > Argu.ArguAttributes.Last>]]
00:04:02 #6269 [verbose] > Paths of paths : string list
00:04:02 #6270 [verbose] >
00:04:02 #6271 [verbose] > interface Argu.IArgParserTemplate with
00:04:02 #6272 [verbose] > member s.Usage =
00:04:02 #6273 [verbose] > match s with
00:04:02 #6274 [verbose] > | Paths _ -> nameof Paths
00:04:02 #6275 [verbose] >
00:04:02 #6276 [verbose] > parseAllArgs<Arguments> [[| "a b"; "c" |]]
00:04:02 #6277 [verbose] > |> _assertEqual [[ Arguments.Paths [[ "a b"; "c" ]] ]]
00:04:02 #6278 [verbose] >
00:04:02 #6279 [verbose] > ╭─[ 154.25ms - stdout ]────────────────────────────────────────────────────────╮
00:04:02 #6280 [verbose] > │ FSharpList<Arguments> │
00:04:02 #6281 [verbose] > │ - paths: [ a b, c ] │
00:04:02 #6282 [verbose] > │ │
00:04:02 #6283 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:02 #6284 [verbose] >
00:04:02 #6285 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:02 #6286 [verbose] > let inline parseArgsMap<'T when 'T :> Argu.IArgParserTemplate> args =
00:04:02 #6287 [verbose] > args
00:04:02 #6288 [verbose] > |> parseAllArgs<'T>
00:04:02 #6289 [verbose] > |> List.groupBy CommonFSharp.getUnionCaseName<'T>
00:04:02 #6290 [verbose] > |> Map.ofList
00:04:02 #6291 [verbose] >
00:04:02 #6292 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:02 #6293 [verbose] > //// test
00:04:02 #6294 [verbose] >
00:04:02 #6295 [verbose] > parseArgsMap<Arguments> [[| "a b"; "c" |]]
00:04:02 #6296 [verbose] > |> _assertEqual (
00:04:02 #6297 [verbose] > [[ nameof Arguments.Paths, [[ Arguments.Paths [[ "a b"; "c" ]] ]] ]]
00:04:02 #6298 [verbose] > |> Map.ofList
00:04:02 #6299 [verbose] > )
00:04:02 #6300 [verbose] >
00:04:02 #6301 [verbose] > ╭─[ 104.03ms - stdout ]────────────────────────────────────────────────────────╮
00:04:02 #6302 [verbose] > │ FSharpMap<String,FSharpList<Arguments>> │
00:04:02 #6303 [verbose] > │ - Key: Paths │
00:04:02 #6304 [verbose] > │ Value: FSharpList<Arguments> │
00:04:02 #6305 [verbose] > │ - paths: [ a b, c ] │
00:04:02 #6306 [verbose] > │ │
00:04:02 #6307 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:06 #6308 [verbose] > [NbConvertApp] Converting notebook Runtime.dib.ipynb to html
00:04:06 #6309 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:04:06 #6310 [verbose] > validate(nb)
00:04:07 #6311 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:04:07 #6312 [verbose] > return _pygments_highlight(
00:04:08 #6313 [verbose] > [NbConvertApp] Writing 341630 bytes to Runtime.dib.html
00:04:10 #6314 [debug] executeAsync / exitCode: 0 / output.Length: 40302
00:04:10 #6315 [debug] main / executeCommand / exitCode: 0
00:04:10 #6316 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 Toml.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:04:15 #6317 [verbose] >
00:04:15 #6318 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:15 #6319 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:15 #6320 [verbose] > │ # Toml (Polyglot) │
00:04:15 #6321 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:16 #6322 [verbose] >
00:04:16 #6323 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:16 #6324 [verbose] > #!import ../../lib/fsharp/Notebooks.dib
00:04:16 #6325 [verbose] > #!import ../../lib/fsharp/Testing.dib
00:04:16 #6326 [verbose] >
00:04:16 #6327 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:16 #6328 [verbose] > #r
00:04:16 #6329 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:04:16 #6330 [verbose] > spNetCore.Html.Abstractions.dll"
00:04:16 #6331 [verbose] > #r
00:04:16 #6332 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:04:16 #6333 [verbose] > otNet.Interactive.dll"
00:04:16 #6334 [verbose] > #r
00:04:16 #6335 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:04:16 #6336 [verbose] > otNet.Interactive.FSharp.dll"
00:04:16 #6337 [verbose] > #r
00:04:16 #6338 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:04:16 #6339 [verbose] > otNet.Interactive.Formatting.dll"
00:04:16 #6340 [verbose] > open System
00:04:16 #6341 [verbose] > open System.IO
00:04:16 #6342 [verbose] > open System.Text
00:04:16 #6343 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:04:22 #6344 [verbose] >
00:04:22 #6345 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:22 #6346 [verbose] > #r
00:04:22 #6347 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:04:22 #6348 [verbose] > otNet.Interactive.FSharp.dll"
00:04:22 #6349 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:04:22 #6350 [verbose] > #r
00:04:22 #6351 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:04:22 #6352 [verbose] > otNet.Interactive.dll"
00:04:22 #6353 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:04:22 #6354 [verbose] >
00:04:22 #6355 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:22 #6356 [verbose] > //// test
00:04:22 #6357 [verbose] >
00:04:22 #6358 [verbose] > Formatter.ListExpansionLimit <- 100
00:04:23 #6359 [verbose] >
00:04:23 #6360 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:23 #6361 [verbose] > #r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
00:04:23 #6362 [verbose] >
00:04:23 #6363 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:23 #6364 [verbose] > //// test
00:04:23 #6365 [verbose] >
00:04:23 #6366 [verbose] > type AssertExceptionFormatter (ex) =
00:04:23 #6367 [verbose] > member _.Text =
00:04:23 #6368 [verbose] > ex.ToString()
00:04:23 #6369 [verbose] > .Replace("32m", "<span style=\"color: green;\">")
00:04:23 #6370 [verbose] > .Replace("36m", "</span>")
00:04:23 #6371 [verbose] > .Replace("31m", "<span style=\"color: red;\">")
00:04:23 #6372 [verbose] > .Replace("\n", "<br/>\n")
00:04:23 #6373 [verbose] >
00:04:23 #6374 [verbose] >
00:04:23 #6375 [verbose] > Formatter.Register<AssertExceptionFormatter> ((fun (x :
00:04:23 #6376 [verbose] > AssertExceptionFormatter) -> x.Text), "text/html")
00:04:24 #6377 [verbose] >
00:04:24 #6378 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:24 #6379 [verbose] > //// test
00:04:24 #6380 [verbose] >
00:04:24 #6381 [verbose] > let inline __expect fn log expected actual =
00:04:24 #6382 [verbose] > if log then printfn $"{actual.ToDisplayString ()}"
00:04:24 #6383 [verbose] > try
00:04:24 #6384 [verbose] > "Testing.__expect" |> fn actual expected
00:04:24 #6385 [verbose] > with :? Expecto.AssertException as ex ->
00:04:24 #6386 [verbose] > AssertExceptionFormatter(ex).Display () |> ignore
00:04:24 #6387 [verbose] > failwith (ex.GetType().FullName)
00:04:24 #6388 [verbose] >
00:04:24 #6389 [verbose] > let inline __contains log expected actual = __expect Expecto.Expect.contains log
00:04:24 #6390 [verbose] > expected actual
00:04:24 #6391 [verbose] > let inline _contains expected actual = __contains true expected actual
00:04:24 #6392 [verbose] >
00:04:24 #6393 [verbose] > let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
00:04:24 #6394 [verbose] > expected actual
00:04:24 #6395 [verbose] > let inline _assertEqual expected actual = __assertEqual true expected actual
00:04:24 #6396 [verbose] >
00:04:24 #6397 [verbose] > let inline __isGreaterThan log expected actual = __expect
00:04:24 #6398 [verbose] > Expecto.Expect.isGreaterThan log ex...
00:04:24 #6399 [verbose] >
00:04:24 #6400 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:24 #6401 [verbose] > //// test
00:04:24 #6402 [verbose] >
00:04:24 #6403 [verbose] > let inline __isBetween log a b actual =
00:04:24 #6404 [verbose] > let inline isBetween actual (a, b) _ =
00:04:24 #6405 [verbose] > __isGreaterThanOrEqual log a actual
00:04:24 #6406 [verbose] > __isLessThanOrEqual log b actual
00:04:24 #6407 [verbose] > __expect isBetween log (a, b) actual
00:04:24 #6408 [verbose] > let inline _isBetween a b actual = __isBetween true a b actual
00:04:25 #6409 [verbose] >
00:04:25 #6410 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:25 #6411 [verbose] > #r @"../../../../../../../.nuget/packages/tomlyn/0.17.0/lib/net7.0/Tomlyn.dll"
00:04:25 #6412 [verbose] >
00:04:25 #6413 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:25 #6414 [verbose] > #!import ../../lib/spiral/common.fsx
00:04:25 #6415 [verbose] > #!import ../../lib/spiral/sm.fsx
00:04:25 #6416 [verbose] > #!import ../../lib/spiral/date_time.fsx
00:04:25 #6417 [verbose] > #!import ../../lib/spiral/file_system.fsx
00:04:25 #6418 [verbose] > #!import ../../lib/spiral/trace.fsx
00:04:25 #6419 [verbose] > #!import ../../lib/spiral/lib.fsx
00:04:25 #6420 [verbose] > #!import ../../lib/fsharp/Common.fs
00:04:25 #6421 [verbose] >
00:04:25 #6422 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:25 #6423 [verbose] > type [[<Struct>]] US0 =
00:04:25 #6424 [verbose] > | US0_0
00:04:25 #6425 [verbose] > | US0_1
00:04:25 #6426 [verbose] > and [[<Struct>]] US1 =
00:04:25 #6427 [verbose] > | US1_0 of f0_0 : US0
00:04:25 #6428 [verbose] > | US1_1
00:04:25 #6429 [verbose] > let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
00:04:25 #6430 [verbose] > let v1 : System.IDisposable option = None
00:04:25 #6431 [verbose] > let mutable _v1 = v1
00:04:25 #6432 [verbose] > #if FABLE_COMPILER_RUST && !WASM && !CONTRACT
00:04:25 #6433 [verbose] > let v2 : System.IDisposable = null |> unbox<System.IDisposable>
00:04:25 #6434 [verbose] > v2
00:04:25 #6435 [verbose] > #endif
00:04:25 #6436 [verbose] > #if FABLE_COMPILER_RUST && WASM
00:04:25 #6437 [verbose] > let v3 : System.IDisposable = null |> unbox<System.IDisposable>
00:04:25 #6438 [verbose] > v3
00:04:25 #6439 [verbose] > #endif
00:04:25 #6440 [verbose] > #if FABLE_COMPILER_RUST && CONTRACT
00:04:25 #6441 [verbose] > let v4 : System.IDisposable = null |> unbox<System.IDisposable>
00:04:25 #6442 [verbose] > v4
00:04:25 #6443 [verbose] > #endif
00:04:25 #6444 [verbose] > #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
00:04:25 #6445 [verbose] > !WASM && !CONTRACT
00:04:25 #6446 [verbose] > let v5 : System.ID...
00:04:26 #6447 [verbose] >
00:04:26 #6448 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:26 #6449 [verbose] > type Mut0 = {mutable l0 : int32; mutable l1 : string}
00:04:26 #6450 [verbose] > and Mut1 = {mutable l0 : int32}
00:04:26 #6451 [verbose] > let rec closure1 (v0 : string) (v1 : string) : bool =
00:04:26 #6452 [verbose] > let v2 : bool = v1.Contains v0
00:04:26 #6453 [verbose] > v2
00:04:26 #6454 [verbose] > and closure0 () (v0 : string) : (string -> bool) =
00:04:26 #6455 [verbose] > closure1(v0)
00:04:26 #6456 [verbose] > and closure3 (v0 : string) (v1 : string) : bool =
00:04:26 #6457 [verbose] > let v2 : bool = v1.EndsWith v0
00:04:26 #6458 [verbose] > v2
00:04:26 #6459 [verbose] > and closure2 () (v0 : string) : (string -> bool) =
00:04:26 #6460 [verbose] > closure3(v0)
00:04:26 #6461 [verbose] > and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
00:04:26 #6462 [verbose] > let v3 : string = v2.PadLeft (v0, v1)
00:04:26 #6463 [verbose] > v3
00:04:26 #6464 [verbose] > and closure5 (v0 : int32) (v1 : char) : (string -> string) =
00:04:26 #6465 [verbose] > closure6(v0, v1)
00:04:26 #6466 [verbose] > and closure4 () (v0 : int32) : (char -> (string -> string)) =
00:04:26 #6467 [verbose] > closure5(v0)
00:04:26 #6468 [verbose] > and closure8 (v0 : int32) (v1 : string) : string =
00:04:26 #6469 [verbose] > let v2 : stri...
00:04:27 #6470 [verbose] >
00:04:27 #6471 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:27 #6472 [verbose] > let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
00:04:27 #6473 [verbose] > let v2 : (System.Guid -> string) = _.ToString()
00:04:27 #6474 [verbose] > let v3 : string = v2 v0
00:04:27 #6475 [verbose] > let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
00:04:27 #6476 [verbose] > let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
00:04:27 #6477 [verbose] > v5
00:04:27 #6478 [verbose] > and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
00:04:27 #6479 [verbose] > closure1(v0)
00:04:27 #6480 [verbose] > and closure5 (v0 : string, v1 : string) (v2 : string) : string =
00:04:27 #6481 [verbose] > let v3 : string = v2.Replace (v0, v1)
00:04:27 #6482 [verbose] > v3
00:04:27 #6483 [verbose] > and closure4 (v0 : string) (v1 : string) : (string -> string) =
00:04:27 #6484 [verbose] > closure5(v0, v1)
00:04:27 #6485 [verbose] > and closure3 () (v0 : string) : (string -> (string -> string)) =
00:04:27 #6486 [verbose] > closure4(v0)
00:04:27 #6487 [verbose] > and method0 () : (string -> (string -> (string -> string))) =
00:04:27 #6488 [verbose] > closure3()
00:04:27 #6489 [verbose] > and closure2 (...
00:04:27 #6490 [verbose] >
00:04:27 #6491 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:27 #6492 [verbose] > #if FABLE_COMPILER // file_system.types
00:04:27 #6493 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
00:04:27 #6494 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
00:04:27 #6495 [verbose] > base64_DecodeError = class end
00:04:27 #6496 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
00:04:27 #6497 [verbose] > = class end
00:04:27 #6498 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
00:04:27 #6499 [verbose] > = class end
00:04:27 #6500 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
00:04:27 #6501 [verbose] > serde_json_Error = class end
00:04:27 #6502 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
00:04:27 #6503 [verbose] > serde_json_Value = class end
00:04:27 #6504 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
00:04:27 #6505 [verbose] > serde_wasm_bindgen_Error = class end
00:04:27 #6506 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
00:04:31 #6507 [verbose] >
00:04:31 #6508 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:31 #6509 [verbose] > module State = let mutable trace_state = None
00:04:31 #6510 [verbose] > type [[<Struct>]] US0 =
00:04:31 #6511 [verbose] > | US0_0
00:04:31 #6512 [verbose] > | US0_1
00:04:31 #6513 [verbose] > | US0_2
00:04:31 #6514 [verbose] > | US0_3
00:04:31 #6515 [verbose] > | US0_4
00:04:31 #6516 [verbose] > and Mut0 = {mutable l0 : int64}
00:04:31 #6517 [verbose] > and Mut1 = {mutable l0 : bool}
00:04:31 #6518 [verbose] > and Mut2 = {mutable l0 : US0}
00:04:31 #6519 [verbose] > and [[<Struct>]] US1 =
00:04:31 #6520 [verbose] > | US1_0 of f0_0 : int64
00:04:31 #6521 [verbose] > | US1_1
00:04:31 #6522 [verbose] > and [[<Struct>]] US2 =
00:04:31 #6523 [verbose] > | US2_0 of f0_0 : int64
00:04:31 #6524 [verbose] > | US2_1
00:04:31 #6525 [verbose] > let rec method1 (v0 : int64 option) : int64 option =
00:04:31 #6526 [verbose] > v0
00:04:31 #6527 [verbose] > and method2 (v0 : int64 option) : int64 option =
00:04:31 #6528 [verbose] > v0
00:04:31 #6529 [verbose] > and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
00:04:31 #6530 [verbose] > let v0 : Mut1 = {l0 = true} : Mut1
00:04:31 #6531 [verbose] > let v1 : Mut0 = {l0 = 0L} : Mut0
00:04:31 #6532 [verbose] > let v2 : US0 = US0_0
00:04:31 #6533 [verbose] > let v3 : Mut2 = {l0 = v2} : Mut2
00:04:31 #6534 [verbose] > let v4 : Mut1 = {l0 = false} : Mut1
00:04:31 #6535 [verbose] > let v5 : int64 option option = None
00:04:31 #6536 [verbose] > ...
00:04:32 #6537 [verbose] >
00:04:32 #6538 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:32 #6539 [verbose] > module SpiralTrace =
00:04:32 #6540 [verbose] > let get_trace_state () =
00:04:32 #6541 [verbose] > #if !INTERACTIVE
00:04:32 #6542 [verbose] > Trace.get_trace_state ()
00:04:32 #6543 [verbose] > #else
00:04:32 #6544 [verbose] > get_trace_state ()
00:04:32 #6545 [verbose] > #endif
00:04:32 #6546 [verbose] > let trace x =
00:04:32 #6547 [verbose] > #if !INTERACTIVE
00:04:32 #6548 [verbose] > Trace.trace x
00:04:32 #6549 [verbose] > #else
00:04:32 #6550 [verbose] > trace x
00:04:32 #6551 [verbose] > #endif
00:04:32 #6552 [verbose] >
00:04:32 #6553 [verbose] > let US0_0 =
00:04:32 #6554 [verbose] > #if !INTERACTIVE
00:04:32 #6555 [verbose] > Trace.US0_0
00:04:32 #6556 [verbose] > #else
00:04:32 #6557 [verbose] > US0_0
00:04:32 #6558 [verbose] > #endif
00:04:32 #6559 [verbose] >
00:04:32 #6560 [verbose] > let US0_1 =
00:04:32 #6561 [verbose] > #if !INTERACTIVE
00:04:32 #6562 [verbose] > Trace.US0_1
00:04:32 #6563 [verbose] > #else
00:04:32 #6564 [verbose] > US0_1
00:04:32 #6565 [verbose] > #endif
00:04:32 #6566 [verbose] >
00:04:32 #6567 [verbose] > let US0_2 =
00:04:32 #6568 [verbose] > #if !INTERACTIVE
00:04:32 #6569 [verbose] > Trace.US0_2
00:04:32 #6570 [verbose] > #else
00:04:32 #6571 [verbose] > US0_2
00:04:32 #6572 [verbose] > #endif
00:04:32 #6573 [verbose] >
00:04:32 #6574 [verbose] > let US0_3 =
00:04:32 #6575 [verbose] > #if !INTERACTIVE
00:04:32 #6576 [verbose] > Trace.US0_3
00:04:32 #6577 [verbose] > #else
00:04:32 #6578 [verbose] > US0_3
00:04:32 #6579 [verbose] > #endif
00:04:32 #6580 [verbose] >
00:04:32 #6581 [verbose] > let US0_4 =
00:04:32 #6582 [verbose] > #if !INTERACTIVE
00:04:32 #6583 [verbose] > Trace.US0_4
00:04:32 #6584 [verbose] > #else
00:04:32 #6585 [verbose] > US0_4
00:04:32 #6586 [verbose] > #endif
00:04:32 #6587 [verbose] >
00:04:32 #6588 [verbose] >
00:04:32 #6589 [verbose] > #if !FABLE_COMPILER && !WASM && !CONTRACT
00:04:32 #6590 [verbose] > module SpiralDateTime =
00:04:32 #6591 [verbose] > let format x =
00:04:32 #6592 [verbose] > #if !INTERACTIVE
00:04:32 #6593 [verbose] > Date_ti...
00:04:32 #6594 [verbose] >
00:04:32 #6595 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:04:32 #6596 [verbose] > #if !INTERACTIVE
00:04:32 #6597 [verbose] > namespace Polyglot
00:04:32 #6598 [verbose] > #endif
00:04:32 #6599 [verbose] >
00:04:32 #6600 [verbose] > module Common =
00:04:32 #6601 [verbose] >
00:04:32 #6602 [verbose] > #if !INTERACTIVE
00:04:32 #6603 [verbose] > open Lib
00:04:32 #6604 [verbose] > #endif
00:04:32 #6605 [verbose] >
00:04:32 #6606 [verbose] > let nl = System.Environment.NewLine
00:04:32 #6607 [verbose] > let q = @""""
00:04:32 #6608 [verbose] >
00:04:32 #6609 [verbose] > let inline cons head tail = head :: tail
00:04:32 #6610 [verbose] >
00:04:32 #6611 [verbose] > /// ## memoize
00:04:32 #6612 [verbose] >
00:04:32 #6613 [verbose] > let inline memoize fn =
00:04:32 #6614 [verbose] > let result = lazy fn ()
00:04:32 #6615 [verbose] > fun () -> result.Value
00:04:32 #6616 [verbose] >
00:04:32 #6617 [verbose] > /// ## TraceLevel
00:04:32 #6618 [verbose] >
00:04:32 #6619 [verbose] > type TraceLevel =
00:04:32 #6620 [verbose] > | Verbose
00:04:32 #6621 [verbose] > | Debug
00:04:32 #6622 [verbose] > | Info
00:04:32 #6623 [verbose] > | Warning
00:04:32 #6624 [verbose] > | Critical
00:04:32 #6625 [verbose] >
00:04:32 #6626 [verbose] > let inline getLocals () = ""
00:04:32 #6627 [verbose] >
00:04:32 #6628 [verbose] > /// ## trace
00:04:32 #6629 [verbose] >
00:04:32 #6630 [verbose] > let to_trace_level = function
00:04:32 #6631 [verbose] > | Verbose -> SpiralTrace.US0_0
00:04:32 #6632 [verbose] > | Debug -> SpiralTrace.US0_1
00:04:32 #6633 [verbose] > | Info -> SpiralTrace.US0_2
00:04:32 #6634 [verbose] > | Warning -> SpiralTrace.US0_3
00:04:32 #6635 [verbose] > | Critical -> SpiralTrace.US0_4
00:04:32 #6636 [verbose] >
00:04:32 #6637 [verbose] > let trace level fn g...
00:04:32 #6638 [verbose] >
00:04:32 #6639 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:32 #6640 [verbose] > open Common
00:04:32 #6641 [verbose] >
00:04:32 #6642 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:32 #6643 [verbose] > let inline (/./) (table: Tomlyn.Model.TomlTable) (key: string) :
00:04:32 #6644 [verbose] > Tomlyn.Model.TomlTable =
00:04:32 #6645 [verbose] > table.[[key]] :?> Tomlyn.Model.TomlTable
00:04:32 #6646 [verbose] >
00:04:32 #6647 [verbose] > let inline (/../) (table: Tomlyn.Model.TomlTable) (key: string) : 'T seq =
00:04:32 #6648 [verbose] > table.[[key]] :?> Tomlyn.Model.TomlArray |> Seq.cast<'T>
00:04:32 #6649 [verbose] >
00:04:32 #6650 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:04:32 #6651 [verbose] > //// test
00:04:32 #6652 [verbose] >
00:04:32 #6653 [verbose] > let tomlContent =
00:04:32 #6654 [verbose] > """
00:04:32 #6655 [verbose] > [[extension]]
00:04:32 #6656 [verbose] > paths = [["/a", "/b"]]
00:04:32 #6657 [verbose] > """
00:04:32 #6658 [verbose] >
00:04:32 #6659 [verbose] > let toml = Tomlyn.Toml.Parse tomlContent
00:04:32 #6660 [verbose] > let tomlModel = Tomlyn.Toml.ToModel toml
00:04:32 #6661 [verbose] >
00:04:32 #6662 [verbose] > let paths : string seq = tomlModel /./ "extension" /../ "paths"
00:04:32 #6663 [verbose] >
00:04:32 #6664 [verbose] > paths
00:04:32 #6665 [verbose] > |> Seq.toList
00:04:32 #6666 [verbose] > |> _assertEqual [[ "/a"; "/b" ]]
00:04:32 #6667 [verbose] >
00:04:32 #6668 [verbose] > ╭─[ 169.62ms - stdout ]────────────────────────────────────────────────────────╮
00:04:32 #6669 [verbose] > │ [ /a, /b ] │
00:04:32 #6670 [verbose] > │ │
00:04:32 #6671 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:35 #6672 [verbose] > [NbConvertApp] Converting notebook Toml.dib.ipynb to html
00:04:35 #6673 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:04:35 #6674 [verbose] > validate(nb)
00:04:36 #6675 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:04:36 #6676 [verbose] > return _pygments_highlight(
00:04:36 #6677 [verbose] > [NbConvertApp] Writing 278356 bytes to Toml.dib.html
00:04:37 #6678 [debug] executeAsync / exitCode: 0 / output.Length: 11771
00:04:37 #6679 [debug] main / executeCommand / exitCode: 0
00:04:37 #6680 [verbose] waitForPortAccess / port: 13805 / retry: 0
00:04:39 #6681 [debug] runWithTimeoutChildAsync / timeout: 2000
00:00:00 #1 [debug] writeDibCode / output: Fs / path: AsyncSeq.dib
00:00:00 #1 [debug] writeDibCode / output: Fs / path: FileSystem.dib
00:00:00 #1 [debug] writeDibCode / output: Fs / path: Crypto.dib
00:00:00 #1 [debug] writeDibCode / output: Fs / path: CommonFSharp.dib
00:00:00 #1 [debug] writeDibCode / output: Fs / path: Threading.dib
00:00:00 #1 [debug] writeDibCode / output: Fs / path: Common.dib
00:00:00 #1 [debug] writeDibCode / output: Fs / path: Networking.dib
00:00:00 #1 [debug] writeDibCode / output: Fs / path: Async.dib
00:00:00 #6 [debug] parseDibCode / output: Fs / file: Threading.dib
00:00:00 #7 [debug] parseDibCode / output: Fs / file: Common.dib
00:00:00 #4 [debug] parseDibCode / output: Fs / file: Crypto.dib
00:00:00 #3 [debug] parseDibCode / output: Fs / file: AsyncSeq.dib
00:00:00 #3 [debug] parseDibCode / output: Fs / file: FileSystem.dib
00:00:00 #5 [debug] parseDibCode / output: Fs / file: CommonFSharp.dib
00:00:00 #9 [debug] parseDibCode / output: Fs / file: Networking.dib
00:00:00 #9 [debug] parseDibCode / output: Fs / file: Async.dib
00:00:00 #10 [debug] writeDibCode / output: Fs / path: Toml.dib
00:00:00 #10 [debug] writeDibCode / output: Fs / path: Runtime.dib
00:00:00 #11 [debug] parseDibCode / output: Fs / file: Toml.dib
00:00:00 #12 [debug] parseDibCode / output: Fs / file: Runtime.dib
In [ ]:
{ . "$ScriptDir/../lib/rust/fable/build.ps1" } | Invoke-Block
── pwsh ──────────────────────────────────────────────────────────────────────── . ../../../scripts/nbs_header.ps1 . ../../../scripts/core.ps1 ── pwsh ──────────────────────────────────────────────────────────────────────── dotnet fable --optimize --lang rs --extension .rs ╭─[ 1.76s - stdout ]───────────────────────────────────────────────────────────╮ │ Fable 4.14.0: F# to Rust compiler (status: alpha) │ │ │ │ Thanks to the contributor! @halfabench │ │ Stand with Ukraine! https://standwithukraine.com.ua/ │ │ │ │ Parsing fable-library-rust.fsproj... │ │ Retrieving project options from cache, in case of issues run `dotnet fable │ │ clean` or try `--noCache` option. │ │ Project and references (1 source files) parsed in 414ms │ │ │ │ Skipped compilation because all generated files are up-to-date! │ │ │ ╰──────────────────────────────────────────────────────────────────────────────╯ [NbConvertApp] Converting notebook build.dib.ipynb to html C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future. validate(nb) C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3 return _pygments_highlight( [NbConvertApp] Writing 272482 bytes to build.dib.html
In [ ]:
{ . "$ScriptDir/../apps/plot/build.ps1" } | Invoke-Block
Compiling plot v0.0.1 (C:\home\git\polyglot\apps\plot) Finished `release` profile [optimized] target(s) in 20.50s
In [ ]:
{ . "$ScriptDir/../lib/spiral/build.ps1" -sequential 1 } | Invoke-Block
00:00:00 #1 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:00 #2 [debug] executeAsync / options: { Command =
"dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" --port 13805 --default-int i32 --default-float f64"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = Some <fun:main@441-47> }
00:00:00 #3 [verbose] > pwd: C:\home\git\polyglot\lib\spiral
00:00:00 #4 [verbose] > dllPath: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release
00:00:00 #5 [verbose] > targetDir: C:\home\git\polyglot\target/polyglot/spiral_eval
00:00:01 #6 [verbose] > Starting the Spiral Server. It is bound to: http://localhost:13805
00:00:01 #7 [debug] runWithTimeoutChildAsync / timeout: 500
00:00:01 #8 [verbose] waitForPortAccess / port: 13805 / retry: 0
00:00:02 #9 [debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:
00:00:02 #10 [verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0
00:00:02 #11 [verbose] > Server bound to: http://localhost:13805
00:00:02 #12 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 testing.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:00:09 #13 [verbose] >
00:00:09 #14 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:09 #15 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:09 #16 [verbose] > │ # testing │
00:00:09 #17 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:09 #18 [verbose] >
00:00:09 #19 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:09 #20 [verbose] > inl __expect fn log b a =
00:00:09 #21 [verbose] > if log then
00:00:09 #22 [verbose] > a |> sm'.format_debug |> console.write_line
00:00:09 #23 [verbose] > inl result = fn a b
00:00:09 #24 [verbose] > inl result =
00:00:09 #25 [verbose] > result || join result
00:00:09 #26 [verbose] > if log
00:00:09 #27 [verbose] > then $"$\"__expect / actual: %A{!a} / expected: %A{!b}\""
00:00:09 #28 [verbose] > else "__expect"
00:00:09 #29 [verbose] > |> assert result
00:00:09 #30 [verbose] >
00:00:09 #31 [verbose] > inl __assert_approx_eq log e b a = __expect (fun a b => abs (b - a) < (e |>
00:00:09 #32 [verbose] > optionm.defaultWith 0.00000001)) log b a
00:00:09 #33 [verbose] > inl _assert_approx_eq e b a = __assert_approx_eq true e b a
00:00:09 #34 [verbose] >
00:00:09 #35 [verbose] > inl __assert_eq log b a = __expect (=) log b a
00:00:09 #36 [verbose] > inl _assert_eq b a = __assert_eq true b a
00:00:09 #37 [verbose] >
00:00:09 #38 [verbose] > inl __assert_eq' log b a = __expect (=.) log b a
00:00:09 #39 [verbose] > inl _assert_eq' b a = __assert_eq' true b a
00:00:09 #40 [verbose] >
00:00:09 #41 [verbose] > inl __assert_ne log b a = __expect (fun a b => a = b |> fun x => join x |> not)
00:00:09 #42 [verbose] > log b a
00:00:09 #43 [verbose] > inl _assert_ne b a = __assert_ne true b a
00:00:09 #44 [verbose] >
00:00:09 #45 [verbose] > inl __assert_gt log b a = __expect (>) log b a
00:00:09 #46 [verbose] > inl _assert_gt b a = __assert_gt true b a
00:00:09 #47 [verbose] >
00:00:09 #48 [verbose] > inl __assert_ge log b a = __expect (>=) log b a
00:00:09 #49 [verbose] > inl _assert_ge b a = __assert_ge true b a
00:00:09 #50 [verbose] >
00:00:09 #51 [verbose] > inl __assert_lt log b a = __expect (<) log b a
00:00:09 #52 [verbose] > inl _assert_lt b a = __assert_lt true b a
00:00:09 #53 [verbose] >
00:00:09 #54 [verbose] > inl __assert_le log b a = __expect (<=) log b a
00:00:09 #55 [verbose] > inl _assert_le b a = __assert_le true b a
00:00:09 #56 [verbose] >
00:00:09 #57 [verbose] > inl __assert_contains forall t. log (b : t) a =
00:00:09 #58 [verbose] > __expect
00:00:09 #59 [verbose] > (fun a b => a |> $'Seq.tryFind' ((=) b) |> optionm'.unbox |> fun (x :
00:00:09 #60 [verbose] > option t) => x <> None)
00:00:09 #61 [verbose] > log b a
00:00:09 #62 [verbose] > inl _assert_contains b a = __assert_contains true b a
00:00:09 #63 [verbose] >
00:00:09 #64 [verbose] > inl _throws (fn : () -> ()) : option exn =
00:00:09 #65 [verbose] > inl none = None : option exn
00:00:09 #66 [verbose] > inl some (s : exn) = Some s
00:00:09 #67 [verbose] > $"try !fn (); !none with ex -> ex |> !some"
00:00:09 #68 [verbose] >
00:00:09 #69 [verbose] > inl __assert_between log a b actual =
00:00:09 #70 [verbose] > inl assert_between actual (a, b) =
00:00:09 #71 [verbose] > __assert_ge log a actual
00:00:09 #72 [verbose] > __assert_le log b actual
00:00:09 #73 [verbose] > true
00:00:09 #74 [verbose] > __expect assert_between log (a, b) actual
00:00:09 #75 [verbose] > inl _assert_between a b actual = __assert_between true a b actual
00:00:14 #76 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8199ed1f1f6fedb9b1abbb00daf61588285152442aae9dd5373a2e2b301edd27\main.spi
00:00:17 #77 [verbose] >
00:00:17 #78 [verbose] > ╭─[ 8.22s - stdout ]───────────────────────────────────────────────────────────╮
00:00:17 #79 [verbose] > │ () │
00:00:17 #80 [verbose] > │ │
00:00:17 #81 [verbose] > │ │
00:00:17 #82 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #83 [verbose] >
00:00:17 #84 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:17 #85 [verbose] > // // test
00:00:17 #86 [verbose] >
00:00:17 #87 [verbose] > 1f64
00:00:17 #88 [verbose] > |> _assert_approx_eq (Some 3) 2
00:00:17 #89 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b849eebf7d7b49dbc71f6caea758584ac5cf7e28e78421315d7342b189eedd75\main.spi
00:00:19 #90 [verbose] >
00:00:19 #91 [verbose] > ╭─[ 2.28s - stdout ]───────────────────────────────────────────────────────────╮
00:00:19 #92 [verbose] > │ let rec method0 () : unit = │
00:00:19 #93 [verbose] > │ let v0 : string = $"%A{1.0}" │
00:00:19 #94 [verbose] > │ System.Console.WriteLine v0 │
00:00:19 #95 [verbose] > │ let v1 : string = $"__expect / actual: %A{1.0} / expected: %A{2.0}" │
00:00:19 #96 [verbose] > │ () │
00:00:19 #97 [verbose] > │ method0() │
00:00:19 #98 [verbose] > │ │
00:00:19 #99 [verbose] > │ 1.0 │
00:00:19 #100 [verbose] > │ │
00:00:19 #101 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:19 #102 [verbose] >
00:00:19 #103 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:19 #104 [verbose] > // // test
00:00:19 #105 [verbose] >
00:00:19 #106 [verbose] > "abcd"
00:00:19 #107 [verbose] > |> _assert_contains 'b'
00:00:20 #108 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\85da4b7f7a268738ed82ba4f0f18a77a82a83398d4a918e88a2ffe0ddc678a1e\main.spi
00:00:21 #109 [verbose] >
00:00:21 #110 [verbose] > ╭─[ 1.59s - stdout ]───────────────────────────────────────────────────────────╮
00:00:21 #111 [verbose] > │ type [<Struct>] US0 = │
00:00:21 #112 [verbose] > │ | US0_0 of f0_0 : char │
00:00:21 #113 [verbose] > │ | US0_1 │
00:00:21 #114 [verbose] > │ let rec closure0 () (v0 : char) : bool = │
00:00:21 #115 [verbose] > │ let v1 : bool = 'b' = v0 │
00:00:21 #116 [verbose] > │ v1 │
00:00:21 #117 [verbose] > │ and closure1 () (v0 : char) : US0 = │
00:00:21 #118 [verbose] > │ US0_0(v0) │
00:00:21 #119 [verbose] > │ and method1 () : (char -> US0) = │
00:00:21 #120 [verbose] > │ closure1() │
00:00:21 #121 [verbose] > │ and method2 (v0 : bool) : bool = │
00:00:21 #122 [verbose] > │ v0 │
00:00:21 #123 [verbose] > │ and method0 () : unit = │
00:00:21 #124 [verbose] > │ let v0 : string = "abcd" │
00:00:21 #125 [verbose] > │ let v1 : string = $"%A{v0}" │
00:00:21 #126 [verbose] > │ System.Console.WriteLine v1 │
00:00:21 #127 [verbose] > │ let v2 : ((char -> bool) -> (string -> char option)) = Seq.tryFind │
00:00:21 #128 [verbose] > │ let v3 : (char -> bool) = closure0() │
00:00:21 #129 [verbose] > │ let v4 : (string -> char option) = v2 v3 │
00:00:21 #130 [verbose] > │ let v5 : char option = v4 v0 │
00:00:21 #131 [verbose] > │ let v6 : (char -> US0) = method1() │
00:00:21 #132 [verbose] > │ let v7 : US0 = US0_1 │
00:00:21 #133 [verbose] > │ let v8 : US0 = v5 |> Option.map v6 |> Option.defaultValue v7 │
00:00:21 #134 [verbose] > │ let v10 : bool = │
00:00:21 #135 [verbose] > │ match v8 with │
00:00:21 #136 [verbose] > │ | US0_1 -> (* None *) │
00:00:21 #137 [verbose] > │ true │
00:00:21 #138 [verbose] > │ | _ -> │
00:00:21 #139 [verbose] > │ false │
00:00:21 #140 [verbose] > │ let v11 : bool = v10 <> true │
00:00:21 #141 [verbose] > │ let v13 : bool = │
00:00:21 #142 [verbose] > │ if v11 then │
00:00:21 #143 [verbose] > │ true │
00:00:21 #144 [verbose] > │ else │
00:00:21 #145 [verbose] > │ method2(v11) │
00:00:21 #146 [verbose] > │ let v14 : string = $"__expect / actual: %A{v0} / expected: %A{'b'}" │
00:00:21 #147 [verbose] > │ let v15 : bool = v13 = false │
00:00:21 #148 [verbose] > │ if v15 then │
00:00:21 #149 [verbose] > │ failwith<unit> v14 │
00:00:21 #150 [verbose] > │ method0() │
00:00:21 #151 [verbose] > │ │
00:00:21 #152 [verbose] > │ "abcd" │
00:00:21 #153 [verbose] > │ │
00:00:21 #154 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:21 #155 [verbose] >
00:00:21 #156 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:21 #157 [verbose] > // // test
00:00:21 #158 [verbose] >
00:00:21 #159 [verbose] > (dyn 1f64)
00:00:21 #160 [verbose] > |> _assert_approx_eq (Some 3) 2
00:00:21 #161 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\66ce9439be9f1271b47dd03243505e86066d3c01977f6369e2b0315f4ecf89aa\main.spi
00:00:21 #162 [verbose] >
00:00:21 #163 [verbose] > ╭─[ 415.97ms - stdout ]────────────────────────────────────────────────────────╮
00:00:21 #164 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:00:21 #165 [verbose] > │ v0 │
00:00:21 #166 [verbose] > │ and method0 () : unit = │
00:00:21 #167 [verbose] > │ let v0 : float = 1.0 │
00:00:21 #168 [verbose] > │ let v1 : string = $"%A{v0}" │
00:00:21 #169 [verbose] > │ System.Console.WriteLine v1 │
00:00:21 #170 [verbose] > │ let v2 : float = 2.0 - v0 │
00:00:21 #171 [verbose] > │ let v3 : float = -v2 │
00:00:21 #172 [verbose] > │ let v4 : bool = v2 >= v3 │
00:00:21 #173 [verbose] > │ let v5 : float = │
00:00:21 #174 [verbose] > │ if v4 then │
00:00:21 #175 [verbose] > │ v2 │
00:00:21 #176 [verbose] > │ else │
00:00:21 #177 [verbose] > │ v3 │
00:00:21 #178 [verbose] > │ let v6 : bool = v5 < 3.0 │
00:00:21 #179 [verbose] > │ let v8 : bool = │
00:00:21 #180 [verbose] > │ if v6 then │
00:00:21 #181 [verbose] > │ true │
00:00:21 #182 [verbose] > │ else │
00:00:21 #183 [verbose] > │ method1(v6) │
00:00:21 #184 [verbose] > │ let v9 : string = $"__expect / actual: %A{v0} / expected: %A{2.0}" │
00:00:21 #185 [verbose] > │ let v10 : bool = v8 = false │
00:00:21 #186 [verbose] > │ if v10 then │
00:00:21 #187 [verbose] > │ failwith<unit> v9 │
00:00:21 #188 [verbose] > │ method0() │
00:00:21 #189 [verbose] > │ │
00:00:21 #190 [verbose] > │ 1.0 │
00:00:21 #191 [verbose] > │ │
00:00:21 #192 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:21 #193 [verbose] >
00:00:21 #194 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:21 #195 [verbose] > inl print_and_return x =
00:00:21 #196 [verbose] > $"printfn $\"print_and_return / x: {!x}\""
00:00:21 #197 [verbose] > x
00:00:22 #198 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b51ac49bb406218bb6bd4cd6325c88c9546a0639d0d60cd357826cfd3c0d8bed\main.spi
00:00:22 #199 [verbose] >
00:00:22 #200 [verbose] > ╭─[ 350.02ms - stdout ]────────────────────────────────────────────────────────╮
00:00:22 #201 [verbose] > │ () │
00:00:22 #202 [verbose] > │ │
00:00:22 #203 [verbose] > │ │
00:00:22 #204 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:26 #205 [verbose] > [NbConvertApp] Converting notebook testing.dib.ipynb to html
00:00:26 #206 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:00:26 #207 [verbose] > validate(nb)
00:00:28 #208 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:00:28 #209 [verbose] > return _pygments_highlight(
00:00:28 #210 [verbose] > [NbConvertApp] Writing 288401 bytes to testing.dib.html
00:00:30 #211 [debug] executeAsync / exitCode: 0 / output.Length: 11281
00:00:30 #212 [debug] main / executeCommand / exitCode: 0
00:00:30 #213 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 guid.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:00:34 #214 [verbose] >
00:00:34 #215 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:34 #216 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:34 #217 [verbose] > │ # guid │
00:00:34 #218 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:35 #219 [verbose] >
00:00:35 #220 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:35 #221 [verbose] > // // test
00:00:35 #222 [verbose] >
00:00:35 #223 [verbose] > open testing
00:00:40 #224 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:00:42 #225 [verbose] >
00:00:42 #226 [verbose] > ╭─[ 7.85s - stdout ]───────────────────────────────────────────────────────────╮
00:00:42 #227 [verbose] > │ () │
00:00:42 #228 [verbose] > │ │
00:00:42 #229 [verbose] > │ │
00:00:42 #230 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:42 #231 [verbose] >
00:00:42 #232 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:42 #233 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:42 #234 [verbose] > │ ## guid │
00:00:42 #235 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:42 #236 [verbose] >
00:00:42 #237 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:42 #238 [verbose] > nominal guid = $"System.Guid"
00:00:43 #239 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a75c685f6960362eab9a8fe1a3e2b3278ffd74315908bf46c8e60d83cf8715fd\main.spi
00:00:43 #240 [verbose] >
00:00:43 #241 [verbose] > ╭─[ 352.16ms - stdout ]────────────────────────────────────────────────────────╮
00:00:43 #242 [verbose] > │ () │
00:00:43 #243 [verbose] > │ │
00:00:43 #244 [verbose] > │ │
00:00:43 #245 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:43 #246 [verbose] >
00:00:43 #247 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:43 #248 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:43 #249 [verbose] > │ ## new_guid │
00:00:43 #250 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:43 #251 [verbose] >
00:00:43 #252 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:43 #253 [verbose] > inl new_guid (x : string) : guid =
00:00:43 #254 [verbose] > $'`guid !x '
00:00:43 #255 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\cda63d39ae325d8a34c76067fb2a26b2bb91b40507122d404bd07cc0ac607868\main.spi
00:00:43 #256 [verbose] >
00:00:43 #257 [verbose] > ╭─[ 311.87ms - stdout ]────────────────────────────────────────────────────────╮
00:00:43 #258 [verbose] > │ () │
00:00:43 #259 [verbose] > │ │
00:00:43 #260 [verbose] > │ │
00:00:43 #261 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:43 #262 [verbose] >
00:00:43 #263 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:43 #264 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:43 #265 [verbose] > │ ## new_raw_guid │
00:00:43 #266 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:43 #267 [verbose] >
00:00:43 #268 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:43 #269 [verbose] > inl new_raw_guid () : guid =
00:00:43 #270 [verbose] > $"System.Guid.NewGuid ()"
00:00:43 #271 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\17475be22bfb40029be299879a84344d6c09cdd87b5c5bd3cf868a8d42099288\main.spi
00:00:43 #272 [verbose] >
00:00:43 #273 [verbose] > ╭─[ 375.02ms - stdout ]────────────────────────────────────────────────────────╮
00:00:43 #274 [verbose] > │ () │
00:00:43 #275 [verbose] > │ │
00:00:43 #276 [verbose] > │ │
00:00:43 #277 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:43 #278 [verbose] >
00:00:43 #279 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:43 #280 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:43 #281 [verbose] > │ ## main │
00:00:43 #282 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:43 #283 [verbose] >
00:00:43 #284 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:43 #285 [verbose] > inl main () =
00:00:43 #286 [verbose] > $"let new_guid x = !new_guid x" : ()
00:00:43 #287 [verbose] > $"let new_raw_guid x = !new_raw_guid x" : ()
00:00:44 #288 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5b058abdfc3b2df628d49e420079117d23cd4a15771fc466a6a31bb6c3eca04c\main.spi
00:00:45 #289 [verbose] >
00:00:45 #290 [verbose] > ╭─[ 1.92s - stdout ]───────────────────────────────────────────────────────────╮
00:00:45 #291 [verbose] > │ let rec closure0 () (v0 : string) : System.Guid = │
00:00:45 #292 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:00:45 #293 [verbose] > │ v1 │
00:00:45 #294 [verbose] > │ and closure1 () () : System.Guid = │
00:00:45 #295 [verbose] > │ let v0 : System.Guid = System.Guid.NewGuid () │
00:00:45 #296 [verbose] > │ v0 │
00:00:45 #297 [verbose] > │ let v0 : (string -> System.Guid) = closure0() │
00:00:45 #298 [verbose] > │ let new_guid x = v0 x │
00:00:45 #299 [verbose] > │ let v1 : (unit -> System.Guid) = closure1() │
00:00:45 #300 [verbose] > │ let new_raw_guid x = v1 x │
00:00:45 #301 [verbose] > │ () │
00:00:45 #302 [verbose] > │ │
00:00:45 #303 [verbose] > │ │
00:00:45 #304 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:50 #305 [verbose] > [NbConvertApp] Converting notebook guid.dib.ipynb to html
00:00:50 #306 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:00:50 #307 [verbose] > validate(nb)
00:00:50 #308 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:00:50 #309 [verbose] > return _pygments_highlight(
00:00:51 #310 [verbose] > [NbConvertApp] Writing 278591 bytes to guid.dib.html
00:00:52 #311 [debug] executeAsync / exitCode: 0 / output.Length: 5882
00:00:52 #312 [debug] main / executeCommand / exitCode: 0
00:00:52 #313 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 trace.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:00:59 #314 [verbose] >
00:00:59 #315 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:59 #316 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:59 #317 [verbose] > │ # trace │
00:00:59 #318 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:59 #319 [verbose] >
00:00:59 #320 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:59 #321 [verbose] > // // test
00:00:59 #322 [verbose] >
00:00:59 #323 [verbose] > open testing
00:01:04 #324 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:01:06 #325 [verbose] >
00:01:06 #326 [verbose] > ╭─[ 6.80s - stdout ]───────────────────────────────────────────────────────────╮
00:01:06 #327 [verbose] > │ () │
00:01:06 #328 [verbose] > │ │
00:01:06 #329 [verbose] > │ │
00:01:06 #330 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:06 #331 [verbose] >
00:01:06 #332 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:06 #333 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:06 #334 [verbose] > │ ## trace_level │
00:01:06 #335 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:06 #336 [verbose] >
00:01:06 #337 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:06 #338 [verbose] > union trace_level =
00:01:06 #339 [verbose] > | Verbose
00:01:06 #340 [verbose] > | Debug
00:01:06 #341 [verbose] > | Info
00:01:06 #342 [verbose] > | Warning
00:01:06 #343 [verbose] > | Critical
00:01:06 #344 [verbose] >
00:01:06 #345 [verbose] > instance to_string trace_level = function
00:01:06 #346 [verbose] > | Verbose => "Verbose"
00:01:06 #347 [verbose] > | Debug => "Debug"
00:01:06 #348 [verbose] > | Info => "Info"
00:01:06 #349 [verbose] > | Warning => "Warning"
00:01:06 #350 [verbose] > | Critical => "Critical"
00:01:06 #351 [verbose] >
00:01:06 #352 [verbose] > instance of_string trace_level = function
00:01:06 #353 [verbose] > | "Verbose" => Verbose
00:01:06 #354 [verbose] > | "Debug" => Debug
00:01:06 #355 [verbose] > | "Info" => Info
00:01:06 #356 [verbose] > | "Warning" => Warning
00:01:06 #357 [verbose] > | "Critical" => Critical
00:01:06 #358 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c0956660fd32c297e75b99edc489114a110c74b5b45c4bad3616f1fd1ce28dbf\main.spi
00:01:06 #359 [verbose] >
00:01:06 #360 [verbose] > ╭─[ 261.09ms - stdout ]────────────────────────────────────────────────────────╮
00:01:06 #361 [verbose] > │ () │
00:01:06 #362 [verbose] > │ │
00:01:06 #363 [verbose] > │ │
00:01:06 #364 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:06 #365 [verbose] >
00:01:06 #366 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:06 #367 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:06 #368 [verbose] > │ ## repl_start │
00:01:06 #369 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:06 #370 [verbose] >
00:01:06 #371 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:06 #372 [verbose] > inl repl_start () : optionm'.option' i64 =
00:01:06 #373 [verbose] > inl result : optionm'.option' (optionm'.option' i64) = optionm'.none' ()
00:01:06 #374 [verbose] > $"let mutable _!result = !result"
00:01:06 #375 [verbose] > $'#if INTERACTIVE || \!FABLE_COMPILER' : ()
00:01:06 #376 [verbose] > if get_entry_assembly_name () <> "Microsoft.DotNet.Interactive.App"
00:01:06 #377 [verbose] > then date_time.now () |> date_time.ticks |> Some
00:01:06 #378 [verbose] > else None
00:01:06 #379 [verbose] > |> optionm'.box
00:01:06 #380 [verbose] > |> fun x =>
00:01:06 #381 [verbose] > inl x = join x
00:01:06 #382 [verbose] > $'!x '
00:01:06 #383 [verbose] > $'#else' : ()
00:01:06 #384 [verbose] > (None : option i64) |> optionm'.box
00:01:06 #385 [verbose] > |> fun x =>
00:01:06 #386 [verbose] > inl x = join x
00:01:06 #387 [verbose] > $'!x '
00:01:06 #388 [verbose] > $'#endif' : ()
00:01:06 #389 [verbose] > $"|> fun x -> _!result <- Some x"
00:01:06 #390 [verbose] > $'_!result.Value'
00:01:06 #391 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e18efccf01709dcc29772a1e685e8660b0ba82c3b518e567d9200018b377bc78\main.spi
00:01:06 #392 [verbose] >
00:01:06 #393 [verbose] > ╭─[ 261.71ms - stdout ]────────────────────────────────────────────────────────╮
00:01:06 #394 [verbose] > │ () │
00:01:06 #395 [verbose] > │ │
00:01:06 #396 [verbose] > │ │
00:01:06 #397 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:06 #398 [verbose] >
00:01:06 #399 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:06 #400 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:06 #401 [verbose] > │ ## trace_state │
00:01:06 #402 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:06 #403 [verbose] >
00:01:06 #404 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:06 #405 [verbose] > type trace_state =
00:01:06 #406 [verbose] > {
00:01:06 #407 [verbose] > count : mut i64
00:01:06 #408 [verbose] > dump : mut bool
00:01:06 #409 [verbose] > enabled : mut bool
00:01:06 #410 [verbose] > level : mut trace_level
00:01:06 #411 [verbose] > repl_start : optionm'.option' i64
00:01:06 #412 [verbose] > }
00:01:06 #413 [verbose] >
00:01:06 #414 [verbose] > inl new_trace_state () =
00:01:06 #415 [verbose] > {
00:01:06 #416 [verbose] > enabled = mut true
00:01:06 #417 [verbose] > count = mut 0i64
00:01:06 #418 [verbose] > level = mut Verbose
00:01:06 #419 [verbose] > dump = mut false
00:01:06 #420 [verbose] > repl_start = repl_start ()
00:01:06 #421 [verbose] > } : trace_state
00:01:06 #422 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\cf2b2549cbe250baa47fdc38fef171ce414517777e0b3ca6044da865a24e84f3\main.spi
00:01:06 #423 [verbose] >
00:01:06 #424 [verbose] > ╭─[ 272.10ms - stdout ]────────────────────────────────────────────────────────╮
00:01:06 #425 [verbose] > │ () │
00:01:06 #426 [verbose] > │ │
00:01:06 #427 [verbose] > │ │
00:01:06 #428 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:06 #429 [verbose] >
00:01:06 #430 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:06 #431 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:06 #432 [verbose] > │ ## init_trace_state │
00:01:06 #433 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:06 #434 [verbose] >
00:01:06 #435 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:06 #436 [verbose] > inl init_trace_state () : () =
00:01:06 #437 [verbose] > global "module State = let mutable trace_state = None"
00:01:06 #438 [verbose] > $"if State.trace_state = None then State.trace_state <- !new_trace_state ()
00:01:06 #439 [verbose] > |> Some" : ()
00:01:07 #440 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\05745b84632daa3eee9e0695ef1bd03c377f2779ca262cf433ec589dd671f212\main.spi
00:01:07 #441 [verbose] >
00:01:07 #442 [verbose] > ╭─[ 317.14ms - stdout ]────────────────────────────────────────────────────────╮
00:01:07 #443 [verbose] > │ () │
00:01:07 #444 [verbose] > │ │
00:01:07 #445 [verbose] > │ │
00:01:07 #446 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:07 #447 [verbose] >
00:01:07 #448 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:07 #449 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:07 #450 [verbose] > │ ## get_trace_state │
00:01:07 #451 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:07 #452 [verbose] >
00:01:07 #453 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:07 #454 [verbose] > inl get_trace_state () : trace_state =
00:01:07 #455 [verbose] > init_trace_state ()
00:01:07 #456 [verbose] > $'State.trace_state.Value'
00:01:07 #457 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\05ec304a70c0d5237c2a62ea96f26dd4d62807ac0501b2220c18763b62cb12bc\main.spi
00:01:07 #458 [verbose] >
00:01:07 #459 [verbose] > ╭─[ 287.37ms - stdout ]────────────────────────────────────────────────────────╮
00:01:07 #460 [verbose] > │ () │
00:01:07 #461 [verbose] > │ │
00:01:07 #462 [verbose] > │ │
00:01:07 #463 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:07 #464 [verbose] >
00:01:07 #465 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:07 #466 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:07 #467 [verbose] > │ ## get_locals │
00:01:07 #468 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:07 #469 [verbose] >
00:01:07 #470 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:07 #471 [verbose] > inl get_locals () = ""
00:01:07 #472 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\54aab8f314b3bde65bd956789f84c768dcae01bed8194d556cd14570142b7c29\main.spi
00:01:07 #473 [verbose] >
00:01:07 #474 [verbose] > ╭─[ 301.81ms - stdout ]────────────────────────────────────────────────────────╮
00:01:07 #475 [verbose] > │ () │
00:01:07 #476 [verbose] > │ │
00:01:07 #477 [verbose] > │ │
00:01:07 #478 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:07 #479 [verbose] >
00:01:07 #480 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:07 #481 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:07 #482 [verbose] > │ ## test_trace_level │
00:01:07 #483 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:07 #484 [verbose] >
00:01:07 #485 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:07 #486 [verbose] > inl test_trace_level level : bool =
00:01:07 #487 [verbose] > inl state = get_trace_state ()
00:01:07 #488 [verbose] > inl level' = *state.level
00:01:07 #489 [verbose] > *state.enabled && $'!level >= !level' '
00:01:08 #490 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ca235f4146c2be18c4201be2da5a4a17fd460c161f1c3615d45b69c12b87676b\main.spi
00:01:08 #491 [verbose] >
00:01:08 #492 [verbose] > ╭─[ 327.88ms - stdout ]────────────────────────────────────────────────────────╮
00:01:08 #493 [verbose] > │ () │
00:01:08 #494 [verbose] > │ │
00:01:08 #495 [verbose] > │ │
00:01:08 #496 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:08 #497 [verbose] >
00:01:08 #498 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:08 #499 [verbose] > // // test
00:01:08 #500 [verbose] >
00:01:08 #501 [verbose] > test_trace_level Verbose |> _assert_eq true
00:01:08 #502 [verbose] > test_trace_level Critical |> _assert_eq true
00:01:08 #503 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ee65b8ef00640ecbc0563102df0df52c82ea9ead8d5855a96f6b64d137b59199\main.spi
00:01:12 #504 [verbose] >
00:01:13 #505 [verbose] > ╭─[ 4.78s - stdout ]───────────────────────────────────────────────────────────╮
00:01:13 #506 [verbose] > │ module State = let mutable trace_state = None │
00:01:13 #507 [verbose] > │ type Mut0 = {mutable l0 : int64} │
00:01:13 #508 [verbose] > │ and Mut1 = {mutable l0 : bool} │
00:01:13 #509 [verbose] > │ and [<Struct>] US0 = │
00:01:13 #510 [verbose] > │ | US0_0 │
00:01:13 #511 [verbose] > │ | US0_1 │
00:01:13 #512 [verbose] > │ | US0_2 │
00:01:13 #513 [verbose] > │ | US0_3 │
00:01:13 #514 [verbose] > │ | US0_4 │
00:01:13 #515 [verbose] > │ and Mut2 = {mutable l0 : US0} │
00:01:13 #516 [verbose] > │ and [<Struct>] US1 = │
00:01:13 #517 [verbose] > │ | US1_0 of f0_0 : int64 │
00:01:13 #518 [verbose] > │ | US1_1 │
00:01:13 #519 [verbose] > │ let rec method1 (v0 : int64 option) : int64 option = │
00:01:13 #520 [verbose] > │ v0 │
00:01:13 #521 [verbose] > │ and method2 (v0 : int64 option) : int64 option = │
00:01:13 #522 [verbose] > │ v0 │
00:01:13 #523 [verbose] > │ and closure0 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) = │
00:01:13 #524 [verbose] > │ let v0 : Mut1 = {l0 = true} : Mut1 │
00:01:13 #525 [verbose] > │ let v1 : Mut0 = {l0 = 0L} : Mut0 │
00:01:13 #526 [verbose] > │ let v2 : US0 = US0_0 │
00:01:13 #527 [verbose] > │ let v3 : Mut2 = {l0 = v2} : Mut2 │
00:01:13 #528 [verbose] > │ let v4 : Mut1 = {l0 = false} : Mut1 │
00:01:13 #529 [verbose] > │ let v5 : int64 option option = None │
00:01:13 #530 [verbose] > │ let mutable _v5 = v5 │
00:01:13 #531 [verbose] > │ #if INTERACTIVE || !FABLE_COMPILER │
00:01:13 #532 [verbose] > │ let v6 : string option = None │
00:01:13 #533 [verbose] > │ let mutable _v6 = v6 │
00:01:13 #534 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:13 #535 [verbose] > │ let v7 : string = null |> unbox<string> │
00:01:13 #536 [verbose] > │ v7 │
00:01:13 #537 [verbose] > │ #endif │
00:01:13 #538 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:13 #539 [verbose] > │ let v8 : string = null |> unbox<string> │
00:01:13 #540 [verbose] > │ v8 │
00:01:13 #541 [verbose] > │ #endif │
00:01:13 #542 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:13 #543 [verbose] > │ let v9 : string = null |> unbox<string> │
00:01:13 #544 [verbose] > │ v9 │
00:01:13 #545 [verbose] > │ #endif │
00:01:13 #546 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:13 #547 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:13 #548 [verbose] > │ let v10 : string = │
00:01:13 #549 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:01:13 #550 [verbose] > │ v10 │
00:01:13 #551 [verbose] > │ #endif │
00:01:13 #552 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:13 #553 [verbose] > │ let v11 : string = null |> unbox<string> │
00:01:13 #554 [verbose] > │ v11 │
00:01:13 #555 [verbose] > │ #endif │
00:01:13 #556 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:01:13 #557 [verbose] > │ Unchecked.defaultof<string> │
00:01:13 #558 [verbose] > │ #endif │
00:01:13 #559 [verbose] > │ |> fun x -> _v6 <- Some x │
00:01:13 #560 [verbose] > │ let v12 : string = _v6.Value │
00:01:13 #561 [verbose] > │ let v14 : bool = v12 = "Microsoft.DotNet.Interactive.App" │
00:01:13 #562 [verbose] > │ let v15 : bool = v14 <> true │
00:01:13 #563 [verbose] > │ let v21 : US1 = │
00:01:13 #564 [verbose] > │ if v15 then │
00:01:13 #565 [verbose] > │ let v16 : System.DateTime = System.DateTime.Now │
00:01:13 #566 [verbose] > │ let v17 : (System.DateTime -> int64) = _.Ticks │
00:01:13 #567 [verbose] > │ let v18 : int64 = v17 v16 │
00:01:13 #568 [verbose] > │ US1_0(v18) │
00:01:13 #569 [verbose] > │ else │
00:01:13 #570 [verbose] > │ US1_1 │
00:01:13 #571 [verbose] > │ let v26 : int64 option = │
00:01:13 #572 [verbose] > │ match v21 with │
00:01:13 #573 [verbose] > │ | US1_1 -> (* None *) │
00:01:13 #574 [verbose] > │ let v24 : int64 option = None │
00:01:13 #575 [verbose] > │ v24 │
00:01:13 #576 [verbose] > │ | US1_0(v22) -> (* Some *) │
00:01:13 #577 [verbose] > │ let v23 : int64 option = Some v22 │
00:01:13 #578 [verbose] > │ v23 │
00:01:13 #579 [verbose] > │ let v27 : int64 option = method1(v26) │
00:01:13 #580 [verbose] > │ v27 │
00:01:13 #581 [verbose] > │ #else │
00:01:13 #582 [verbose] > │ let v28 : int64 option = None │
00:01:13 #583 [verbose] > │ let v29 : int64 option = method2(v28) │
00:01:13 #584 [verbose] > │ v29 │
00:01:13 #585 [verbose] > │ #endif │
00:01:13 #586 [verbose] > │ |> fun x -> _v5 <- Some x │
00:01:13 #587 [verbose] > │ let v30 : int64 option = _v5.Value │
00:01:13 #588 [verbose] > │ struct (v1, v4, v0, v3, v30) │
00:01:13 #589 [verbose] > │ and method3 (v0 : bool) : bool = │
00:01:13 #590 [verbose] > │ v0 │
00:01:13 #591 [verbose] > │ and method0 () : unit = │
00:01:13 #592 [verbose] > │ let v0 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:01:13 #593 [verbose] > │ closure0() │
00:01:13 #594 [verbose] > │ if State.trace_state = None then State.trace_state <- v0 () |> Some │
00:01:13 #595 [verbose] > │ let struct (v1 : Mut0, v2 : Mut1, v3 : Mut1, v4 : Mut2, v5 : int64 │
00:01:13 #596 [verbose] > │ option) = State.trace_state.Value │
00:01:13 #597 [verbose] > │ let v6 : US0 = v4.l0 │
00:01:13 #598 [verbose] > │ let v7 : bool = v3.l0 │
00:01:13 #599 [verbose] > │ let v10 : bool = │
00:01:13 #600 [verbose] > │ if v7 then │
00:01:13 #601 [verbose] > │ let v8 : US0 = US0_0 │
00:01:13 #602 [verbose] > │ let v9 : bool = v8 >= v6 │
00:01:13 #603 [verbose] > │ v9 │
00:01:13 #604 [verbose] > │ else │
00:01:13 #605 [verbose] > │ false │
00:01:13 #606 [verbose] > │ let v11 : string = $"%A{v10}" │
00:01:13 #607 [verbose] > │ System.Console.WriteLine v11 │
00:01:13 #608 [verbose] > │ let v13 : bool = │
00:01:13 #609 [verbose] > │ if v10 then │
00:01:13 #610 [verbose] > │ true │
00:01:13 #611 [verbose] > │ else │
00:01:13 #612 [verbose] > │ method3(v10) │
00:01:13 #613 [verbose] > │ let v14 : string = $"__expect / actual: %A{v10} / expected: %A{true}" │
00:01:13 #614 [verbose] > │ let v15 : bool = v13 = false │
00:01:13 #615 [verbose] > │ if v15 then │
00:01:13 #616 [verbose] > │ failwith<unit> v14 │
00:01:13 #617 [verbose] > │ if State.trace_state = None then State.trace_state <- v0 () |> Some │
00:01:13 #618 [verbose] > │ let struct (v16 : Mut0, v17 : Mut1, v18 : Mut1, v19 : Mut2, v20 : int64 │
00:01:13 #619 [verbose] > │ option) = State.trace_state.Value │
00:01:13 #620 [verbose] > │ let v21 : US0 = v19.l0 │
00:01:13 #621 [verbose] > │ let v22 : bool = v18.l0 │
00:01:13 #622 [verbose] > │ let v25 : bool = │
00:01:13 #623 [verbose] > │ if v22 then │
00:01:13 #624 [verbose] > │ let v23 : US0 = US0_4 │
00:01:13 #625 [verbose] > │ let v24 : bool = v23 >= v21 │
00:01:13 #626 [verbose] > │ v24 │
00:01:13 #627 [verbose] > │ else │
00:01:13 #628 [verbose] > │ false │
00:01:13 #629 [verbose] > │ let v26 : string = $"%A{v25}" │
00:01:13 #630 [verbose] > │ System.Console.WriteLine v26 │
00:01:13 #631 [verbose] > │ let v28 : bool = │
00:01:13 #632 [verbose] > │ if v25 then │
00:01:13 #633 [verbose] > │ true │
00:01:13 #634 [verbose] > │ else │
00:01:13 #635 [verbose] > │ method3(v25) │
00:01:13 #636 [verbose] > │ let v29 : string = $"__expect / actual: %A{v25} / expected: %A{true}" │
00:01:13 #637 [verbose] > │ let v30 : bool = v28 = false │
00:01:13 #638 [verbose] > │ if v30 then │
00:01:13 #639 [verbose] > │ failwith<unit> v29 │
00:01:13 #640 [verbose] > │ method0() │
00:01:13 #641 [verbose] > │ │
00:01:13 #642 [verbose] > │ true │
00:01:13 #643 [verbose] > │ true │
00:01:13 #644 [verbose] > │ │
00:01:13 #645 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:13 #646 [verbose] >
00:01:13 #647 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:13 #648 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:13 #649 [verbose] > │ ## trace_raw │
00:01:13 #650 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:13 #651 [verbose] >
00:01:13 #652 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:13 #653 [verbose] > inl trace_raw level fn =
00:01:13 #654 [verbose] > inl trace_state = get_trace_state ()
00:01:13 #655 [verbose] > if level |> test_trace_level then
00:01:13 #656 [verbose] > inl count = trace_state.count
00:01:13 #657 [verbose] > count <- *trace_state.count + 1
00:01:13 #658 [verbose] >
00:01:13 #659 [verbose] > inl text = $'$"%s{!fn ()}"' : string
00:01:13 #660 [verbose] > run_target function
00:01:13 #661 [verbose] > | Rust _ => fun () =>
00:01:13 #662 [verbose] > open rust_operators
00:01:13 #663 [verbose] > !\\(text, $'\@"println\!(""{}"", $0)"')
00:01:13 #664 [verbose] > | _ => fun () =>
00:01:13 #665 [verbose] > $'System.Console.WriteLine !text '
00:01:13 #666 [verbose] >
00:01:13 #667 [verbose] > // run_target function
00:01:13 #668 [verbose] > // | Fsharp (Native) => fun () =>
00:01:13 #669 [verbose] > // if *trace_state.dump then
00:01:13 #670 [verbose] > // try_unit
00:01:13 #671 [verbose] > // fun () =>
00:01:13 #672 [verbose] > // // open file_system_operators
00:01:13 #673 [verbose] > // // inl tmp_path = file_system.get_temp_path ()
00:01:13 #674 [verbose] > // // inl log_dir = tmp_path </> "!polyglot"
00:01:13 #675 [verbose] > // // file_system.create_directory log_dir |> ignore
00:01:13 #676 [verbose] > // // inl guid = date_time.new_guid_from_date_time
00:01:13 #677 [verbose] > (date_time.now ())
00:01:13 #678 [verbose] > // // inl log_file = log_dir </> $'$"{!guid}.txt"'
00:01:13 #679 [verbose] > // // file_system.write_all_text_async log_file text |>
00:01:13 #680 [verbose] > async.run_synchronously
00:01:13 #681 [verbose] > // ()
00:01:13 #682 [verbose] > // fun ex =>
00:01:13 #683 [verbose] > // inl ex = ex |> sm'.format_exception
00:01:13 #684 [verbose] > // trace_raw Critical (fun () => $'$"trace / ex:
00:01:13 #685 [verbose] > {!ex}"')
00:01:13 #686 [verbose] > // | _ => fun () => ()
00:01:13 #687 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\fc7cd52b5cb921c63e9b1e1acb38e642ecc4b4002bcaf0c776fa9275e1765f77\main.spi
00:01:13 #688 [verbose] >
00:01:13 #689 [verbose] > ╭─[ 445.62ms - stdout ]────────────────────────────────────────────────────────╮
00:01:13 #690 [verbose] > │ () │
00:01:13 #691 [verbose] > │ │
00:01:13 #692 [verbose] > │ │
00:01:13 #693 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:13 #694 [verbose] >
00:01:13 #695 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:13 #696 [verbose] > // // test
00:01:13 #697 [verbose] > // // print_code=true
00:01:13 #698 [verbose] >
00:01:13 #699 [verbose] > trace_raw Debug fun () => "test"
00:01:13 #700 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ecc47bfe40669a340fab66be37253534f47597850f8013c71e3f0f60e85e00fc\main.spi
00:01:14 #701 [verbose] >
00:01:14 #702 [verbose] > ╭─[ 1.09s - stdout ]───────────────────────────────────────────────────────────╮
00:01:14 #703 [verbose] > │ module State = let mutable trace_state = None │
00:01:14 #704 [verbose] > │ type Mut0 = {mutable l0 : int64} │
00:01:14 #705 [verbose] > │ and Mut1 = {mutable l0 : bool} │
00:01:14 #706 [verbose] > │ and [<Struct>] US0 = │
00:01:14 #707 [verbose] > │ | US0_0 │
00:01:14 #708 [verbose] > │ | US0_1 │
00:01:14 #709 [verbose] > │ | US0_2 │
00:01:14 #710 [verbose] > │ | US0_3 │
00:01:14 #711 [verbose] > │ | US0_4 │
00:01:14 #712 [verbose] > │ and Mut2 = {mutable l0 : US0} │
00:01:14 #713 [verbose] > │ and [<Struct>] US1 = │
00:01:14 #714 [verbose] > │ | US1_0 of f0_0 : int64 │
00:01:14 #715 [verbose] > │ | US1_1 │
00:01:14 #716 [verbose] > │ let rec method1 (v0 : int64 option) : int64 option = │
00:01:14 #717 [verbose] > │ v0 │
00:01:14 #718 [verbose] > │ and method2 (v0 : int64 option) : int64 option = │
00:01:14 #719 [verbose] > │ v0 │
00:01:14 #720 [verbose] > │ and closure0 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) = │
00:01:14 #721 [verbose] > │ let v0 : Mut1 = {l0 = true} : Mut1 │
00:01:14 #722 [verbose] > │ let v1 : Mut0 = {l0 = 0L} : Mut0 │
00:01:14 #723 [verbose] > │ let v2 : US0 = US0_0 │
00:01:14 #724 [verbose] > │ let v3 : Mut2 = {l0 = v2} : Mut2 │
00:01:14 #725 [verbose] > │ let v4 : Mut1 = {l0 = false} : Mut1 │
00:01:14 #726 [verbose] > │ let v5 : int64 option option = None │
00:01:14 #727 [verbose] > │ let mutable _v5 = v5 │
00:01:14 #728 [verbose] > │ #if INTERACTIVE || !FABLE_COMPILER │
00:01:14 #729 [verbose] > │ let v6 : string option = None │
00:01:14 #730 [verbose] > │ let mutable _v6 = v6 │
00:01:14 #731 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:14 #732 [verbose] > │ let v7 : string = null |> unbox<string> │
00:01:14 #733 [verbose] > │ v7 │
00:01:14 #734 [verbose] > │ #endif │
00:01:14 #735 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:14 #736 [verbose] > │ let v8 : string = null |> unbox<string> │
00:01:14 #737 [verbose] > │ v8 │
00:01:14 #738 [verbose] > │ #endif │
00:01:14 #739 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:14 #740 [verbose] > │ let v9 : string = null |> unbox<string> │
00:01:14 #741 [verbose] > │ v9 │
00:01:14 #742 [verbose] > │ #endif │
00:01:14 #743 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:14 #744 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:14 #745 [verbose] > │ let v10 : string = │
00:01:14 #746 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:01:14 #747 [verbose] > │ v10 │
00:01:14 #748 [verbose] > │ #endif │
00:01:14 #749 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:14 #750 [verbose] > │ let v11 : string = null |> unbox<string> │
00:01:14 #751 [verbose] > │ v11 │
00:01:14 #752 [verbose] > │ #endif │
00:01:14 #753 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:01:14 #754 [verbose] > │ Unchecked.defaultof<string> │
00:01:14 #755 [verbose] > │ #endif │
00:01:14 #756 [verbose] > │ |> fun x -> _v6 <- Some x │
00:01:14 #757 [verbose] > │ let v12 : string = _v6.Value │
00:01:14 #758 [verbose] > │ let v14 : bool = v12 = "Microsoft.DotNet.Interactive.App" │
00:01:14 #759 [verbose] > │ let v15 : bool = v14 <> true │
00:01:14 #760 [verbose] > │ let v21 : US1 = │
00:01:14 #761 [verbose] > │ if v15 then │
00:01:14 #762 [verbose] > │ let v16 : System.DateTime = System.DateTime.Now │
00:01:14 #763 [verbose] > │ let v17 : (System.DateTime -> int64) = _.Ticks │
00:01:14 #764 [verbose] > │ let v18 : int64 = v17 v16 │
00:01:14 #765 [verbose] > │ US1_0(v18) │
00:01:14 #766 [verbose] > │ else │
00:01:14 #767 [verbose] > │ US1_1 │
00:01:14 #768 [verbose] > │ let v26 : int64 option = │
00:01:14 #769 [verbose] > │ match v21 with │
00:01:14 #770 [verbose] > │ | US1_1 -> (* None *) │
00:01:14 #771 [verbose] > │ let v24 : int64 option = None │
00:01:14 #772 [verbose] > │ v24 │
00:01:14 #773 [verbose] > │ | US1_0(v22) -> (* Some *) │
00:01:14 #774 [verbose] > │ let v23 : int64 option = Some v22 │
00:01:14 #775 [verbose] > │ v23 │
00:01:14 #776 [verbose] > │ let v27 : int64 option = method1(v26) │
00:01:14 #777 [verbose] > │ v27 │
00:01:14 #778 [verbose] > │ #else │
00:01:14 #779 [verbose] > │ let v28 : int64 option = None │
00:01:14 #780 [verbose] > │ let v29 : int64 option = method2(v28) │
00:01:14 #781 [verbose] > │ v29 │
00:01:14 #782 [verbose] > │ #endif │
00:01:14 #783 [verbose] > │ |> fun x -> _v5 <- Some x │
00:01:14 #784 [verbose] > │ let v30 : int64 option = _v5.Value │
00:01:14 #785 [verbose] > │ struct (v1, v4, v0, v3, v30) │
00:01:14 #786 [verbose] > │ and closure1 () () : string = │
00:01:14 #787 [verbose] > │ let v0 : string = "test" │
00:01:14 #788 [verbose] > │ v0 │
00:01:14 #789 [verbose] > │ and method0 () : unit = │
00:01:14 #790 [verbose] > │ let v0 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:01:14 #791 [verbose] > │ closure0() │
00:01:14 #792 [verbose] > │ if State.trace_state = None then State.trace_state <- v0 () |> Some │
00:01:14 #793 [verbose] > │ let struct (v1 : Mut0, v2 : Mut1, v3 : Mut1, v4 : Mut2, v5 : int64 │
00:01:14 #794 [verbose] > │ option) = State.trace_state.Value │
00:01:14 #795 [verbose] > │ if State.trace_state = None then State.trace_state <- v0 () |> Some │
00:01:14 #796 [verbose] > │ let struct (v6 : Mut0, v7 : Mut1, v8 : Mut1, v9 : Mut2, v10 : int64 │
00:01:14 #797 [verbose] > │ option) = State.trace_state.Value │
00:01:14 #798 [verbose] > │ let v11 : US0 = v9.l0 │
00:01:14 #799 [verbose] > │ let v12 : bool = v8.l0 │
00:01:14 #800 [verbose] > │ let v15 : bool = │
00:01:14 #801 [verbose] > │ if v12 then │
00:01:14 #802 [verbose] > │ let v13 : US0 = US0_1 │
00:01:14 #803 [verbose] > │ let v14 : bool = v13 >= v11 │
00:01:14 #804 [verbose] > │ v14 │
00:01:14 #805 [verbose] > │ else │
00:01:14 #806 [verbose] > │ false │
00:01:14 #807 [verbose] > │ if v15 then │
00:01:14 #808 [verbose] > │ let v16 : int64 = v1.l0 │
00:01:14 #809 [verbose] > │ let v17 : int64 = v16 + 1L │
00:01:14 #810 [verbose] > │ v1.l0 <- v17 │
00:01:14 #811 [verbose] > │ let v18 : (unit -> string) = closure1() │
00:01:14 #812 [verbose] > │ let v19 : string = $"%s{v18 ()}" │
00:01:14 #813 [verbose] > │ let v20 : unit option = None │
00:01:14 #814 [verbose] > │ let mutable _v20 = v20 │
00:01:14 #815 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:14 #816 [verbose] > │ let v21 : string = @"println!(""{}"", $0)" │
00:01:14 #817 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v19 v21 │
00:01:14 #818 [verbose] > │ () │
00:01:14 #819 [verbose] > │ #endif │
00:01:14 #820 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:14 #821 [verbose] > │ let v22 : string = @"println!(""{}"", $0)" │
00:01:14 #822 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v19 v22 │
00:01:14 #823 [verbose] > │ () │
00:01:14 #824 [verbose] > │ #endif │
00:01:14 #825 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:14 #826 [verbose] > │ let v23 : string = @"println!(""{}"", $0)" │
00:01:14 #827 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v19 v23 │
00:01:14 #828 [verbose] > │ () │
00:01:14 #829 [verbose] > │ #endif │
00:01:14 #830 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:14 #831 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:14 #832 [verbose] > │ System.Console.WriteLine v19 │
00:01:14 #833 [verbose] > │ () │
00:01:14 #834 [verbose] > │ #endif │
00:01:15 #835 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:15 #836 [verbose] > │ System.Console.WriteLine v19 │
00:01:15 #837 [verbose] > │ () │
00:01:15 #838 [verbose] > │ #endif │
00:01:15 #839 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:15 #840 [verbose] > │ FABLE_COMPILER_DART │
00:01:15 #841 [verbose] > │ Unchecked.defaultof<unit> │
00:01:15 #842 [verbose] > │ #endif │
00:01:15 #843 [verbose] > │ |> fun x -> _v20 <- Some x │
00:01:15 #844 [verbose] > │ _v20.Value │
00:01:15 #845 [verbose] > │ () │
00:01:15 #846 [verbose] > │ method0() │
00:01:15 #847 [verbose] > │ │
00:01:15 #848 [verbose] > │ test │
00:01:15 #849 [verbose] > │ │
00:01:15 #850 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:15 #851 [verbose] >
00:01:15 #852 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:15 #853 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:15 #854 [verbose] > │ ## trace │
00:01:15 #855 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:15 #856 [verbose] >
00:01:15 #857 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:15 #858 [verbose] > let trace (level : trace_level) (fn : () -> string) (get_locals : () -> string)
00:01:15 #859 [verbose] > =
00:01:15 #860 [verbose] > fun () =>
00:01:15 #861 [verbose] > inl trace_state = get_trace_state ()
00:01:15 #862 [verbose] > inl time =
00:01:15 #863 [verbose] > run_target fun target =>
00:01:15 #864 [verbose] > match target with
00:01:15 #865 [verbose] > | Fsharp (Native)
00:01:15 #866 [verbose] > | Rust (Native) => fun () =>
00:01:15 #867 [verbose] > match trace_state.repl_start |> optionm'.unbox with
00:01:15 #868 [verbose] > | Some repl_start =>
00:01:15 #869 [verbose] > inl t =
00:01:15 #870 [verbose] > (date_time.now () |> date_time.ticks |> fun
00:01:15 #871 [verbose] > (date_time.timestamp x) => x)
00:01:15 #872 [verbose] > - repl_start |> date_time.time_span
00:01:15 #873 [verbose] > date_time.date_time_milliseconds
00:01:15 #874 [verbose] > 1i32 1i32 1i32
00:01:15 #875 [verbose] > (t |> date_time.hours)
00:01:15 #876 [verbose] > (t |> date_time.minutes)
00:01:15 #877 [verbose] > (t |> date_time.seconds)
00:01:15 #878 [verbose] > (t |> date_time.milliseconds)
00:01:15 #879 [verbose] > | None => date_time.now ()
00:01:15 #880 [verbose] > |> fun date_time =>
00:01:15 #881 [verbose] > inl format =
00:01:15 #882 [verbose] > match target with
00:01:15 #883 [verbose] > | Rust _ => "hh:mm:ss"
00:01:15 #884 [verbose] > | _ => "HH:mm:ss"
00:01:15 #885 [verbose] > $'!date_time.ToString !format '
00:01:15 #886 [verbose] > | _ => fun () => join ""
00:01:15 #887 [verbose] > inl count = *trace_state.count
00:01:15 #888 [verbose] > inl level = level |> to_string |> sm'.to_lower
00:01:15 #889 [verbose] > $'$"{!time} #{!count} [[{!level}]] %s{!fn ()} / %s{!get_locals ()}"'
00:01:15 #890 [verbose] > |> sm'.trim_start ;[[]]
00:01:15 #891 [verbose] > |> sm'.trim_end ;[[ ' '; '/' ]]
00:01:15 #892 [verbose] > |> trace_raw level
00:01:15 #893 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5956b5c56b71ec11cce4873b0f59b2370196ae3b52e964f219d1184ff1d206a1\main.spi
00:01:15 #894 [verbose] >
00:01:15 #895 [verbose] > ╭─[ 610.68ms - stdout ]────────────────────────────────────────────────────────╮
00:01:15 #896 [verbose] > │ () │
00:01:15 #897 [verbose] > │ │
00:01:15 #898 [verbose] > │ │
00:01:15 #899 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:15 #900 [verbose] >
00:01:15 #901 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:15 #902 [verbose] > // // test
00:01:15 #903 [verbose] > // // print_code=false
00:01:15 #904 [verbose] >
00:01:15 #905 [verbose] > trace Debug (fun () => "test") get_locals
00:01:15 #906 [verbose] > trace Debug (fun () => "test") get_locals
00:01:15 #907 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\eb1d38de316261f3119db698513495c49075c8b163d8dc71e72254a6659c9075\main.spi
00:01:17 #908 [verbose] >
00:01:17 #909 [verbose] > ╭─[ 1.58s - stdout ]───────────────────────────────────────────────────────────╮
00:01:17 #910 [verbose] > │ 00:00:00 #1 [debug] test │
00:01:17 #911 [verbose] > │ 00:00:00 #2 [debug] test │
00:01:17 #912 [verbose] > │ │
00:01:17 #913 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:17 #914 [verbose] >
00:01:17 #915 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:17 #916 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:17 #917 [verbose] > │ ## main │
00:01:17 #918 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:17 #919 [verbose] >
00:01:17 #920 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:17 #921 [verbose] > inl main () =
00:01:17 #922 [verbose] > // global "let mutable trace_state = None"
00:01:17 #923 [verbose] > // $"let mutable trace_state : `trace_state option = None" : ()
00:01:17 #924 [verbose] >
00:01:17 #925 [verbose] > $"let trace x = !trace x" : ()
00:01:17 #926 [verbose] > $"let get_trace_state () = !get_trace_state ()" : ()
00:01:17 #927 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\dfd06d8b7236fe63125fbe2af4afa1719cd7f28f1e2ad72b63f05037b09ceaf7\main.spi
00:01:18 #928 [verbose] >
00:01:19 #929 [verbose] > ╭─[ 1.70s - stdout ]───────────────────────────────────────────────────────────╮
00:01:19 #930 [verbose] > │ module State = let mutable trace_state = None │
00:01:19 #931 [verbose] > │ type [<Struct>] US0 = │
00:01:19 #932 [verbose] > │ | US0_0 │
00:01:19 #933 [verbose] > │ | US0_1 │
00:01:19 #934 [verbose] > │ | US0_2 │
00:01:19 #935 [verbose] > │ | US0_3 │
00:01:19 #936 [verbose] > │ | US0_4 │
00:01:19 #937 [verbose] > │ and Mut0 = {mutable l0 : int64} │
00:01:19 #938 [verbose] > │ and Mut1 = {mutable l0 : bool} │
00:01:19 #939 [verbose] > │ and Mut2 = {mutable l0 : US0} │
00:01:19 #940 [verbose] > │ and [<Struct>] US1 = │
00:01:19 #941 [verbose] > │ | US1_0 of f0_0 : int64 │
00:01:19 #942 [verbose] > │ | US1_1 │
00:01:19 #943 [verbose] > │ and [<Struct>] US2 = │
00:01:19 #944 [verbose] > │ | US2_0 of f0_0 : int64 │
00:01:19 #945 [verbose] > │ | US2_1 │
00:01:19 #946 [verbose] > │ let rec method1 (v0 : int64 option) : int64 option = │
00:01:19 #947 [verbose] > │ v0 │
00:01:19 #948 [verbose] > │ and method2 (v0 : int64 option) : int64 option = │
00:01:19 #949 [verbose] > │ v0 │
00:01:19 #950 [verbose] > │ and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) = │
00:01:19 #951 [verbose] > │ let v0 : Mut1 = {l0 = true} : Mut1 │
00:01:19 #952 [verbose] > │ let v1 : Mut0 = {l0 = 0L} : Mut0 │
00:01:19 #953 [verbose] > │ let v2 : US0 = US0_0 │
00:01:19 #954 [verbose] > │ let v3 : Mut2 = {l0 = v2} : Mut2 │
00:01:19 #955 [verbose] > │ let v4 : Mut1 = {l0 = false} : Mut1 │
00:01:19 #956 [verbose] > │ let v5 : int64 option option = None │
00:01:19 #957 [verbose] > │ let mutable _v5 = v5 │
00:01:19 #958 [verbose] > │ #if INTERACTIVE || !FABLE_COMPILER │
00:01:19 #959 [verbose] > │ let v6 : string option = None │
00:01:19 #960 [verbose] > │ let mutable _v6 = v6 │
00:01:19 #961 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:19 #962 [verbose] > │ let v7 : string = null |> unbox<string> │
00:01:19 #963 [verbose] > │ v7 │
00:01:19 #964 [verbose] > │ #endif │
00:01:19 #965 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:19 #966 [verbose] > │ let v8 : string = null |> unbox<string> │
00:01:19 #967 [verbose] > │ v8 │
00:01:19 #968 [verbose] > │ #endif │
00:01:19 #969 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:19 #970 [verbose] > │ let v9 : string = null |> unbox<string> │
00:01:19 #971 [verbose] > │ v9 │
00:01:19 #972 [verbose] > │ #endif │
00:01:19 #973 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:19 #974 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:19 #975 [verbose] > │ let v10 : string = │
00:01:19 #976 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:01:19 #977 [verbose] > │ v10 │
00:01:19 #978 [verbose] > │ #endif │
00:01:19 #979 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:19 #980 [verbose] > │ let v11 : string = null |> unbox<string> │
00:01:19 #981 [verbose] > │ v11 │
00:01:19 #982 [verbose] > │ #endif │
00:01:19 #983 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:01:19 #984 [verbose] > │ Unchecked.defaultof<string> │
00:01:19 #985 [verbose] > │ #endif │
00:01:19 #986 [verbose] > │ |> fun x -> _v6 <- Some x │
00:01:19 #987 [verbose] > │ let v12 : string = _v6.Value │
00:01:19 #988 [verbose] > │ let v14 : bool = v12 = "Microsoft.DotNet.Interactive.App" │
00:01:19 #989 [verbose] > │ let v15 : bool = v14 <> true │
00:01:19 #990 [verbose] > │ let v21 : US1 = │
00:01:19 #991 [verbose] > │ if v15 then │
00:01:19 #992 [verbose] > │ let v16 : System.DateTime = System.DateTime.Now │
00:01:19 #993 [verbose] > │ let v17 : (System.DateTime -> int64) = _.Ticks │
00:01:19 #994 [verbose] > │ let v18 : int64 = v17 v16 │
00:01:19 #995 [verbose] > │ US1_0(v18) │
00:01:19 #996 [verbose] > │ else │
00:01:19 #997 [verbose] > │ US1_1 │
00:01:19 #998 [verbose] > │ let v26 : int64 option = │
00:01:19 #999 [verbose] > │ match v21 with │
00:01:19 #1000 [verbose] > │ | US1_1 -> (* None *) │
00:01:19 #1001 [verbose] > │ let v24 : int64 option = None │
00:01:19 #1002 [verbose] > │ v24 │
00:01:19 #1003 [verbose] > │ | US1_0(v22) -> (* Some *) │
00:01:19 #1004 [verbose] > │ let v23 : int64 option = Some v22 │
00:01:19 #1005 [verbose] > │ v23 │
00:01:19 #1006 [verbose] > │ let v27 : int64 option = method1(v26) │
00:01:19 #1007 [verbose] > │ v27 │
00:01:19 #1008 [verbose] > │ #else │
00:01:19 #1009 [verbose] > │ let v28 : int64 option = None │
00:01:19 #1010 [verbose] > │ let v29 : int64 option = method2(v28) │
00:01:19 #1011 [verbose] > │ v29 │
00:01:19 #1012 [verbose] > │ #endif │
00:01:19 #1013 [verbose] > │ |> fun x -> _v5 <- Some x │
00:01:19 #1014 [verbose] > │ let v30 : int64 option = _v5.Value │
00:01:19 #1015 [verbose] > │ struct (v1, v4, v0, v3, v30) │
00:01:19 #1016 [verbose] > │ and closure5 () (v0 : int64) : US2 = │
00:01:19 #1017 [verbose] > │ US2_0(v0) │
00:01:19 #1018 [verbose] > │ and method3 () : (int64 -> US2) = │
00:01:19 #1019 [verbose] > │ closure5() │
00:01:19 #1020 [verbose] > │ and method4 () : string = │
00:01:19 #1021 [verbose] > │ let v0 : string = "" │
00:01:19 #1022 [verbose] > │ v0 │
00:01:19 #1023 [verbose] > │ and closure4 (v0 : US0, v1 : (unit -> string), v2 : (unit -> string)) () : │
00:01:19 #1024 [verbose] > │ string = │
00:01:19 #1025 [verbose] > │ let v3 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:01:19 #1026 [verbose] > │ closure3() │
00:01:19 #1027 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:01:19 #1028 [verbose] > │ let struct (v4 : Mut0, v5 : Mut1, v6 : Mut1, v7 : Mut2, v8 : int64 │
00:01:19 #1029 [verbose] > │ option) = State.trace_state.Value │
00:01:19 #1030 [verbose] > │ let v9 : string option = None │
00:01:19 #1031 [verbose] > │ let mutable _v9 = v9 │
00:01:19 #1032 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:19 #1033 [verbose] > │ let v10 : (int64 -> US2) = method3() │
00:01:19 #1034 [verbose] > │ let v11 : US2 = US2_1 │
00:01:19 #1035 [verbose] > │ let v12 : US2 = v8 |> Option.map v10 |> Option.defaultValue v11 │
00:01:19 #1036 [verbose] > │ let v30 : System.DateTime = │
00:01:19 #1037 [verbose] > │ match v12 with │
00:01:19 #1038 [verbose] > │ | US2_1 -> (* None *) │
00:01:19 #1039 [verbose] > │ let v28 : System.DateTime = System.DateTime.Now │
00:01:19 #1040 [verbose] > │ v28 │
00:01:19 #1041 [verbose] > │ | US2_0(v13) -> (* Some *) │
00:01:19 #1042 [verbose] > │ let v14 : System.DateTime = System.DateTime.Now │
00:01:19 #1043 [verbose] > │ let v15 : (System.DateTime -> int64) = _.Ticks │
00:01:19 #1044 [verbose] > │ let v16 : int64 = v15 v14 │
00:01:19 #1045 [verbose] > │ let v17 : int64 = v16 - v13 │
00:01:19 #1046 [verbose] > │ let v18 : System.TimeSpan = System.TimeSpan v17 │
00:01:19 #1047 [verbose] > │ let v19 : (System.TimeSpan -> int32) = _.Hours │
00:01:19 #1048 [verbose] > │ let v20 : int32 = v19 v18 │
00:01:19 #1049 [verbose] > │ let v21 : (System.TimeSpan -> int32) = _.Minutes │
00:01:19 #1050 [verbose] > │ let v22 : int32 = v21 v18 │
00:01:19 #1051 [verbose] > │ let v23 : (System.TimeSpan -> int32) = _.Seconds │
00:01:19 #1052 [verbose] > │ let v24 : int32 = v23 v18 │
00:01:19 #1053 [verbose] > │ let v25 : (System.TimeSpan -> int32) = _.Milliseconds │
00:01:19 #1054 [verbose] > │ let v26 : int32 = v25 v18 │
00:01:19 #1055 [verbose] > │ let v27 : System.DateTime = System.DateTime (1, 1, 1, v20, v22, │
00:01:19 #1056 [verbose] > │ v24, v26) │
00:01:19 #1057 [verbose] > │ v27 │
00:01:19 #1058 [verbose] > │ let v31 : string = "hh:mm:ss" │
00:01:19 #1059 [verbose] > │ let v32 : string = v30.ToString v31 │
00:01:19 #1060 [verbose] > │ v32 │
00:01:19 #1061 [verbose] > │ #endif │
00:01:19 #1062 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:19 #1063 [verbose] > │ let v33 : string = method4() │
00:01:19 #1064 [verbose] > │ v33 │
00:01:19 #1065 [verbose] > │ #endif │
00:01:19 #1066 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:19 #1067 [verbose] > │ let v34 : string = method4() │
00:01:19 #1068 [verbose] > │ v34 │
00:01:19 #1069 [verbose] > │ #endif │
00:01:19 #1070 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:19 #1071 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:19 #1072 [verbose] > │ let v35 : (int64 -> US2) = method3() │
00:01:19 #1073 [verbose] > │ let v36 : US2 = US2_1 │
00:01:19 #1074 [verbose] > │ let v37 : US2 = v8 |> Option.map v35 |> Option.defaultValue v36 │
00:01:19 #1075 [verbose] > │ let v55 : System.DateTime = │
00:01:19 #1076 [verbose] > │ match v37 with │
00:01:19 #1077 [verbose] > │ | US2_1 -> (* None *) │
00:01:19 #1078 [verbose] > │ let v53 : System.DateTime = System.DateTime.Now │
00:01:19 #1079 [verbose] > │ v53 │
00:01:19 #1080 [verbose] > │ | US2_0(v38) -> (* Some *) │
00:01:19 #1081 [verbose] > │ let v39 : System.DateTime = System.DateTime.Now │
00:01:19 #1082 [verbose] > │ let v40 : (System.DateTime -> int64) = _.Ticks │
00:01:19 #1083 [verbose] > │ let v41 : int64 = v40 v39 │
00:01:19 #1084 [verbose] > │ let v42 : int64 = v41 - v38 │
00:01:19 #1085 [verbose] > │ let v43 : System.TimeSpan = System.TimeSpan v42 │
00:01:19 #1086 [verbose] > │ let v44 : (System.TimeSpan -> int32) = _.Hours │
00:01:19 #1087 [verbose] > │ let v45 : int32 = v44 v43 │
00:01:19 #1088 [verbose] > │ let v46 : (System.TimeSpan -> int32) = _.Minutes │
00:01:19 #1089 [verbose] > │ let v47 : int32 = v46 v43 │
00:01:19 #1090 [verbose] > │ let v48 : (System.TimeSpan -> int32) = _.Seconds │
00:01:19 #1091 [verbose] > │ let v49 : int32 = v48 v43 │
00:01:19 #1092 [verbose] > │ let v50 : (System.TimeSpan -> int32) = _.Milliseconds │
00:01:19 #1093 [verbose] > │ let v51 : int32 = v50 v43 │
00:01:19 #1094 [verbose] > │ let v52 : System.DateTime = System.DateTime (1, 1, 1, v45, v47, │
00:01:19 #1095 [verbose] > │ v49, v51) │
00:01:19 #1096 [verbose] > │ v52 │
00:01:19 #1097 [verbose] > │ let v56 : string = "HH:mm:ss" │
00:01:19 #1098 [verbose] > │ let v57 : string = v55.ToString v56 │
00:01:19 #1099 [verbose] > │ v57 │
00:01:19 #1100 [verbose] > │ #endif │
00:01:19 #1101 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:19 #1102 [verbose] > │ let v58 : string = method4() │
00:01:19 #1103 [verbose] > │ v58 │
00:01:19 #1104 [verbose] > │ #endif │
00:01:19 #1105 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:01:19 #1106 [verbose] > │ Unchecked.defaultof<string> │
00:01:19 #1107 [verbose] > │ #endif │
00:01:19 #1108 [verbose] > │ |> fun x -> _v9 <- Some x │
00:01:19 #1109 [verbose] > │ let v59 : string = _v9.Value │
00:01:19 #1110 [verbose] > │ let v60 : int64 = v4.l0 │
00:01:19 #1111 [verbose] > │ let v70 : string = │
00:01:19 #1112 [verbose] > │ match v0 with │
00:01:19 #1113 [verbose] > │ | US0_4 -> (* Critical *) │
00:01:19 #1114 [verbose] > │ let v65 : string = "Critical" │
00:01:19 #1115 [verbose] > │ v65 │
00:01:19 #1116 [verbose] > │ | US0_1 -> (* Debug *) │
00:01:19 #1117 [verbose] > │ let v62 : string = "Debug" │
00:01:19 #1118 [verbose] > │ v62 │
00:01:19 #1119 [verbose] > │ | US0_2 -> (* Info *) │
00:01:19 #1120 [verbose] > │ let v63 : string = "Info" │
00:01:19 #1121 [verbose] > │ v63 │
00:01:19 #1122 [verbose] > │ | US0_0 -> (* Verbose *) │
00:01:19 #1123 [verbose] > │ let v61 : string = "Verbose" │
00:01:19 #1124 [verbose] > │ v61 │
00:01:19 #1125 [verbose] > │ | US0_3 -> (* Warning *) │
00:01:19 #1126 [verbose] > │ let v64 : string = "Warning" │
00:01:19 #1127 [verbose] > │ v64 │
00:01:19 #1128 [verbose] > │ let v71 : string = v70.ToLower () │
00:01:19 #1129 [verbose] > │ let v72 : string = $"{v59} #{v60} [{v71}] %s{v1 ()} / %s{v2 ()}" │
00:01:19 #1130 [verbose] > │ let v73 : (char []) = [||] │
00:01:19 #1131 [verbose] > │ let v74 : string = v72.TrimStart v73 │
00:01:19 #1132 [verbose] > │ let v75 : (char []) = [|' '; '/'|] │
00:01:19 #1133 [verbose] > │ let v76 : string = v74.TrimEnd v75 │
00:01:19 #1134 [verbose] > │ v76 │
00:01:19 #1135 [verbose] > │ and method0 (v0 : US0, v1 : (unit -> string), v2 : (unit -> string)) : unit │
00:01:19 #1136 [verbose] > │ = │
00:01:19 #1137 [verbose] > │ let v3 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:01:19 #1138 [verbose] > │ closure3() │
00:01:19 #1139 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:01:19 #1140 [verbose] > │ let struct (v4 : Mut0, v5 : Mut1, v6 : Mut1, v7 : Mut2, v8 : int64 │
00:01:19 #1141 [verbose] > │ option) = State.trace_state.Value │
00:01:19 #1142 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:01:19 #1143 [verbose] > │ let struct (v9 : Mut0, v10 : Mut1, v11 : Mut1, v12 : Mut2, v13 : int64 │
00:01:19 #1144 [verbose] > │ option) = State.trace_state.Value │
00:01:19 #1145 [verbose] > │ let v14 : US0 = v12.l0 │
00:01:19 #1146 [verbose] > │ let v15 : bool = v11.l0 │
00:01:19 #1147 [verbose] > │ let v17 : bool = │
00:01:19 #1148 [verbose] > │ if v15 then │
00:01:19 #1149 [verbose] > │ let v16 : bool = v0 >= v14 │
00:01:19 #1150 [verbose] > │ v16 │
00:01:19 #1151 [verbose] > │ else │
00:01:19 #1152 [verbose] > │ false │
00:01:19 #1153 [verbose] > │ if v17 then │
00:01:19 #1154 [verbose] > │ let v18 : int64 = v4.l0 │
00:01:19 #1155 [verbose] > │ let v19 : int64 = v18 + 1L │
00:01:19 #1156 [verbose] > │ v4.l0 <- v19 │
00:01:19 #1157 [verbose] > │ let v20 : (unit -> string) = closure4(v0, v1, v2) │
00:01:19 #1158 [verbose] > │ let v21 : string = $"%s{v20 ()}" │
00:01:19 #1159 [verbose] > │ let v22 : unit option = None │
00:01:19 #1160 [verbose] > │ let mutable _v22 = v22 │
00:01:19 #1161 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:19 #1162 [verbose] > │ let v23 : string = @"println!(""{}"", $0)" │
00:01:19 #1163 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v23 │
00:01:19 #1164 [verbose] > │ () │
00:01:19 #1165 [verbose] > │ #endif │
00:01:19 #1166 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:19 #1167 [verbose] > │ let v24 : string = @"println!(""{}"", $0)" │
00:01:19 #1168 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v24 │
00:01:19 #1169 [verbose] > │ () │
00:01:19 #1170 [verbose] > │ #endif │
00:01:19 #1171 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:19 #1172 [verbose] > │ let v25 : string = @"println!(""{}"", $0)" │
00:01:19 #1173 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v25 │
00:01:19 #1174 [verbose] > │ () │
00:01:19 #1175 [verbose] > │ #endif │
00:01:19 #1176 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:19 #1177 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:19 #1178 [verbose] > │ System.Console.WriteLine v21 │
00:01:19 #1179 [verbose] > │ () │
00:01:19 #1180 [verbose] > │ #endif │
00:01:19 #1181 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:19 #1182 [verbose] > │ System.Console.WriteLine v21 │
00:01:19 #1183 [verbose] > │ () │
00:01:19 #1184 [verbose] > │ #endif │
00:01:19 #1185 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:19 #1186 [verbose] > │ FABLE_COMPILER_DART │
00:01:19 #1187 [verbose] > │ Unchecked.defaultof<unit> │
00:01:19 #1188 [verbose] > │ #endif │
00:01:19 #1189 [verbose] > │ |> fun x -> _v22 <- Some x │
00:01:19 #1190 [verbose] > │ _v22.Value │
00:01:19 #1191 [verbose] > │ () │
00:01:19 #1192 [verbose] > │ and closure2 (v0 : US0, v1 : (unit -> string)) (v2 : (unit -> string)) : │
00:01:19 #1193 [verbose] > │ unit = │
00:01:19 #1194 [verbose] > │ method0(v0, v1, v2) │
00:01:19 #1195 [verbose] > │ and closure1 (v0 : US0) (v1 : (unit -> string)) : ((unit -> string) -> unit) │
00:01:19 #1196 [verbose] > │ = │
00:01:19 #1197 [verbose] > │ closure2(v0, v1) │
00:01:19 #1198 [verbose] > │ and closure0 () (v0 : US0) : ((unit -> string) -> ((unit -> string) -> │
00:01:19 #1199 [verbose] > │ unit)) = │
00:01:19 #1200 [verbose] > │ closure1(v0) │
00:01:19 #1201 [verbose] > │ and closure6 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) = │
00:01:19 #1202 [verbose] > │ let v0 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:01:19 #1203 [verbose] > │ closure3() │
00:01:19 #1204 [verbose] > │ if State.trace_state = None then State.trace_state <- v0 () |> Some │
00:01:19 #1205 [verbose] > │ let struct (v1 : Mut0, v2 : Mut1, v3 : Mut1, v4 : Mut2, v5 : int64 │
00:01:19 #1206 [verbose] > │ option) = State.trace_state.Value │
00:01:19 #1207 [verbose] > │ struct (v1, v2, v3, v4, v5) │
00:01:19 #1208 [verbose] > │ let v0 : (US0 -> ((unit -> string) -> ((unit -> string) -> unit))) = │
00:01:19 #1209 [verbose] > │ closure0() │
00:01:19 #1210 [verbose] > │ let trace x = v0 x │
00:01:19 #1211 [verbose] > │ let v1 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:01:19 #1212 [verbose] > │ closure6() │
00:01:19 #1213 [verbose] > │ let get_trace_state () = v1 () │
00:01:19 #1214 [verbose] > │ () │
00:01:19 #1215 [verbose] > │ │
00:01:19 #1216 [verbose] > │ │
00:01:19 #1217 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:24 #1218 [verbose] > [NbConvertApp] Converting notebook trace.dib.ipynb to html
00:01:24 #1219 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:01:24 #1220 [verbose] > validate(nb)
00:01:27 #1221 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:01:27 #1222 [verbose] > return _pygments_highlight(
00:01:27 #1223 [verbose] > [NbConvertApp] Writing 329894 bytes to trace.dib.html
00:01:29 #1224 [debug] executeAsync / exitCode: 0 / output.Length: 62197
00:01:29 #1225 [debug] main / executeCommand / exitCode: 0
00:01:29 #1226 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 common.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:01:38 #1227 [verbose] >
00:01:38 #1228 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:38 #1229 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:38 #1230 [verbose] > │ # common │
00:01:38 #1231 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:39 #1232 [verbose] >
00:01:39 #1233 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:39 #1234 [verbose] > // // test
00:01:39 #1235 [verbose] >
00:01:39 #1236 [verbose] > open testing
00:01:48 #1237 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:01:49 #1238 [verbose] >
00:01:49 #1239 [verbose] > ╭─[ 10.84s - stdout ]──────────────────────────────────────────────────────────╮
00:01:49 #1240 [verbose] > │ () │
00:01:49 #1241 [verbose] > │ │
00:01:49 #1242 [verbose] > │ │
00:01:49 #1243 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:49 #1244 [verbose] >
00:01:49 #1245 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:49 #1246 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:49 #1247 [verbose] > │ ## prototype │
00:01:49 #1248 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:49 #1249 [verbose] >
00:01:49 #1250 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:49 #1251 [verbose] > prototype (~:>) r : forall t. t -> r
00:01:49 #1252 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d4ce264de5d991ae9ccc997ddcda021381f27d8b2b79c2e1943d4bca97dfe7d3\main.spi
00:01:49 #1253 [verbose] >
00:01:49 #1254 [verbose] > ╭─[ 311.75ms - stdout ]────────────────────────────────────────────────────────╮
00:01:49 #1255 [verbose] > │ () │
00:01:49 #1256 [verbose] > │ │
00:01:49 #1257 [verbose] > │ │
00:01:49 #1258 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:49 #1259 [verbose] >
00:01:49 #1260 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:49 #1261 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:49 #1262 [verbose] > │ ## run_target │
00:01:49 #1263 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:49 #1264 [verbose] >
00:01:49 #1265 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:49 #1266 [verbose] > // // test
00:01:49 #1267 [verbose] >
00:01:49 #1268 [verbose] > run_target function
00:01:49 #1269 [verbose] > | Fsharp (Native) => fun () => $"1uy"
00:01:49 #1270 [verbose] > | _ => fun () => $"2uy"
00:01:49 #1271 [verbose] > |> _assert_eq 1u8
00:01:50 #1272 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e0f7acc8ac8483618bb8a0515b9bbdedfbedd7ff8fefe713883a0de12e372610\main.spi
00:01:51 #1273 [verbose] >
00:01:51 #1274 [verbose] > ╭─[ 1.63s - stdout ]───────────────────────────────────────────────────────────╮
00:01:51 #1275 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:01:51 #1276 [verbose] > │ v0 │
00:01:51 #1277 [verbose] > │ and method0 () : unit = │
00:01:51 #1278 [verbose] > │ let v0 : uint8 option = None │
00:01:51 #1279 [verbose] > │ let mutable _v0 = v0 │
00:01:51 #1280 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:51 #1281 [verbose] > │ let v1 : uint8 = 2uy │
00:01:51 #1282 [verbose] > │ v1 │
00:01:51 #1283 [verbose] > │ #endif │
00:01:51 #1284 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:51 #1285 [verbose] > │ let v2 : uint8 = 2uy │
00:01:51 #1286 [verbose] > │ v2 │
00:01:51 #1287 [verbose] > │ #endif │
00:01:51 #1288 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:51 #1289 [verbose] > │ let v3 : uint8 = 2uy │
00:01:51 #1290 [verbose] > │ v3 │
00:01:51 #1291 [verbose] > │ #endif │
00:01:51 #1292 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:51 #1293 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:51 #1294 [verbose] > │ let v4 : uint8 = 1uy │
00:01:51 #1295 [verbose] > │ v4 │
00:01:51 #1296 [verbose] > │ #endif │
00:01:51 #1297 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:51 #1298 [verbose] > │ let v5 : uint8 = 2uy │
00:01:51 #1299 [verbose] > │ v5 │
00:01:51 #1300 [verbose] > │ #endif │
00:01:51 #1301 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:01:51 #1302 [verbose] > │ Unchecked.defaultof<uint8> │
00:01:51 #1303 [verbose] > │ #endif │
00:01:51 #1304 [verbose] > │ |> fun x -> _v0 <- Some x │
00:01:51 #1305 [verbose] > │ let v6 : uint8 = _v0.Value │
00:01:51 #1306 [verbose] > │ let v7 : string = $"%A{v6}" │
00:01:51 #1307 [verbose] > │ System.Console.WriteLine v7 │
00:01:51 #1308 [verbose] > │ let v8 : bool = v6 = 1uy │
00:01:51 #1309 [verbose] > │ let v10 : bool = │
00:01:51 #1310 [verbose] > │ if v8 then │
00:01:51 #1311 [verbose] > │ true │
00:01:51 #1312 [verbose] > │ else │
00:01:51 #1313 [verbose] > │ method1(v8) │
00:01:51 #1314 [verbose] > │ let v11 : string = $"__expect / actual: %A{v6} / expected: %A{1uy}" │
00:01:51 #1315 [verbose] > │ let v12 : bool = v10 = false │
00:01:51 #1316 [verbose] > │ if v12 then │
00:01:51 #1317 [verbose] > │ failwith<unit> v11 │
00:01:51 #1318 [verbose] > │ method0() │
00:01:51 #1319 [verbose] > │ │
00:01:51 #1320 [verbose] > │ 1uy │
00:01:51 #1321 [verbose] > │ │
00:01:51 #1322 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:51 #1323 [verbose] >
00:01:51 #1324 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:51 #1325 [verbose] > // // test
00:01:51 #1326 [verbose] > // // rust=
00:01:51 #1327 [verbose] >
00:01:51 #1328 [verbose] > run_target function
00:01:51 #1329 [verbose] > | Rust (Native) => fun () => $"1uy"
00:01:51 #1330 [verbose] > | _ => fun () => $"2uy"
00:01:51 #1331 [verbose] > |> (=) 1u8
00:01:51 #1332 [verbose] > |> _assert_eq true
00:01:51 #1333 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0f5cc01d14ee8735f2719280fb33b2e6c8c3c3ccc3d669cc71019a8309e3a118\main.spi
00:02:06 #1334 [verbose] >
00:02:06 #1335 [verbose] > ╭─[ 14.91s - return value ]────────────────────────────────────────────────────╮
00:02:06 #1336 [verbose] > │ .rs output: │
00:02:06 #1337 [verbose] > │ true │
00:02:06 #1338 [verbose] > │ │
00:02:06 #1339 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:06 #1340 [verbose] >
00:02:06 #1341 [verbose] > ╭─[ 14.94s - stdout ]──────────────────────────────────────────────────────────╮
00:02:06 #1342 [verbose] > │ │
00:02:06 #1343 [verbose] > │ .fsx: │
00:02:06 #1344 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:02:06 #1345 [verbose] > │ v0 │
00:02:06 #1346 [verbose] > │ and method0 () : unit = │
00:02:06 #1347 [verbose] > │ let v0 : uint8 option = None │
00:02:06 #1348 [verbose] > │ let mutable _v0 = v0 │
00:02:06 #1349 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:06 #1350 [verbose] > │ let v1 : uint8 = 1uy │
00:02:06 #1351 [verbose] > │ v1 │
00:02:06 #1352 [verbose] > │ #endif │
00:02:06 #1353 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:06 #1354 [verbose] > │ let v2 : uint8 = 2uy │
00:02:06 #1355 [verbose] > │ v2 │
00:02:06 #1356 [verbose] > │ #endif │
00:02:06 #1357 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:06 #1358 [verbose] > │ let v3 : uint8 = 2uy │
00:02:06 #1359 [verbose] > │ v3 │
00:02:06 #1360 [verbose] > │ #endif │
00:02:06 #1361 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:06 #1362 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:06 #1363 [verbose] > │ let v4 : uint8 = 2uy │
00:02:06 #1364 [verbose] > │ v4 │
00:02:06 #1365 [verbose] > │ #endif │
00:02:06 #1366 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:06 #1367 [verbose] > │ let v5 : uint8 = 2uy │
00:02:06 #1368 [verbose] > │ v5 │
00:02:06 #1369 [verbose] > │ #endif │
00:02:06 #1370 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:06 #1371 [verbose] > │ Unchecked.defaultof<uint8> │
00:02:06 #1372 [verbose] > │ #endif │
00:02:06 #1373 [verbose] > │ |> fun x -> _v0 <- Some x │
00:02:06 #1374 [verbose] > │ let v6 : uint8 = _v0.Value │
00:02:06 #1375 [verbose] > │ let v7 : bool = 1uy = v6 │
00:02:06 #1376 [verbose] > │ let v8 : string = $"%A{v7}" │
00:02:06 #1377 [verbose] > │ System.Console.WriteLine v8 │
00:02:06 #1378 [verbose] > │ let v10 : bool = │
00:02:06 #1379 [verbose] > │ if v7 then │
00:02:06 #1380 [verbose] > │ true │
00:02:06 #1381 [verbose] > │ else │
00:02:06 #1382 [verbose] > │ method1(v7) │
00:02:06 #1383 [verbose] > │ let v11 : string = $"__expect / actual: %A{v7} / expected: %A{true}" │
00:02:06 #1384 [verbose] > │ let v12 : bool = v10 = false │
00:02:06 #1385 [verbose] > │ if v12 then │
00:02:06 #1386 [verbose] > │ failwith<unit> v11 │
00:02:06 #1387 [verbose] > │ method0() │
00:02:06 #1388 [verbose] > │ │
00:02:06 #1389 [verbose] > │ │
00:02:06 #1390 [verbose] > │ .rs: │
00:02:06 #1391 [verbose] > │ #![allow(dead_code,)] │
00:02:06 #1392 [verbose] > │ #![allow(non_camel_case_types,)] │
00:02:06 #1393 [verbose] > │ #![allow(non_snake_case,)] │
00:02:06 #1394 [verbose] > │ #![allow(non_upper_case_globals,)] │
00:02:06 #1395 [verbose] > │ #![allow(unreachable_code,)] │
00:02:06 #1396 [verbose] > │ #![allow(unused_attributes,)] │
00:02:06 #1397 [verbose] > │ #![allow(unused_imports,)] │
00:02:06 #1398 [verbose] > │ #![allow(unused_macros,)] │
00:02:06 #1399 [verbose] > │ #![allow(unused_parens,)] │
00:02:06 #1400 [verbose] > │ #![allow(unused_variables,)] │
00:02:06 #1401 [verbose] > │ mod module_ccfa04bf { │
00:02:06 #1402 [verbose] > │ pub mod Spiral_eval { │
00:02:06 #1403 [verbose] > │ use super::*; │
00:02:06 #1404 [verbose] > │ use fable_library_rust::Native_::MutCell; │
00:02:06 #1405 [verbose] > │ use fable_library_rust::Native_::on_startup; │
00:02:06 #1406 [verbose] > │ use fable_library_rust::Option_::getValue; │
00:02:06 #1407 [verbose] > │ use fable_library_rust::String_::printfn; │
00:02:06 #1408 [verbose] > │ use fable_library_rust::String_::sprintf; │
00:02:06 #1409 [verbose] > │ use fable_library_rust::String_::string; │
00:02:06 #1410 [verbose] > │ pub fn method1(v0: bool) -> bool { v0 } │
00:02:06 #1411 [verbose] > │ pub fn method0() { │
00:02:06 #1412 [verbose] > │ let _v0: MutCell<Option<u8>> = MutCell::new(None::<u8>); │
00:02:06 #1413 [verbose] > │ _v0.set(Some(1_u8)); │
00:02:06 #1414 [verbose] > │ { │
00:02:06 #1415 [verbose] > │ let v7: bool = 1_u8 == getValue(_v0.get().clone()); │
00:02:06 #1416 [verbose] > │ let v8: string = sprintf!("{:?}", v7); │
00:02:06 #1417 [verbose] > │ printfn!("{0}", v8); │
00:02:06 #1418 [verbose] > │ if (if v7 { true } else { Spiral_eval::method1(v7) }) == │
00:02:06 #1419 [verbose] > │ false │
00:02:06 #1420 [verbose] > │ { │
00:02:06 #1421 [verbose] > │ panic!("{}", │
00:02:06 #1422 [verbose] > │ sprintf!("__expect / actual: {:?} / expected: │
00:02:06 #1423 [verbose] > │ {:?}", v7, true)); │
00:02:06 #1424 [verbose] > │ } │
00:02:06 #1425 [verbose] > │ } │
00:02:06 #1426 [verbose] > │ } │
00:02:06 #1427 [verbose] > │ on_startup!(Spiral_eval::method0()); │
00:02:06 #1428 [verbose] > │ } │
00:02:06 #1429 [verbose] > │ } │
00:02:06 #1430 [verbose] > │ pub use module_ccfa04bf::*; │
00:02:06 #1431 [verbose] > │ │
00:02:06 #1432 [verbose] > │ │
00:02:06 #1433 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:06 #1434 [verbose] >
00:02:06 #1435 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:06 #1436 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:06 #1437 [verbose] > │ ## emit │
00:02:06 #1438 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:06 #1439 [verbose] >
00:02:06 #1440 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:06 #1441 [verbose] > inl emit forall t. (x : t) : t =
00:02:06 #1442 [verbose] > $'!x '
00:02:06 #1443 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d6af4e78ce5ecc51d06898976bbb8ac799e120c89c8e74c2ebb2c1a90b6e26e2\main.spi
00:02:06 #1444 [verbose] >
00:02:06 #1445 [verbose] > ╭─[ 253.87ms - stdout ]────────────────────────────────────────────────────────╮
00:02:06 #1446 [verbose] > │ () │
00:02:06 #1447 [verbose] > │ │
00:02:06 #1448 [verbose] > │ │
00:02:06 #1449 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:06 #1450 [verbose] >
00:02:06 #1451 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:06 #1452 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:06 #1453 [verbose] > │ ## upcast │
00:02:06 #1454 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:06 #1455 [verbose] >
00:02:06 #1456 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:06 #1457 [verbose] > inl upcast forall t u. (x : t) : u =
00:02:06 #1458 [verbose] > $'!x :> `u '
00:02:07 #1459 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\17df11e2cb97e87f5dd8ed862fbf632148993da84bd2a773146b524174642cd3\main.spi
00:02:07 #1460 [verbose] >
00:02:07 #1461 [verbose] > ╭─[ 312.81ms - stdout ]────────────────────────────────────────────────────────╮
00:02:07 #1462 [verbose] > │ () │
00:02:07 #1463 [verbose] > │ │
00:02:07 #1464 [verbose] > │ │
00:02:07 #1465 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:07 #1466 [verbose] >
00:02:07 #1467 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:07 #1468 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:07 #1469 [verbose] > │ ## downcast │
00:02:07 #1470 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:07 #1471 [verbose] >
00:02:07 #1472 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:07 #1473 [verbose] > inl downcast forall t u. (x : t) : u =
00:02:07 #1474 [verbose] > $'!x :?> `u '
00:02:07 #1475 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3a34eabbd71db3e0beae1b4e52b1271da0008e4c5415bac7dd1643852f5e8323\main.spi
00:02:07 #1476 [verbose] >
00:02:07 #1477 [verbose] > ╭─[ 309.21ms - stdout ]────────────────────────────────────────────────────────╮
00:02:07 #1478 [verbose] > │ () │
00:02:07 #1479 [verbose] > │ │
00:02:07 #1480 [verbose] > │ │
00:02:07 #1481 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:07 #1482 [verbose] >
00:02:07 #1483 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:07 #1484 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:07 #1485 [verbose] > │ ## unativeint │
00:02:07 #1486 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:07 #1487 [verbose] >
00:02:07 #1488 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:07 #1489 [verbose] > nominal unativeint = $"unativeint"
00:02:07 #1490 [verbose] >
00:02:07 #1491 [verbose] > inl unativeint forall t {int}. (n : t) : unativeint =
00:02:07 #1492 [verbose] > $"unativeint !n"
00:02:07 #1493 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\4ab4976e65e83f0339bfafd322c1ff02c83167dfc6126936126bf4f63c6150b6\main.spi
00:02:07 #1494 [verbose] >
00:02:07 #1495 [verbose] > ╭─[ 392.84ms - stdout ]────────────────────────────────────────────────────────╮
00:02:07 #1496 [verbose] > │ () │
00:02:07 #1497 [verbose] > │ │
00:02:07 #1498 [verbose] > │ │
00:02:07 #1499 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:07 #1500 [verbose] >
00:02:07 #1501 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:07 #1502 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:07 #1503 [verbose] > │ ## pair │
00:02:07 #1504 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:07 #1505 [verbose] >
00:02:07 #1506 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:07 #1507 [verbose] > // // test
00:02:07 #1508 [verbose] >
00:02:07 #1509 [verbose] > pair 1i32 2i32
00:02:07 #1510 [verbose] > |> _assert_eq (1, 2)
00:02:08 #1511 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2316a242aab9ba1d7dba01799d9d08a18017850fbddae562d274f2d815951efe\main.spi
00:02:08 #1512 [verbose] >
00:02:08 #1513 [verbose] > ╭─[ 478.90ms - stdout ]────────────────────────────────────────────────────────╮
00:02:08 #1514 [verbose] > │ let rec method0 () : unit = │
00:02:08 #1515 [verbose] > │ let v0 : string = $"%A{struct (1, 2)}" │
00:02:08 #1516 [verbose] > │ System.Console.WriteLine v0 │
00:02:08 #1517 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (1, 2)} / expected: │
00:02:08 #1518 [verbose] > │ %A{struct (1, 2)}" │
00:02:08 #1519 [verbose] > │ () │
00:02:08 #1520 [verbose] > │ method0() │
00:02:08 #1521 [verbose] > │ │
00:02:08 #1522 [verbose] > │ struct (1, 2) │
00:02:08 #1523 [verbose] > │ │
00:02:08 #1524 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:08 #1525 [verbose] >
00:02:08 #1526 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:08 #1527 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:08 #1528 [verbose] > │ ## new_pair │
00:02:08 #1529 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:08 #1530 [verbose] >
00:02:08 #1531 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:08 #1532 [verbose] > inl new_pair forall a b. (a : a) (b : b) : pair a b =
00:02:08 #1533 [verbose] > $"!a, !b"
00:02:08 #1534 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5aa21e4dcc14b22aa1db21ceef38835205b3adad44918d773c725fa2743775c5\main.spi
00:02:08 #1535 [verbose] >
00:02:08 #1536 [verbose] > ╭─[ 357.29ms - stdout ]────────────────────────────────────────────────────────╮
00:02:08 #1537 [verbose] > │ () │
00:02:08 #1538 [verbose] > │ │
00:02:08 #1539 [verbose] > │ │
00:02:08 #1540 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:08 #1541 [verbose] >
00:02:08 #1542 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:08 #1543 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:08 #1544 [verbose] > │ ## from_pair │
00:02:08 #1545 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:08 #1546 [verbose] >
00:02:08 #1547 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:08 #1548 [verbose] > inl from_pair forall a b. (pair : pair a b) : a * b =
00:02:08 #1549 [verbose] > $"let (a, b) = !pair"
00:02:08 #1550 [verbose] > $"a", $"b"
00:02:08 #1551 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\039d609972d20002d43f1333bed814c5756f7c7d07987608bdaf5c0ccd25711c\main.spi
00:02:09 #1552 [verbose] >
00:02:09 #1553 [verbose] > ╭─[ 326.18ms - stdout ]────────────────────────────────────────────────────────╮
00:02:09 #1554 [verbose] > │ () │
00:02:09 #1555 [verbose] > │ │
00:02:09 #1556 [verbose] > │ │
00:02:09 #1557 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:09 #1558 [verbose] >
00:02:09 #1559 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:09 #1560 [verbose] > // // test
00:02:09 #1561 [verbose] >
00:02:09 #1562 [verbose] > new_pair "a" 1i32
00:02:09 #1563 [verbose] > |> from_pair
00:02:09 #1564 [verbose] > |> _assert_eq ("a", 1i32)
00:02:09 #1565 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\32bc3e502a58514b0b2b3f1020e9e1a0cf0cc595d7d3c3d8a2640560da7cf1fa\main.spi
00:02:09 #1566 [verbose] >
00:02:09 #1567 [verbose] > ╭─[ 346.73ms - stdout ]────────────────────────────────────────────────────────╮
00:02:09 #1568 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:02:09 #1569 [verbose] > │ v0 │
00:02:09 #1570 [verbose] > │ and method0 () : unit = │
00:02:09 #1571 [verbose] > │ let v0 : string = "a" │
00:02:09 #1572 [verbose] > │ let v1 : (string * int32) = v0, 1 │
00:02:09 #1573 [verbose] > │ let (a, b) = v1 │
00:02:09 #1574 [verbose] > │ let v2 : string = a │
00:02:09 #1575 [verbose] > │ let v3 : int32 = b │
00:02:09 #1576 [verbose] > │ let v4 : string = $"%A{struct (v2, v3)}" │
00:02:09 #1577 [verbose] > │ System.Console.WriteLine v4 │
00:02:09 #1578 [verbose] > │ let v5 : bool = v2 = "a" │
00:02:09 #1579 [verbose] > │ let v7 : bool = │
00:02:09 #1580 [verbose] > │ if v5 then │
00:02:09 #1581 [verbose] > │ let v6 : bool = v3 = 1 │
00:02:09 #1582 [verbose] > │ v6 │
00:02:09 #1583 [verbose] > │ else │
00:02:09 #1584 [verbose] > │ false │
00:02:09 #1585 [verbose] > │ let v9 : bool = │
00:02:09 #1586 [verbose] > │ if v7 then │
00:02:09 #1587 [verbose] > │ true │
00:02:09 #1588 [verbose] > │ else │
00:02:09 #1589 [verbose] > │ method1(v7) │
00:02:09 #1590 [verbose] > │ let v10 : string = $"__expect / actual: %A{struct (v2, v3)} / expected: │
00:02:09 #1591 [verbose] > │ %A{struct (v0, 1)}" │
00:02:09 #1592 [verbose] > │ let v11 : bool = v9 = false │
00:02:09 #1593 [verbose] > │ if v11 then │
00:02:09 #1594 [verbose] > │ failwith<unit> v10 │
00:02:09 #1595 [verbose] > │ method0() │
00:02:09 #1596 [verbose] > │ │
00:02:09 #1597 [verbose] > │ struct ("a", 1) │
00:02:09 #1598 [verbose] > │ │
00:02:09 #1599 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:09 #1600 [verbose] >
00:02:09 #1601 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:09 #1602 [verbose] > // // test
00:02:09 #1603 [verbose] >
00:02:09 #1604 [verbose] > new_pair "a" (new_pair 1i32 "b")
00:02:09 #1605 [verbose] > |> from_pair
00:02:09 #1606 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0338c252ed9cd197f08d50dde79c979d41fe0327e9fa5a3e294fc1492d64d7c3\main.spi
00:02:09 #1607 [verbose] >
00:02:09 #1608 [verbose] > ╭─[ 471.01ms - return value ]──────────────────────────────────────────────────╮
00:02:09 #1609 [verbose] > │ <details open="open" class="dni-treeview"><summary><span │
00:02:09 #1610 [verbose] > │ class="dni-code-hint"><code>(a, (1, │
00:02:09 #1611 [verbose] > │ b))</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><t │
00:02:09 #1612 [verbose] > │ d>Item1</td><td><div │
00:02:09 #1613 [verbose] > │ class="dni-plaintext"><pre>a</pre></div></td></tr><tr><td>Item2</td><td><det │
00:02:09 #1614 [verbose] > │ ails class="dni-treeview"><summary><span class="dni-code-hint"><code>(1, │
00:02:09 #1615 [verbose] > │ b)</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │
00:02:09 #1616 [verbose] > │ >Item1</td><td><div │
00:02:09 #1617 [verbose] > │ class="dni-plaintext"><pre>1</pre></div></td></tr><tr><td>Item2</td><td><div │
00:02:09 #1618 [verbose] > │ class="dni-plaintext"><pre>b</pre></div></td></tr></tbody></table></div></de │
00:02:09 #1619 [verbose] > │ tails></td></tr></tbody></table></div></details><style> │
00:02:09 #1620 [verbose] > │ .dni-code-hint { │
00:02:09 #1621 [verbose] > │ font-style: italic; │
00:02:09 #1622 [verbose] > │ overflow: hidden; │
00:02:09 #1623 [verbose] > │ white-space: nowrap; │
00:02:09 #1624 [verbose] > │ } │
00:02:09 #1625 [verbose] > │ .dni-treev... │
00:02:09 #1626 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:09 #1627 [verbose] >
00:02:09 #1628 [verbose] > ╭─[ 496.74ms - stdout ]────────────────────────────────────────────────────────╮
00:02:09 #1629 [verbose] > │ let rec method0 () : struct (string * (int32 * string)) = │
00:02:09 #1630 [verbose] > │ let v0 : string = "b" │
00:02:09 #1631 [verbose] > │ let v1 : (int32 * string) = 1, v0 │
00:02:09 #1632 [verbose] > │ let v2 : string = "a" │
00:02:09 #1633 [verbose] > │ let v3 : (string * (int32 * string)) = v2, v1 │
00:02:09 #1634 [verbose] > │ let (a, b) = v3 │
00:02:09 #1635 [verbose] > │ let v4 : string = a │
00:02:09 #1636 [verbose] > │ let v5 : (int32 * string) = b │
00:02:09 #1637 [verbose] > │ struct (v4, v5) │
00:02:09 #1638 [verbose] > │ method0() │
00:02:09 #1639 [verbose] > │ │
00:02:09 #1640 [verbose] > │ │
00:02:09 #1641 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:09 #1642 [verbose] >
00:02:09 #1643 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:09 #1644 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:09 #1645 [verbose] > │ ## memoize │
00:02:09 #1646 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:09 #1647 [verbose] >
00:02:09 #1648 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:09 #1649 [verbose] > nominal lazy t = $'Lazy<`t>'
00:02:09 #1650 [verbose] >
00:02:09 #1651 [verbose] > inl memoize forall t. (fn : () -> t) : () -> t =
00:02:09 #1652 [verbose] > inl fn = join fn
00:02:09 #1653 [verbose] > inl result : lazy t = $'lazy !fn ()'
00:02:09 #1654 [verbose] > fun () => $'!result.Value'
00:02:10 #1655 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\06e3013e7e9d52b15ef2fb72694767c73fbf6d009320a46076c97dba43dd910c\main.spi
00:02:10 #1656 [verbose] >
00:02:10 #1657 [verbose] > ╭─[ 316.79ms - stdout ]────────────────────────────────────────────────────────╮
00:02:10 #1658 [verbose] > │ () │
00:02:10 #1659 [verbose] > │ │
00:02:10 #1660 [verbose] > │ │
00:02:10 #1661 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:10 #1662 [verbose] >
00:02:10 #1663 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:10 #1664 [verbose] > // // test
00:02:10 #1665 [verbose] >
00:02:10 #1666 [verbose] > inl count = mut 0i32
00:02:10 #1667 [verbose] > inl add =
00:02:10 #1668 [verbose] > fun () => count <- *count + 1
00:02:10 #1669 [verbose] > |> memoize
00:02:10 #1670 [verbose] >
00:02:10 #1671 [verbose] > add ()
00:02:10 #1672 [verbose] > add ()
00:02:10 #1673 [verbose] > add ()
00:02:10 #1674 [verbose] >
00:02:10 #1675 [verbose] > *count
00:02:10 #1676 [verbose] > |> _assert_eq 1
00:02:10 #1677 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0f133ca81ca06619472799a365ed96a17d285786556755c1093cdff0eb55ba11\main.spi
00:02:11 #1678 [verbose] >
00:02:11 #1679 [verbose] > ╭─[ 1.26s - stdout ]───────────────────────────────────────────────────────────╮
00:02:11 #1680 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:02:11 #1681 [verbose] > │ let rec closure0 (v0 : Mut0) () : unit = │
00:02:11 #1682 [verbose] > │ let v1 : int32 = v0.l0 │
00:02:11 #1683 [verbose] > │ let v2 : int32 = v1 + 1 │
00:02:11 #1684 [verbose] > │ v0.l0 <- v2 │
00:02:11 #1685 [verbose] > │ () │
00:02:11 #1686 [verbose] > │ and method1 (v0 : Mut0) : (unit -> unit) = │
00:02:11 #1687 [verbose] > │ closure0(v0) │
00:02:11 #1688 [verbose] > │ and method2 (v0 : bool) : bool = │
00:02:11 #1689 [verbose] > │ v0 │
00:02:11 #1690 [verbose] > │ and method0 () : unit = │
00:02:11 #1691 [verbose] > │ let v0 : Mut0 = {l0 = 0} : Mut0 │
00:02:11 #1692 [verbose] > │ let v1 : (unit -> unit) = method1(v0) │
00:02:11 #1693 [verbose] > │ let v2 : Lazy<unit> = lazy v1 () │
00:02:11 #1694 [verbose] > │ v2.Value │
00:02:11 #1695 [verbose] > │ v2.Value │
00:02:11 #1696 [verbose] > │ v2.Value │
00:02:11 #1697 [verbose] > │ let v3 : int32 = v0.l0 │
00:02:11 #1698 [verbose] > │ let v4 : string = $"%A{v3}" │
00:02:11 #1699 [verbose] > │ System.Console.WriteLine v4 │
00:02:11 #1700 [verbose] > │ let v5 : bool = v3 = 1 │
00:02:11 #1701 [verbose] > │ let v7 : bool = │
00:02:11 #1702 [verbose] > │ if v5 then │
00:02:11 #1703 [verbose] > │ true │
00:02:11 #1704 [verbose] > │ else │
00:02:11 #1705 [verbose] > │ method2(v5) │
00:02:11 #1706 [verbose] > │ let v8 : string = $"__expect / actual: %A{v3} / expected: %A{1}" │
00:02:11 #1707 [verbose] > │ let v9 : bool = v7 = false │
00:02:11 #1708 [verbose] > │ if v9 then │
00:02:11 #1709 [verbose] > │ failwith<unit> v8 │
00:02:11 #1710 [verbose] > │ method0() │
00:02:11 #1711 [verbose] > │ │
00:02:11 #1712 [verbose] > │ 1 │
00:02:11 #1713 [verbose] > │ │
00:02:11 #1714 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:11 #1715 [verbose] >
00:02:11 #1716 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:11 #1717 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:11 #1718 [verbose] > │ ## to_any │
00:02:11 #1719 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:11 #1720 [verbose] >
00:02:11 #1721 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:11 #1722 [verbose] > inl to_any forall t. (obj : t) : any =
00:02:11 #1723 [verbose] > $"!obj"
00:02:11 #1724 [verbose] >
00:02:11 #1725 [verbose] > instance (~:>) any = to_any
00:02:11 #1726 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\49bf8f1488640d3ba8e3356b55086139475ded615eeb379e1b8dff561dbe53b0\main.spi
00:02:12 #1727 [verbose] >
00:02:12 #1728 [verbose] > ╭─[ 446.40ms - stdout ]────────────────────────────────────────────────────────╮
00:02:12 #1729 [verbose] > │ () │
00:02:12 #1730 [verbose] > │ │
00:02:12 #1731 [verbose] > │ │
00:02:12 #1732 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:12 #1733 [verbose] >
00:02:12 #1734 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:12 #1735 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:12 #1736 [verbose] > │ ## unbox │
00:02:12 #1737 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:12 #1738 [verbose] >
00:02:12 #1739 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:12 #1740 [verbose] > inl unbox forall t u. (x : t) : u =
00:02:12 #1741 [verbose] > $"!x |> unbox<`u>"
00:02:12 #1742 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\dd673061e0a4fe0d2c873626bced8f4a3ac4b256df9ac8f7a6c14b7936c72ad1\main.spi
00:02:12 #1743 [verbose] >
00:02:12 #1744 [verbose] > ╭─[ 473.36ms - stdout ]────────────────────────────────────────────────────────╮
00:02:12 #1745 [verbose] > │ () │
00:02:12 #1746 [verbose] > │ │
00:02:12 #1747 [verbose] > │ │
00:02:12 #1748 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:12 #1749 [verbose] >
00:02:12 #1750 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:12 #1751 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:12 #1752 [verbose] > │ ## (+.) │
00:02:12 #1753 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:12 #1754 [verbose] >
00:02:12 #1755 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:12 #1756 [verbose] > inl (+.) forall t. (a : t) (b : t) : t =
00:02:12 #1757 [verbose] > $"!a + !b"
00:02:12 #1758 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c951d6fa2559e8f0c33032005d3289f13a5b4f2a3c04afaae355a4ef257bdb48\main.spi
00:02:13 #1759 [verbose] >
00:02:13 #1760 [verbose] > ╭─[ 817.87ms - stdout ]────────────────────────────────────────────────────────╮
00:02:13 #1761 [verbose] > │ () │
00:02:13 #1762 [verbose] > │ │
00:02:13 #1763 [verbose] > │ │
00:02:13 #1764 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:13 #1765 [verbose] >
00:02:13 #1766 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:13 #1767 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:13 #1768 [verbose] > │ ## (-.) │
00:02:13 #1769 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:13 #1770 [verbose] >
00:02:13 #1771 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:13 #1772 [verbose] > inl (-.) forall t. (a : t) (b : t) : t =
00:02:13 #1773 [verbose] > $"!a - !b"
00:02:13 #1774 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\14db6d3f12c16b9ff8f23ee1a40e19b75aef9f742b2c3e304f50a6c597343621\main.spi
00:02:13 #1775 [verbose] >
00:02:13 #1776 [verbose] > ╭─[ 393.56ms - stdout ]────────────────────────────────────────────────────────╮
00:02:13 #1777 [verbose] > │ () │
00:02:13 #1778 [verbose] > │ │
00:02:13 #1779 [verbose] > │ │
00:02:13 #1780 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:13 #1781 [verbose] >
00:02:13 #1782 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:13 #1783 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:13 #1784 [verbose] > │ ## (*.) │
00:02:13 #1785 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:13 #1786 [verbose] >
00:02:13 #1787 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:13 #1788 [verbose] > inl (*.) forall t. (a : t) (b : t) : t =
00:02:13 #1789 [verbose] > $"!a * !b"
00:02:14 #1790 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\eb969a559e490080642c57264fa13faf6b2919034530699278190d4038498209\main.spi
00:02:14 #1791 [verbose] >
00:02:14 #1792 [verbose] > ╭─[ 414.30ms - stdout ]────────────────────────────────────────────────────────╮
00:02:14 #1793 [verbose] > │ () │
00:02:14 #1794 [verbose] > │ │
00:02:14 #1795 [verbose] > │ │
00:02:14 #1796 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:14 #1797 [verbose] >
00:02:14 #1798 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:14 #1799 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:14 #1800 [verbose] > │ ## (/.) │
00:02:14 #1801 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:14 #1802 [verbose] >
00:02:14 #1803 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:14 #1804 [verbose] > inl (/.) forall t. (a : t) (b : t) : t =
00:02:14 #1805 [verbose] > $"!a / !b"
00:02:14 #1806 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1cead580851a0552fdbe496cc75a72851b3df9abc4b23856e1a8947d40a73ff6\main.spi
00:02:14 #1807 [verbose] >
00:02:14 #1808 [verbose] > ╭─[ 257.54ms - stdout ]────────────────────────────────────────────────────────╮
00:02:14 #1809 [verbose] > │ () │
00:02:14 #1810 [verbose] > │ │
00:02:14 #1811 [verbose] > │ │
00:02:14 #1812 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:14 #1813 [verbose] >
00:02:14 #1814 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:14 #1815 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:14 #1816 [verbose] > │ ## (=.) │
00:02:14 #1817 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:14 #1818 [verbose] >
00:02:14 #1819 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:14 #1820 [verbose] > inl (=.) forall t. (a : t) (b : t) : bool =
00:02:14 #1821 [verbose] > $"!a = !b"
00:02:14 #1822 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\47ae2aa8f356badb0d0677bb6b0923c61e841f88013b17eec7b518302d696072\main.spi
00:02:14 #1823 [verbose] >
00:02:14 #1824 [verbose] > ╭─[ 265.70ms - stdout ]────────────────────────────────────────────────────────╮
00:02:14 #1825 [verbose] > │ () │
00:02:14 #1826 [verbose] > │ │
00:02:14 #1827 [verbose] > │ │
00:02:14 #1828 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:14 #1829 [verbose] >
00:02:14 #1830 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:14 #1831 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:14 #1832 [verbose] > │ ## (||>) │
00:02:14 #1833 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:14 #1834 [verbose] >
00:02:14 #1835 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:14 #1836 [verbose] > inl (||>) (arg1, arg2) fn =
00:02:14 #1837 [verbose] > arg2 |> fn arg1
00:02:14 #1838 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b056d41d3f7b0f9da744568b245242da581901b3c73d5f7102b2c19716a73f6c\main.spi
00:02:15 #1839 [verbose] >
00:02:15 #1840 [verbose] > ╭─[ 273.36ms - stdout ]────────────────────────────────────────────────────────╮
00:02:15 #1841 [verbose] > │ () │
00:02:15 #1842 [verbose] > │ │
00:02:15 #1843 [verbose] > │ │
00:02:15 #1844 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:15 #1845 [verbose] >
00:02:15 #1846 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:15 #1847 [verbose] > // // test
00:02:15 #1848 [verbose] >
00:02:15 #1849 [verbose] > (3i32, 2i32)
00:02:15 #1850 [verbose] > ||> fun a b => a - b
00:02:15 #1851 [verbose] > |> _assert_eq 1
00:02:15 #1852 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\746a15bb900f67f10eee84b89b06cd1197f5d4e5aff4b79631f27d7746e410f8\main.spi
00:02:15 #1853 [verbose] >
00:02:15 #1854 [verbose] > ╭─[ 368.59ms - stdout ]────────────────────────────────────────────────────────╮
00:02:15 #1855 [verbose] > │ let rec method0 () : unit = │
00:02:15 #1856 [verbose] > │ let v0 : string = $"%A{1}" │
00:02:15 #1857 [verbose] > │ System.Console.WriteLine v0 │
00:02:15 #1858 [verbose] > │ let v1 : string = $"__expect / actual: %A{1} / expected: %A{1}" │
00:02:15 #1859 [verbose] > │ () │
00:02:15 #1860 [verbose] > │ method0() │
00:02:15 #1861 [verbose] > │ │
00:02:15 #1862 [verbose] > │ 1 │
00:02:15 #1863 [verbose] > │ │
00:02:15 #1864 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:15 #1865 [verbose] >
00:02:15 #1866 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:15 #1867 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:15 #1868 [verbose] > │ ## flip │
00:02:15 #1869 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:15 #1870 [verbose] >
00:02:15 #1871 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:15 #1872 [verbose] > inl flip fn a b =
00:02:15 #1873 [verbose] > fn b a
00:02:15 #1874 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ff5e9ebc69af64a03b25833b73de5b5743686632c43809f0235f73d135897d74\main.spi
00:02:15 #1875 [verbose] >
00:02:15 #1876 [verbose] > ╭─[ 422.70ms - stdout ]────────────────────────────────────────────────────────╮
00:02:15 #1877 [verbose] > │ () │
00:02:15 #1878 [verbose] > │ │
00:02:15 #1879 [verbose] > │ │
00:02:15 #1880 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:15 #1881 [verbose] >
00:02:15 #1882 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:15 #1883 [verbose] > // // test
00:02:15 #1884 [verbose] >
00:02:15 #1885 [verbose] > (1i32, 2i32)
00:02:15 #1886 [verbose] > ||> flip pair
00:02:15 #1887 [verbose] > |> _assert_eq (2, 1)
00:02:16 #1888 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\4ecbf31374278018b9fb7b818a7877942f0b81f9ed3002b378dc922851b23c6c\main.spi
00:02:16 #1889 [verbose] >
00:02:16 #1890 [verbose] > ╭─[ 563.75ms - stdout ]────────────────────────────────────────────────────────╮
00:02:16 #1891 [verbose] > │ let rec method0 () : unit = │
00:02:16 #1892 [verbose] > │ let v0 : string = $"%A{struct (2, 1)}" │
00:02:16 #1893 [verbose] > │ System.Console.WriteLine v0 │
00:02:16 #1894 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (2, 1)} / expected: │
00:02:16 #1895 [verbose] > │ %A{struct (2, 1)}" │
00:02:16 #1896 [verbose] > │ () │
00:02:16 #1897 [verbose] > │ method0() │
00:02:16 #1898 [verbose] > │ │
00:02:16 #1899 [verbose] > │ struct (2, 1) │
00:02:16 #1900 [verbose] > │ │
00:02:16 #1901 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:16 #1902 [verbose] >
00:02:16 #1903 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:16 #1904 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:16 #1905 [verbose] > │ ## join_body │
00:02:16 #1906 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:16 #1907 [verbose] >
00:02:16 #1908 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:16 #1909 [verbose] > inl join_body body acc x =
00:02:16 #1910 [verbose] > if var_is x |> not
00:02:16 #1911 [verbose] > then body acc x
00:02:16 #1912 [verbose] > else
00:02:16 #1913 [verbose] > inl acc = dyn acc
00:02:16 #1914 [verbose] > join body acc x
00:02:16 #1915 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\059c18178c95d02e624a649bd2e0e7b4dc43ded00aa3178749045092cc70e59c\main.spi
00:02:16 #1916 [verbose] >
00:02:16 #1917 [verbose] > ╭─[ 438.48ms - stdout ]────────────────────────────────────────────────────────╮
00:02:16 #1918 [verbose] > │ () │
00:02:17 #1919 [verbose] > │ │
00:02:17 #1920 [verbose] > │ │
00:02:17 #1921 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:17 #1922 [verbose] >
00:02:17 #1923 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:17 #1924 [verbose] > // // test
00:02:17 #1925 [verbose] >
00:02:17 #1926 [verbose] > inl rec fold_list f s = function
00:02:17 #1927 [verbose] > | Cons (x, x') => fold_list f (f s x) x'
00:02:17 #1928 [verbose] > | Nil => s
00:02:17 #1929 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1ff30cec6c48e049fe7264b776cd569bd76bbf5f302a5738e6d18f9049100e99\main.spi
00:02:17 #1930 [verbose] >
00:02:17 #1931 [verbose] > ╭─[ 411.63ms - stdout ]────────────────────────────────────────────────────────╮
00:02:17 #1932 [verbose] > │ () │
00:02:17 #1933 [verbose] > │ │
00:02:17 #1934 [verbose] > │ │
00:02:17 #1935 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:17 #1936 [verbose] >
00:02:17 #1937 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:17 #1938 [verbose] > // // test
00:02:17 #1939 [verbose] >
00:02:17 #1940 [verbose] > [[ 5i32; 4; join 3; 2; 1 ]]
00:02:17 #1941 [verbose] > |> fold_list (+) 0
00:02:17 #1942 [verbose] > |> _assert_eq 15
00:02:17 #1943 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\330bb30be2656f3acde19c97ec2616896a3afd873b249a4bbc064b50cac0cca9\main.spi
00:02:17 #1944 [verbose] >
00:02:17 #1945 [verbose] > ╭─[ 475.30ms - stdout ]────────────────────────────────────────────────────────╮
00:02:17 #1946 [verbose] > │ let rec method1 () : int32 = │
00:02:17 #1947 [verbose] > │ 3 │
00:02:17 #1948 [verbose] > │ and method2 (v0 : bool) : bool = │
00:02:17 #1949 [verbose] > │ v0 │
00:02:17 #1950 [verbose] > │ and method0 () : unit = │
00:02:17 #1951 [verbose] > │ let v0 : int32 = method1() │
00:02:17 #1952 [verbose] > │ let v1 : int32 = 9 + v0 │
00:02:17 #1953 [verbose] > │ let v2 : int32 = v1 + 2 │
00:02:17 #1954 [verbose] > │ let v3 : int32 = v2 + 1 │
00:02:17 #1955 [verbose] > │ let v4 : string = $"%A{v3}" │
00:02:17 #1956 [verbose] > │ System.Console.WriteLine v4 │
00:02:17 #1957 [verbose] > │ let v5 : bool = v3 = 15 │
00:02:17 #1958 [verbose] > │ let v7 : bool = │
00:02:17 #1959 [verbose] > │ if v5 then │
00:02:17 #1960 [verbose] > │ true │
00:02:17 #1961 [verbose] > │ else │
00:02:17 #1962 [verbose] > │ method2(v5) │
00:02:17 #1963 [verbose] > │ let v8 : string = $"__expect / actual: %A{v3} / expected: %A{15}" │
00:02:17 #1964 [verbose] > │ let v9 : bool = v7 = false │
00:02:17 #1965 [verbose] > │ if v9 then │
00:02:17 #1966 [verbose] > │ failwith<unit> v8 │
00:02:17 #1967 [verbose] > │ method0() │
00:02:17 #1968 [verbose] > │ │
00:02:17 #1969 [verbose] > │ 15 │
00:02:17 #1970 [verbose] > │ │
00:02:17 #1971 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:17 #1972 [verbose] >
00:02:17 #1973 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:17 #1974 [verbose] > // // test
00:02:17 #1975 [verbose] >
00:02:17 #1976 [verbose] > [[ 5i32; 4; join 3; 2; 1 ]]
00:02:17 #1977 [verbose] > |> fold_list (join_body (+)) 0
00:02:17 #1978 [verbose] > |> _assert_eq 15
00:02:18 #1979 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d147b07006c1b5046a5e85f29a16de2a855c96e80b8c523a2d8a4f05d6075f0c\main.spi
00:02:18 #1980 [verbose] >
00:02:18 #1981 [verbose] > ╭─[ 296.57ms - stdout ]────────────────────────────────────────────────────────╮
00:02:18 #1982 [verbose] > │ let rec method1 () : int32 = │
00:02:18 #1983 [verbose] > │ 3 │
00:02:18 #1984 [verbose] > │ and method2 (v0 : int32, v1 : int32) : int32 = │
00:02:18 #1985 [verbose] > │ let v2 : int32 = v1 + v0 │
00:02:18 #1986 [verbose] > │ v2 │
00:02:18 #1987 [verbose] > │ and method3 (v0 : bool) : bool = │
00:02:18 #1988 [verbose] > │ v0 │
00:02:18 #1989 [verbose] > │ and method0 () : unit = │
00:02:18 #1990 [verbose] > │ let v0 : int32 = method1() │
00:02:18 #1991 [verbose] > │ let v1 : int32 = 9 │
00:02:18 #1992 [verbose] > │ let v2 : int32 = method2(v0, v1) │
00:02:18 #1993 [verbose] > │ let v3 : int32 = v2 + 2 │
00:02:18 #1994 [verbose] > │ let v4 : int32 = v3 + 1 │
00:02:18 #1995 [verbose] > │ let v5 : string = $"%A{v4}" │
00:02:18 #1996 [verbose] > │ System.Console.WriteLine v5 │
00:02:18 #1997 [verbose] > │ let v6 : bool = v4 = 15 │
00:02:18 #1998 [verbose] > │ let v8 : bool = │
00:02:18 #1999 [verbose] > │ if v6 then │
00:02:18 #2000 [verbose] > │ true │
00:02:18 #2001 [verbose] > │ else │
00:02:18 #2002 [verbose] > │ method3(v6) │
00:02:18 #2003 [verbose] > │ let v9 : string = $"__expect / actual: %A{v4} / expected: %A{15}" │
00:02:18 #2004 [verbose] > │ let v10 : bool = v8 = false │
00:02:18 #2005 [verbose] > │ if v10 then │
00:02:18 #2006 [verbose] > │ failwith<unit> v9 │
00:02:18 #2007 [verbose] > │ method0() │
00:02:18 #2008 [verbose] > │ │
00:02:18 #2009 [verbose] > │ 15 │
00:02:18 #2010 [verbose] > │ │
00:02:18 #2011 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:18 #2012 [verbose] >
00:02:18 #2013 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:18 #2014 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:18 #2015 [verbose] > │ ## join_body_unit │
00:02:18 #2016 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:18 #2017 [verbose] >
00:02:18 #2018 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:18 #2019 [verbose] > inl join_body_unit body d x =
00:02:18 #2020 [verbose] > if var_is d |> not
00:02:18 #2021 [verbose] > then body x
00:02:18 #2022 [verbose] > else
00:02:18 #2023 [verbose] > inl x = dyn x
00:02:18 #2024 [verbose] > join body x
00:02:18 #2025 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\962950750038639d396f912fd5f5dff8c8614d78f5a56cbd8d3d074b34ce6863\main.spi
00:02:18 #2026 [verbose] >
00:02:18 #2027 [verbose] > ╭─[ 435.75ms - stdout ]────────────────────────────────────────────────────────╮
00:02:18 #2028 [verbose] > │ () │
00:02:18 #2029 [verbose] > │ │
00:02:18 #2030 [verbose] > │ │
00:02:18 #2031 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:18 #2032 [verbose] >
00:02:18 #2033 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:18 #2034 [verbose] > // // test
00:02:18 #2035 [verbose] >
00:02:18 #2036 [verbose] > [[ 5i32; 4; join 3; 2; 1 ]]
00:02:18 #2037 [verbose] > |> fold_list (fun acc n => join_body_unit ((+) acc) n n) 0
00:02:18 #2038 [verbose] > |> _assert_eq 15
00:02:18 #2039 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a1c1e24569460d5b7d69f4470775b2ff9a65363acd34a42d4ba04170b53eae57\main.spi
00:02:19 #2040 [verbose] >
00:02:19 #2041 [verbose] > ╭─[ 380.25ms - stdout ]────────────────────────────────────────────────────────╮
00:02:19 #2042 [verbose] > │ let rec method1 () : int32 = │
00:02:19 #2043 [verbose] > │ 3 │
00:02:19 #2044 [verbose] > │ and method2 (v0 : int32) : int32 = │
00:02:19 #2045 [verbose] > │ let v1 : int32 = 9 + v0 │
00:02:19 #2046 [verbose] > │ v1 │
00:02:19 #2047 [verbose] > │ and method3 (v0 : bool) : bool = │
00:02:19 #2048 [verbose] > │ v0 │
00:02:19 #2049 [verbose] > │ and method0 () : unit = │
00:02:19 #2050 [verbose] > │ let v0 : int32 = method1() │
00:02:19 #2051 [verbose] > │ let v1 : int32 = method2(v0) │
00:02:19 #2052 [verbose] > │ let v2 : int32 = v1 + 2 │
00:02:19 #2053 [verbose] > │ let v3 : int32 = v2 + 1 │
00:02:19 #2054 [verbose] > │ let v4 : string = $"%A{v3}" │
00:02:19 #2055 [verbose] > │ System.Console.WriteLine v4 │
00:02:19 #2056 [verbose] > │ let v5 : bool = v3 = 15 │
00:02:19 #2057 [verbose] > │ let v7 : bool = │
00:02:19 #2058 [verbose] > │ if v5 then │
00:02:19 #2059 [verbose] > │ true │
00:02:19 #2060 [verbose] > │ else │
00:02:19 #2061 [verbose] > │ method3(v5) │
00:02:19 #2062 [verbose] > │ let v8 : string = $"__expect / actual: %A{v3} / expected: %A{15}" │
00:02:19 #2063 [verbose] > │ let v9 : bool = v7 = false │
00:02:19 #2064 [verbose] > │ if v9 then │
00:02:19 #2065 [verbose] > │ failwith<unit> v8 │
00:02:19 #2066 [verbose] > │ method0() │
00:02:19 #2067 [verbose] > │ │
00:02:19 #2068 [verbose] > │ 15 │
00:02:19 #2069 [verbose] > │ │
00:02:19 #2070 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:19 #2071 [verbose] >
00:02:19 #2072 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:19 #2073 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:19 #2074 [verbose] > │ ## nameof │
00:02:19 #2075 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:19 #2076 [verbose] >
00:02:19 #2077 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:19 #2078 [verbose] > inl nameof x : string =
00:02:19 #2079 [verbose] > $"nameof !x"
00:02:19 #2080 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e07911464825228ef3b83bdb991f6cdda280b683c588f12bcebefdf064c0ab93\main.spi
00:02:19 #2081 [verbose] >
00:02:19 #2082 [verbose] > ╭─[ 364.61ms - stdout ]────────────────────────────────────────────────────────╮
00:02:19 #2083 [verbose] > │ () │
00:02:19 #2084 [verbose] > │ │
00:02:19 #2085 [verbose] > │ │
00:02:19 #2086 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:19 #2087 [verbose] >
00:02:19 #2088 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:19 #2089 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:19 #2090 [verbose] > │ ## get_environment_variable │
00:02:19 #2091 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:19 #2092 [verbose] >
00:02:19 #2093 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:19 #2094 [verbose] > inl get_environment_variable (var : string) : string =
00:02:19 #2095 [verbose] > $"System.Environment.GetEnvironmentVariable !var"
00:02:19 #2096 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a9d07879eb4e99046edbbbe978b72fed725fd434c48a9cfe23fc735f03d62161\main.spi
00:02:19 #2097 [verbose] >
00:02:19 #2098 [verbose] > ╭─[ 360.12ms - stdout ]────────────────────────────────────────────────────────╮
00:02:19 #2099 [verbose] > │ () │
00:02:19 #2100 [verbose] > │ │
00:02:19 #2101 [verbose] > │ │
00:02:19 #2102 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:19 #2103 [verbose] >
00:02:19 #2104 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:19 #2105 [verbose] > // // test
00:02:19 #2106 [verbose] >
00:02:19 #2107 [verbose] > fun () => failwith "test"
00:02:19 #2108 [verbose] > |> _throws
00:02:19 #2109 [verbose] > |> optionm.map sm'.format_exception
00:02:19 #2110 [verbose] > |> _assert_eq (Some "System.Exception: test")
00:02:20 #2111 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\fd6a187dc871f7ba2cc8f75c05390105fcfbafb519fcadd7334e024abc5e155c\main.spi
00:02:20 #2112 [verbose] >
00:02:20 #2113 [verbose] > ╭─[ 975.37ms - stdout ]────────────────────────────────────────────────────────╮
00:02:20 #2114 [verbose] > │ type [<Struct>] US0 = │
00:02:20 #2115 [verbose] > │ | US0_0 of f0_0 : exn │
00:02:20 #2116 [verbose] > │ | US0_1 │
00:02:20 #2117 [verbose] > │ and [<Struct>] US1 = │
00:02:20 #2118 [verbose] > │ | US1_0 of f0_0 : string │
00:02:20 #2119 [verbose] > │ | US1_1 │
00:02:20 #2120 [verbose] > │ let rec closure0 () () : unit = │
00:02:20 #2121 [verbose] > │ failwith<unit> "test" │
00:02:20 #2122 [verbose] > │ and closure1 () (v0 : exn) : US0 = │
00:02:20 #2123 [verbose] > │ US0_0(v0) │
00:02:20 #2124 [verbose] > │ and method1 (v0 : bool) : bool = │
00:02:20 #2125 [verbose] > │ v0 │
00:02:20 #2126 [verbose] > │ and method0 () : unit = │
00:02:20 #2127 [verbose] > │ let v0 : (unit -> unit) = closure0() │
00:02:20 #2128 [verbose] > │ let v1 : US0 = US0_1 │
00:02:20 #2129 [verbose] > │ let v2 : (exn -> US0) = closure1() │
00:02:20 #2130 [verbose] > │ let v3 : US0 = try v0 (); v1 with ex -> ex |> v2 │
00:02:20 #2131 [verbose] > │ let v15 : US1 = │
00:02:20 #2132 [verbose] > │ match v3 with │
00:02:20 #2133 [verbose] > │ | US0_1 -> (* None *) │
00:02:20 #2134 [verbose] > │ US1_1 │
00:02:20 #2135 [verbose] > │ | US0_0(v4) -> (* Some *) │
00:02:20 #2136 [verbose] > │ let v5 : string option = None │
00:02:20 #2137 [verbose] > │ let mutable _v5 = v5 │
00:02:20 #2138 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:20 #2139 [verbose] > │ let v6 : string = $"%A{v4}" │
00:02:20 #2140 [verbose] > │ v6 │
00:02:20 #2141 [verbose] > │ #endif │
00:02:20 #2142 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:20 #2143 [verbose] > │ let v7 : string = $"%A{v4}" │
00:02:20 #2144 [verbose] > │ v7 │
00:02:20 #2145 [verbose] > │ #endif │
00:02:20 #2146 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:20 #2147 [verbose] > │ let v8 : string = $"%A{v4}" │
00:02:20 #2148 [verbose] > │ v8 │
00:02:20 #2149 [verbose] > │ #endif │
00:02:20 #2150 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:20 #2151 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:20 #2152 [verbose] > │ let v9 : string = $"{v4.GetType ()}: {v4.Message}" │
00:02:20 #2153 [verbose] > │ v9 │
00:02:20 #2154 [verbose] > │ #endif │
00:02:20 #2155 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:20 #2156 [verbose] > │ let v10 : string = $"%A{v4}" │
00:02:20 #2157 [verbose] > │ v10 │
00:02:20 #2158 [verbose] > │ #endif │
00:02:20 #2159 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:02:20 #2160 [verbose] > │ FABLE_COMPILER_DART │
00:02:20 #2161 [verbose] > │ Unchecked.defaultof<string> │
00:02:20 #2162 [verbose] > │ #endif │
00:02:20 #2163 [verbose] > │ |> fun x -> _v5 <- Some x │
00:02:20 #2164 [verbose] > │ let v11 : string = _v5.Value │
00:02:20 #2165 [verbose] > │ US1_0(v11) │
00:02:20 #2166 [verbose] > │ let v16 : string = $"%A{v15}" │
00:02:20 #2167 [verbose] > │ System.Console.WriteLine v16 │
00:02:20 #2168 [verbose] > │ let v21 : bool = │
00:02:20 #2169 [verbose] > │ match v15 with │
00:02:20 #2170 [verbose] > │ | US1_0(v19) -> (* Some *) │
00:02:20 #2171 [verbose] > │ let v20 : bool = v19 = "System.Exception: test" │
00:02:20 #2172 [verbose] > │ v20 │
00:02:20 #2173 [verbose] > │ | _ -> │
00:02:20 #2174 [verbose] > │ false │
00:02:20 #2175 [verbose] > │ let v23 : bool = │
00:02:20 #2176 [verbose] > │ if v21 then │
00:02:20 #2177 [verbose] > │ true │
00:02:20 #2178 [verbose] > │ else │
00:02:20 #2179 [verbose] > │ method1(v21) │
00:02:20 #2180 [verbose] > │ let v24 : string = "System.Exception: test" │
00:02:20 #2181 [verbose] > │ let v25 : US1 = US1_0(v24) │
00:02:20 #2182 [verbose] > │ let v26 : string = $"__expect / actual: %A{v15} / expected: %A{v25}" │
00:02:20 #2183 [verbose] > │ let v27 : bool = v23 = false │
00:02:20 #2184 [verbose] > │ if v27 then │
00:02:20 #2185 [verbose] > │ failwith<unit> v26 │
00:02:20 #2186 [verbose] > │ method0() │
00:02:20 #2187 [verbose] > │ │
00:02:20 #2188 [verbose] > │ US1_0 "System.Exception: test" │
00:02:20 #2189 [verbose] > │ │
00:02:20 #2190 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:20 #2191 [verbose] >
00:02:20 #2192 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:20 #2193 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:20 #2194 [verbose] > │ ## disposable │
00:02:20 #2195 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:20 #2196 [verbose] >
00:02:20 #2197 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:20 #2198 [verbose] > nominal disposable t = $"System.IDisposable"
00:02:21 #2199 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\690eeae154c159f1e1dd0c1b9c884d48544b4e09dd1c5ddaae555c34e4227ccf\main.spi
00:02:21 #2200 [verbose] >
00:02:21 #2201 [verbose] > ╭─[ 332.93ms - stdout ]────────────────────────────────────────────────────────╮
00:02:21 #2202 [verbose] > │ () │
00:02:21 #2203 [verbose] > │ │
00:02:21 #2204 [verbose] > │ │
00:02:21 #2205 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:21 #2206 [verbose] >
00:02:21 #2207 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:21 #2208 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:21 #2209 [verbose] > │ ## use │
00:02:21 #2210 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:21 #2211 [verbose] >
00:02:21 #2212 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:21 #2213 [verbose] > inl use forall t. (x : t) : t =
00:02:21 #2214 [verbose] > $"use !x = !x " : ()
00:02:21 #2215 [verbose] > $'!x '
00:02:21 #2216 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3a838400f313b549961938137756947452ecccca099e945ea88ada1131e14f5b\main.spi
00:02:21 #2217 [verbose] >
00:02:21 #2218 [verbose] > ╭─[ 232.61ms - stdout ]────────────────────────────────────────────────────────╮
00:02:21 #2219 [verbose] > │ () │
00:02:21 #2220 [verbose] > │ │
00:02:21 #2221 [verbose] > │ │
00:02:21 #2222 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:21 #2223 [verbose] >
00:02:21 #2224 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:21 #2225 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:21 #2226 [verbose] > │ ## dispose │
00:02:21 #2227 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:21 #2228 [verbose] >
00:02:21 #2229 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:21 #2230 [verbose] > inl dispose (disposable : disposable _) : () =
00:02:21 #2231 [verbose] > disposable |> $'_.Dispose()'
00:02:21 #2232 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\7ed07c915829b465a650dcd217d32b5064ffd7f101770f2795a628c0b574db53\main.spi
00:02:21 #2233 [verbose] >
00:02:21 #2234 [verbose] > ╭─[ 322.76ms - stdout ]────────────────────────────────────────────────────────╮
00:02:21 #2235 [verbose] > │ () │
00:02:21 #2236 [verbose] > │ │
00:02:21 #2237 [verbose] > │ │
00:02:21 #2238 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:21 #2239 [verbose] >
00:02:21 #2240 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:21 #2241 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:21 #2242 [verbose] > │ ## new_disposable │
00:02:21 #2243 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:21 #2244 [verbose] >
00:02:21 #2245 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:21 #2246 [verbose] > inl new_disposable (fn : () -> ()) : disposable _ =
00:02:21 #2247 [verbose] > run_target function
00:02:21 #2248 [verbose] > | Fsharp _ => fun () => $'{ new System.IDisposable with member _.Dispose
00:02:21 #2249 [verbose] > () = !fn () }'
00:02:21 #2250 [verbose] > // | Rust _ =>
00:02:21 #2251 [verbose] > // fun () =>
00:02:21 #2252 [verbose] > // $'{ new System.IDisposable with member _.Dispose () =
00:02:21 #2253 [verbose] > Fable.Core.RustInterop.emitRustExpr () "!fn()" }'
00:02:21 #2254 [verbose] > | _ => fun () => null ()
00:02:21 #2255 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5052b341fdff22a3698049bddad0d1fd5243ae165d463d0ef7f34f543f98c678\main.spi
00:02:22 #2256 [verbose] >
00:02:22 #2257 [verbose] > ╭─[ 279.01ms - stdout ]────────────────────────────────────────────────────────╮
00:02:22 #2258 [verbose] > │ () │
00:02:22 #2259 [verbose] > │ │
00:02:22 #2260 [verbose] > │ │
00:02:22 #2261 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:22 #2262 [verbose] >
00:02:22 #2263 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:22 #2264 [verbose] > // // test
00:02:22 #2265 [verbose] >
00:02:22 #2266 [verbose] > inl new_disposable_test = mut 0i32
00:02:22 #2267 [verbose] > new_disposable (fun () => new_disposable_test <- *new_disposable_test + 1)
00:02:22 #2268 [verbose] > |> fun x => x : disposable ()
00:02:22 #2269 [verbose] > |> dispose
00:02:22 #2270 [verbose] > *new_disposable_test |> _assert_eq 1
00:02:22 #2271 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\08a6cdede62167b9613472637daea416978cf1ea42c5bcc844020f5eba4a740b\main.spi
00:02:22 #2272 [verbose] >
00:02:22 #2273 [verbose] > ╭─[ 434.22ms - stdout ]────────────────────────────────────────────────────────╮
00:02:22 #2274 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:02:22 #2275 [verbose] > │ let rec closure0 (v0 : Mut0) () : unit = │
00:02:22 #2276 [verbose] > │ let v1 : int32 = v0.l0 │
00:02:22 #2277 [verbose] > │ let v2 : int32 = v1 + 1 │
00:02:22 #2278 [verbose] > │ v0.l0 <- v2 │
00:02:22 #2279 [verbose] > │ () │
00:02:22 #2280 [verbose] > │ and method1 (v0 : bool) : bool = │
00:02:22 #2281 [verbose] > │ v0 │
00:02:22 #2282 [verbose] > │ and method0 () : unit = │
00:02:22 #2283 [verbose] > │ let v0 : Mut0 = {l0 = 0} : Mut0 │
00:02:22 #2284 [verbose] > │ let v1 : System.IDisposable option = None │
00:02:22 #2285 [verbose] > │ let mutable _v1 = v1 │
00:02:22 #2286 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:22 #2287 [verbose] > │ let v2 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:22 #2288 [verbose] > │ v2 │
00:02:22 #2289 [verbose] > │ #endif │
00:02:22 #2290 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:22 #2291 [verbose] > │ let v3 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:22 #2292 [verbose] > │ v3 │
00:02:22 #2293 [verbose] > │ #endif │
00:02:22 #2294 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:22 #2295 [verbose] > │ let v4 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:22 #2296 [verbose] > │ v4 │
00:02:22 #2297 [verbose] > │ #endif │
00:02:22 #2298 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:22 #2299 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:22 #2300 [verbose] > │ let v5 : (unit -> unit) = closure0(v0) │
00:02:22 #2301 [verbose] > │ let v6 : System.IDisposable = { new System.IDisposable with member │
00:02:22 #2302 [verbose] > │ _.Dispose () = v5 () } │
00:02:22 #2303 [verbose] > │ v6 │
00:02:22 #2304 [verbose] > │ #endif │
00:02:22 #2305 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:22 #2306 [verbose] > │ let v7 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:22 #2307 [verbose] > │ v7 │
00:02:22 #2308 [verbose] > │ #endif │
00:02:22 #2309 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:22 #2310 [verbose] > │ Unchecked.defaultof<System.IDisposable> │
00:02:22 #2311 [verbose] > │ #endif │
00:02:22 #2312 [verbose] > │ |> fun x -> _v1 <- Some x │
00:02:22 #2313 [verbose] > │ let v8 : System.IDisposable = _v1.Value │
00:02:22 #2314 [verbose] > │ let v9 : (System.IDisposable -> unit) = _.Dispose() │
00:02:22 #2315 [verbose] > │ v9 v8 │
00:02:22 #2316 [verbose] > │ let v10 : int32 = v0.l0 │
00:02:22 #2317 [verbose] > │ let v11 : string = $"%A{v10}" │
00:02:22 #2318 [verbose] > │ System.Console.WriteLine v11 │
00:02:22 #2319 [verbose] > │ let v12 : bool = v10 = 1 │
00:02:22 #2320 [verbose] > │ let v14 : bool = │
00:02:22 #2321 [verbose] > │ if v12 then │
00:02:22 #2322 [verbose] > │ true │
00:02:22 #2323 [verbose] > │ else │
00:02:22 #2324 [verbose] > │ method1(v12) │
00:02:22 #2325 [verbose] > │ let v15 : string = $"__expect / actual: %A{v10} / expected: %A{1}" │
00:02:22 #2326 [verbose] > │ let v16 : bool = v14 = false │
00:02:22 #2327 [verbose] > │ if v16 then │
00:02:22 #2328 [verbose] > │ failwith<unit> v15 │
00:02:22 #2329 [verbose] > │ method0() │
00:02:22 #2330 [verbose] > │ │
00:02:22 #2331 [verbose] > │ 1 │
00:02:22 #2332 [verbose] > │ │
00:02:22 #2333 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:22 #2334 [verbose] >
00:02:22 #2335 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:22 #2336 [verbose] > // // test
00:02:22 #2337 [verbose] >
00:02:22 #2338 [verbose] > inl new_disposable_test = mut 0i32
00:02:22 #2339 [verbose] > fun () =>
00:02:22 #2340 [verbose] > new_disposable fun () => new_disposable_test <- *new_disposable_test + 1
00:02:22 #2341 [verbose] > |> fun x => x : disposable ()
00:02:22 #2342 [verbose] > |> use
00:02:22 #2343 [verbose] > |> ignore
00:02:22 #2344 [verbose] > |> return
00:02:22 #2345 [verbose] > |> async.new_task
00:02:22 #2346 [verbose] > |> async.await_task
00:02:22 #2347 [verbose] > |> async.run_synchronously
00:02:22 #2348 [verbose] > *new_disposable_test |> _assert_eq 1
00:02:22 #2349 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2826b4a8571047aa7cddd3330c00b559c79fc8fd01c649eefc957b5256b1a2b0\main.spi
00:02:23 #2350 [verbose] >
00:02:23 #2351 [verbose] > ╭─[ 683.95ms - stdout ]────────────────────────────────────────────────────────╮
00:02:23 #2352 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:02:23 #2353 [verbose] > │ let rec closure0 (v0 : Mut0) () : unit = │
00:02:23 #2354 [verbose] > │ let v1 : int32 = v0.l0 │
00:02:23 #2355 [verbose] > │ let v2 : int32 = v1 + 1 │
00:02:23 #2356 [verbose] > │ v0.l0 <- v2 │
00:02:23 #2357 [verbose] > │ () │
00:02:23 #2358 [verbose] > │ and method1 (v0 : bool) : bool = │
00:02:23 #2359 [verbose] > │ v0 │
00:02:23 #2360 [verbose] > │ and method0 () : unit = │
00:02:23 #2361 [verbose] > │ let v0 : Mut0 = {l0 = 0} : Mut0 │
00:02:23 #2362 [verbose] > │ let v1 : System.Threading.Tasks.Task option = None │
00:02:23 #2363 [verbose] > │ let mutable _v1 = v1 │
00:02:23 #2364 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:23 #2365 [verbose] > │ let v2 : System.Threading.Tasks.Task = null |> │
00:02:23 #2366 [verbose] > │ unbox<System.Threading.Tasks.Task> │
00:02:23 #2367 [verbose] > │ v2 │
00:02:23 #2368 [verbose] > │ #endif │
00:02:23 #2369 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:23 #2370 [verbose] > │ let v3 : System.Threading.Tasks.Task = null |> │
00:02:23 #2371 [verbose] > │ unbox<System.Threading.Tasks.Task> │
00:02:23 #2372 [verbose] > │ v3 │
00:02:23 #2373 [verbose] > │ #endif │
00:02:23 #2374 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:23 #2375 [verbose] > │ let v4 : System.Threading.Tasks.Task = null |> │
00:02:23 #2376 [verbose] > │ unbox<System.Threading.Tasks.Task> │
00:02:23 #2377 [verbose] > │ v4 │
00:02:23 #2378 [verbose] > │ #endif │
00:02:23 #2379 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:23 #2380 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:23 #2381 [verbose] > │ let v5 : System.Threading.Tasks.Task option = None │
00:02:23 #2382 [verbose] > │ let mutable _v5 = v5 │
00:02:23 #2383 [verbose] > │ task { │
00:02:23 #2384 [verbose] > │ let v6 : System.IDisposable option = None │
00:02:23 #2385 [verbose] > │ let mutable _v6 = v6 │
00:02:23 #2386 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:23 #2387 [verbose] > │ let v7 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:23 #2388 [verbose] > │ v7 │
00:02:23 #2389 [verbose] > │ #endif │
00:02:23 #2390 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:23 #2391 [verbose] > │ let v8 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:23 #2392 [verbose] > │ v8 │
00:02:23 #2393 [verbose] > │ #endif │
00:02:23 #2394 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:23 #2395 [verbose] > │ let v9 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:23 #2396 [verbose] > │ v9 │
00:02:23 #2397 [verbose] > │ #endif │
00:02:23 #2398 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:23 #2399 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:23 #2400 [verbose] > │ let v10 : (unit -> unit) = closure0(v0) │
00:02:23 #2401 [verbose] > │ let v11 : System.IDisposable = { new System.IDisposable with member │
00:02:23 #2402 [verbose] > │ _.Dispose () = v10 () } │
00:02:23 #2403 [verbose] > │ v11 │
00:02:23 #2404 [verbose] > │ #endif │
00:02:23 #2405 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:23 #2406 [verbose] > │ let v12 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:23 #2407 [verbose] > │ v12 │
00:02:23 #2408 [verbose] > │ #endif │
00:02:23 #2409 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:23 #2410 [verbose] > │ Unchecked.defaultof<System.IDisposable> │
00:02:23 #2411 [verbose] > │ #endif │
00:02:23 #2412 [verbose] > │ |> fun x -> _v6 <- Some x │
00:02:23 #2413 [verbose] > │ let v13 : System.IDisposable = _v6.Value │
00:02:23 #2414 [verbose] > │ use v13 = v13 │
00:02:23 #2415 [verbose] > │ let v14 : System.IDisposable = v13 │
00:02:23 #2416 [verbose] > │ return () │
00:02:23 #2417 [verbose] > │ } │
00:02:23 #2418 [verbose] > │ |> fun x -> _v5 <- Some x │
00:02:23 #2419 [verbose] > │ let v15 : System.Threading.Tasks.Task = _v5 |> Option.get │
00:02:23 #2420 [verbose] > │ v15 │
00:02:23 #2421 [verbose] > │ #endif │
00:02:23 #2422 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:23 #2423 [verbose] > │ let v16 : System.Threading.Tasks.Task = null |> │
00:02:23 #2424 [verbose] > │ unbox<System.Threading.Tasks.Task> │
00:02:23 #2425 [verbose] > │ v16 │
00:02:23 #2426 [verbose] > │ #endif │
00:02:23 #2427 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:23 #2428 [verbose] > │ Unchecked.defaultof<System.Threading.Tasks.Task> │
00:02:23 #2429 [verbose] > │ #endif │
00:02:23 #2430 [verbose] > │ |> fun x -> _v1 <- Some x │
00:02:23 #2431 [verbose] > │ let v17 : System.Threading.Tasks.Task = _v1.Value │
00:02:23 #2432 [verbose] > │ let v18 : Async<unit> option = None │
00:02:23 #2433 [verbose] > │ let mutable _v18 = v18 │
00:02:23 #2434 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:23 #2435 [verbose] > │ let v19 : Async<unit> = null |> unbox<Async<unit>> │
00:02:23 #2436 [verbose] > │ v19 │
00:02:23 #2437 [verbose] > │ #endif │
00:02:23 #2438 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:23 #2439 [verbose] > │ let v20 : Async<unit> = null |> unbox<Async<unit>> │
00:02:23 #2440 [verbose] > │ v20 │
00:02:23 #2441 [verbose] > │ #endif │
00:02:23 #2442 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:23 #2443 [verbose] > │ let v21 : Async<unit> = null |> unbox<Async<unit>> │
00:02:23 #2444 [verbose] > │ v21 │
00:02:23 #2445 [verbose] > │ #endif │
00:02:23 #2446 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:23 #2447 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:23 #2448 [verbose] > │ let v22 : (System.Threading.Tasks.Task -> Async<unit>) = Async.AwaitTask │
00:02:23 #2449 [verbose] > │ let v23 : Async<unit> = v22 v17 │
00:02:23 #2450 [verbose] > │ v23 │
00:02:23 #2451 [verbose] > │ #endif │
00:02:23 #2452 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:23 #2453 [verbose] > │ let v24 : Async<unit> = null |> unbox<Async<unit>> │
00:02:23 #2454 [verbose] > │ v24 │
00:02:23 #2455 [verbose] > │ #endif │
00:02:23 #2456 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:23 #2457 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:02:23 #2458 [verbose] > │ #endif │
00:02:23 #2459 [verbose] > │ |> fun x -> _v18 <- Some x │
00:02:23 #2460 [verbose] > │ let v25 : Async<unit> = _v18.Value │
00:02:23 #2461 [verbose] > │ let v26 : unit option = None │
00:02:23 #2462 [verbose] > │ let mutable _v26 = v26 │
00:02:23 #2463 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:23 #2464 [verbose] > │ null |> unbox<unit> │
00:02:23 #2465 [verbose] > │ () │
00:02:23 #2466 [verbose] > │ #endif │
00:02:23 #2467 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:23 #2468 [verbose] > │ null |> unbox<unit> │
00:02:23 #2469 [verbose] > │ () │
00:02:23 #2470 [verbose] > │ #endif │
00:02:23 #2471 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:23 #2472 [verbose] > │ null |> unbox<unit> │
00:02:23 #2473 [verbose] > │ () │
00:02:23 #2474 [verbose] > │ #endif │
00:02:23 #2475 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:23 #2476 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:23 #2477 [verbose] > │ let v27 : (Async<unit> -> unit) = Async.RunSynchronously │
00:02:23 #2478 [verbose] > │ v27 v25 │
00:02:23 #2479 [verbose] > │ () │
00:02:23 #2480 [verbose] > │ #endif │
00:02:23 #2481 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:23 #2482 [verbose] > │ null |> unbox<unit> │
00:02:23 #2483 [verbose] > │ () │
00:02:23 #2484 [verbose] > │ #endif │
00:02:23 #2485 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:23 #2486 [verbose] > │ Unchecked.defaultof<unit> │
00:02:23 #2487 [verbose] > │ #endif │
00:02:23 #2488 [verbose] > │ |> fun x -> _v26 <- Some x │
00:02:23 #2489 [verbose] > │ _v26.Value │
00:02:23 #2490 [verbose] > │ let v28 : int32 = v0.l0 │
00:02:23 #2491 [verbose] > │ let v29 : string = $"%A{v28}" │
00:02:23 #2492 [verbose] > │ System.Console.WriteLine v29 │
00:02:23 #2493 [verbose] > │ let v30 : bool = v28 = 1 │
00:02:23 #2494 [verbose] > │ let v32 : bool = │
00:02:23 #2495 [verbose] > │ if v30 then │
00:02:23 #2496 [verbose] > │ true │
00:02:23 #2497 [verbose] > │ else │
00:02:23 #2498 [verbose] > │ method1(v30) │
00:02:23 #2499 [verbose] > │ let v33 : string = $"__expect / actual: %A{v28} / expected: %A{1}" │
00:02:23 #2500 [verbose] > │ let v34 : bool = v32 = false │
00:02:23 #2501 [verbose] > │ if v34 then │
00:02:23 #2502 [verbose] > │ failwith<unit> v33 │
00:02:23 #2503 [verbose] > │ method0() │
00:02:23 #2504 [verbose] > │ │
00:02:23 #2505 [verbose] > │ 1 │
00:02:23 #2506 [verbose] > │ │
00:02:23 #2507 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:23 #2508 [verbose] >
00:02:23 #2509 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:23 #2510 [verbose] > // // test
00:02:23 #2511 [verbose] >
00:02:23 #2512 [verbose] > inl new_disposable_test = mut 0i32
00:02:23 #2513 [verbose] > fun () =>
00:02:23 #2514 [verbose] > new_disposable fun () => new_disposable_test <- *new_disposable_test + 1
00:02:23 #2515 [verbose] > |> fun x => x : disposable ()
00:02:23 #2516 [verbose] > |> use
00:02:23 #2517 [verbose] > |> ignore
00:02:23 #2518 [verbose] > |> return
00:02:23 #2519 [verbose] > |> async.new_async
00:02:23 #2520 [verbose] > |> async.run_synchronously
00:02:23 #2521 [verbose] > *new_disposable_test |> _assert_eq 1
00:02:23 #2522 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\113f1a08369281fcb16af4f71b9e5460c1a34931a4ddb8bc97297fde0a8a04ee\main.spi
00:02:23 #2523 [verbose] >
00:02:23 #2524 [verbose] > ╭─[ 342.27ms - stdout ]────────────────────────────────────────────────────────╮
00:02:23 #2525 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:02:23 #2526 [verbose] > │ let rec closure0 (v0 : Mut0) () : unit = │
00:02:23 #2527 [verbose] > │ let v1 : int32 = v0.l0 │
00:02:23 #2528 [verbose] > │ let v2 : int32 = v1 + 1 │
00:02:23 #2529 [verbose] > │ v0.l0 <- v2 │
00:02:23 #2530 [verbose] > │ () │
00:02:23 #2531 [verbose] > │ and method1 (v0 : bool) : bool = │
00:02:23 #2532 [verbose] > │ v0 │
00:02:23 #2533 [verbose] > │ and method0 () : unit = │
00:02:23 #2534 [verbose] > │ let v0 : Mut0 = {l0 = 0} : Mut0 │
00:02:23 #2535 [verbose] > │ let v1 : Async<unit> option = None │
00:02:23 #2536 [verbose] > │ let mutable _v1 = v1 │
00:02:23 #2537 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:23 #2538 [verbose] > │ let v2 : Async<unit> = null |> unbox<Async<unit>> │
00:02:23 #2539 [verbose] > │ v2 │
00:02:23 #2540 [verbose] > │ #endif │
00:02:23 #2541 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:23 #2542 [verbose] > │ let v3 : Async<unit> = null |> unbox<Async<unit>> │
00:02:23 #2543 [verbose] > │ v3 │
00:02:23 #2544 [verbose] > │ #endif │
00:02:23 #2545 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:23 #2546 [verbose] > │ let v4 : Async<unit> = null |> unbox<Async<unit>> │
00:02:23 #2547 [verbose] > │ v4 │
00:02:23 #2548 [verbose] > │ #endif │
00:02:23 #2549 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:23 #2550 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:23 #2551 [verbose] > │ let v5 : Async<unit> option = None │
00:02:23 #2552 [verbose] > │ let mutable _v5 = v5 │
00:02:23 #2553 [verbose] > │ async { │
00:02:23 #2554 [verbose] > │ let v6 : System.IDisposable option = None │
00:02:23 #2555 [verbose] > │ let mutable _v6 = v6 │
00:02:23 #2556 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:23 #2557 [verbose] > │ let v7 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:23 #2558 [verbose] > │ v7 │
00:02:23 #2559 [verbose] > │ #endif │
00:02:23 #2560 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:23 #2561 [verbose] > │ let v8 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:23 #2562 [verbose] > │ v8 │
00:02:23 #2563 [verbose] > │ #endif │
00:02:23 #2564 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:23 #2565 [verbose] > │ let v9 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:23 #2566 [verbose] > │ v9 │
00:02:23 #2567 [verbose] > │ #endif │
00:02:23 #2568 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:23 #2569 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:23 #2570 [verbose] > │ let v10 : (unit -> unit) = closure0(v0) │
00:02:23 #2571 [verbose] > │ let v11 : System.IDisposable = { new System.IDisposable with member │
00:02:23 #2572 [verbose] > │ _.Dispose () = v10 () } │
00:02:23 #2573 [verbose] > │ v11 │
00:02:23 #2574 [verbose] > │ #endif │
00:02:23 #2575 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:23 #2576 [verbose] > │ let v12 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:23 #2577 [verbose] > │ v12 │
00:02:23 #2578 [verbose] > │ #endif │
00:02:23 #2579 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:23 #2580 [verbose] > │ Unchecked.defaultof<System.IDisposable> │
00:02:23 #2581 [verbose] > │ #endif │
00:02:23 #2582 [verbose] > │ |> fun x -> _v6 <- Some x │
00:02:23 #2583 [verbose] > │ let v13 : System.IDisposable = _v6.Value │
00:02:23 #2584 [verbose] > │ use v13 = v13 │
00:02:23 #2585 [verbose] > │ let v14 : System.IDisposable = v13 │
00:02:23 #2586 [verbose] > │ return () │
00:02:23 #2587 [verbose] > │ } │
00:02:23 #2588 [verbose] > │ |> fun x -> _v5 <- Some x │
00:02:23 #2589 [verbose] > │ let v15 : Async<unit> = _v5 |> Option.get │
00:02:23 #2590 [verbose] > │ v15 │
00:02:23 #2591 [verbose] > │ #endif │
00:02:23 #2592 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:23 #2593 [verbose] > │ let v16 : Async<unit> = null |> unbox<Async<unit>> │
00:02:23 #2594 [verbose] > │ v16 │
00:02:23 #2595 [verbose] > │ #endif │
00:02:23 #2596 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:23 #2597 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:02:23 #2598 [verbose] > │ #endif │
00:02:23 #2599 [verbose] > │ |> fun x -> _v1 <- Some x │
00:02:23 #2600 [verbose] > │ let v17 : Async<unit> = _v1.Value │
00:02:23 #2601 [verbose] > │ let v18 : unit option = None │
00:02:23 #2602 [verbose] > │ let mutable _v18 = v18 │
00:02:23 #2603 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:23 #2604 [verbose] > │ null |> unbox<unit> │
00:02:23 #2605 [verbose] > │ () │
00:02:23 #2606 [verbose] > │ #endif │
00:02:23 #2607 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:23 #2608 [verbose] > │ null |> unbox<unit> │
00:02:23 #2609 [verbose] > │ () │
00:02:23 #2610 [verbose] > │ #endif │
00:02:23 #2611 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:23 #2612 [verbose] > │ null |> unbox<unit> │
00:02:23 #2613 [verbose] > │ () │
00:02:23 #2614 [verbose] > │ #endif │
00:02:23 #2615 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:23 #2616 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:23 #2617 [verbose] > │ let v19 : (Async<unit> -> unit) = Async.RunSynchronously │
00:02:23 #2618 [verbose] > │ v19 v17 │
00:02:23 #2619 [verbose] > │ () │
00:02:23 #2620 [verbose] > │ #endif │
00:02:23 #2621 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:23 #2622 [verbose] > │ null |> unbox<unit> │
00:02:23 #2623 [verbose] > │ () │
00:02:23 #2624 [verbose] > │ #endif │
00:02:23 #2625 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:23 #2626 [verbose] > │ Unchecked.defaultof<unit> │
00:02:23 #2627 [verbose] > │ #endif │
00:02:23 #2628 [verbose] > │ |> fun x -> _v18 <- Some x │
00:02:23 #2629 [verbose] > │ _v18.Value │
00:02:23 #2630 [verbose] > │ let v20 : int32 = v0.l0 │
00:02:23 #2631 [verbose] > │ let v21 : string = $"%A{v20}" │
00:02:23 #2632 [verbose] > │ System.Console.WriteLine v21 │
00:02:23 #2633 [verbose] > │ let v22 : bool = v20 = 1 │
00:02:23 #2634 [verbose] > │ let v24 : bool = │
00:02:23 #2635 [verbose] > │ if v22 then │
00:02:23 #2636 [verbose] > │ true │
00:02:23 #2637 [verbose] > │ else │
00:02:23 #2638 [verbose] > │ method1(v22) │
00:02:23 #2639 [verbose] > │ let v25 : string = $"__expect / actual: %A{v20} / expected: %A{1}" │
00:02:23 #2640 [verbose] > │ let v26 : bool = v24 = false │
00:02:23 #2641 [verbose] > │ if v26 then │
00:02:23 #2642 [verbose] > │ failwith<unit> v25 │
00:02:23 #2643 [verbose] > │ method0() │
00:02:23 #2644 [verbose] > │ │
00:02:23 #2645 [verbose] > │ 1 │
00:02:23 #2646 [verbose] > │ │
00:02:23 #2647 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:23 #2648 [verbose] >
00:02:23 #2649 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:23 #2650 [verbose] > // // test
00:02:23 #2651 [verbose] >
00:02:23 #2652 [verbose] > inl new_disposable_test = mut 0i32
00:02:23 #2653 [verbose] > fun () =>
00:02:23 #2654 [verbose] > new_disposable fun () => new_disposable_test <- *new_disposable_test + 1
00:02:23 #2655 [verbose] > |> fun x => x : disposable ()
00:02:23 #2656 [verbose] > |> ignore
00:02:23 #2657 [verbose] > |> return
00:02:23 #2658 [verbose] > |> async.new_async
00:02:23 #2659 [verbose] > |> async.run_synchronously
00:02:23 #2660 [verbose] > *new_disposable_test |> _assert_eq 0
00:02:23 #2661 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\80efd884c739395b329e1acdb80483ee36c9723552d0068b4f812b14bc648418\main.spi
00:02:24 #2662 [verbose] >
00:02:24 #2663 [verbose] > ╭─[ 432.29ms - stdout ]────────────────────────────────────────────────────────╮
00:02:24 #2664 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:02:24 #2665 [verbose] > │ let rec closure0 (v0 : Mut0) () : unit = │
00:02:24 #2666 [verbose] > │ let v1 : int32 = v0.l0 │
00:02:24 #2667 [verbose] > │ let v2 : int32 = v1 + 1 │
00:02:24 #2668 [verbose] > │ v0.l0 <- v2 │
00:02:24 #2669 [verbose] > │ () │
00:02:24 #2670 [verbose] > │ and method1 (v0 : bool) : bool = │
00:02:24 #2671 [verbose] > │ v0 │
00:02:24 #2672 [verbose] > │ and method0 () : unit = │
00:02:24 #2673 [verbose] > │ let v0 : Mut0 = {l0 = 0} : Mut0 │
00:02:24 #2674 [verbose] > │ let v1 : Async<unit> option = None │
00:02:24 #2675 [verbose] > │ let mutable _v1 = v1 │
00:02:24 #2676 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:24 #2677 [verbose] > │ let v2 : Async<unit> = null |> unbox<Async<unit>> │
00:02:24 #2678 [verbose] > │ v2 │
00:02:24 #2679 [verbose] > │ #endif │
00:02:24 #2680 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:24 #2681 [verbose] > │ let v3 : Async<unit> = null |> unbox<Async<unit>> │
00:02:24 #2682 [verbose] > │ v3 │
00:02:24 #2683 [verbose] > │ #endif │
00:02:24 #2684 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:24 #2685 [verbose] > │ let v4 : Async<unit> = null |> unbox<Async<unit>> │
00:02:24 #2686 [verbose] > │ v4 │
00:02:24 #2687 [verbose] > │ #endif │
00:02:24 #2688 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:24 #2689 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:24 #2690 [verbose] > │ let v5 : Async<unit> option = None │
00:02:24 #2691 [verbose] > │ let mutable _v5 = v5 │
00:02:24 #2692 [verbose] > │ async { │
00:02:24 #2693 [verbose] > │ let v6 : System.IDisposable option = None │
00:02:24 #2694 [verbose] > │ let mutable _v6 = v6 │
00:02:24 #2695 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:24 #2696 [verbose] > │ let v7 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:24 #2697 [verbose] > │ v7 │
00:02:24 #2698 [verbose] > │ #endif │
00:02:24 #2699 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:24 #2700 [verbose] > │ let v8 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:24 #2701 [verbose] > │ v8 │
00:02:24 #2702 [verbose] > │ #endif │
00:02:24 #2703 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:24 #2704 [verbose] > │ let v9 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:24 #2705 [verbose] > │ v9 │
00:02:24 #2706 [verbose] > │ #endif │
00:02:24 #2707 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:24 #2708 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:24 #2709 [verbose] > │ let v10 : (unit -> unit) = closure0(v0) │
00:02:24 #2710 [verbose] > │ let v11 : System.IDisposable = { new System.IDisposable with member │
00:02:24 #2711 [verbose] > │ _.Dispose () = v10 () } │
00:02:24 #2712 [verbose] > │ v11 │
00:02:24 #2713 [verbose] > │ #endif │
00:02:24 #2714 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:24 #2715 [verbose] > │ let v12 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:24 #2716 [verbose] > │ v12 │
00:02:24 #2717 [verbose] > │ #endif │
00:02:24 #2718 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:24 #2719 [verbose] > │ Unchecked.defaultof<System.IDisposable> │
00:02:24 #2720 [verbose] > │ #endif │
00:02:24 #2721 [verbose] > │ |> fun x -> _v6 <- Some x │
00:02:24 #2722 [verbose] > │ let v13 : System.IDisposable = _v6.Value │
00:02:24 #2723 [verbose] > │ return () │
00:02:24 #2724 [verbose] > │ } │
00:02:24 #2725 [verbose] > │ |> fun x -> _v5 <- Some x │
00:02:24 #2726 [verbose] > │ let v14 : Async<unit> = _v5 |> Option.get │
00:02:24 #2727 [verbose] > │ v14 │
00:02:24 #2728 [verbose] > │ #endif │
00:02:24 #2729 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:24 #2730 [verbose] > │ let v15 : Async<unit> = null |> unbox<Async<unit>> │
00:02:24 #2731 [verbose] > │ v15 │
00:02:24 #2732 [verbose] > │ #endif │
00:02:24 #2733 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:24 #2734 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:02:24 #2735 [verbose] > │ #endif │
00:02:24 #2736 [verbose] > │ |> fun x -> _v1 <- Some x │
00:02:24 #2737 [verbose] > │ let v16 : Async<unit> = _v1.Value │
00:02:24 #2738 [verbose] > │ let v17 : unit option = None │
00:02:24 #2739 [verbose] > │ let mutable _v17 = v17 │
00:02:24 #2740 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:24 #2741 [verbose] > │ null |> unbox<unit> │
00:02:24 #2742 [verbose] > │ () │
00:02:24 #2743 [verbose] > │ #endif │
00:02:24 #2744 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:24 #2745 [verbose] > │ null |> unbox<unit> │
00:02:24 #2746 [verbose] > │ () │
00:02:24 #2747 [verbose] > │ #endif │
00:02:24 #2748 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:24 #2749 [verbose] > │ null |> unbox<unit> │
00:02:24 #2750 [verbose] > │ () │
00:02:24 #2751 [verbose] > │ #endif │
00:02:24 #2752 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:24 #2753 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:24 #2754 [verbose] > │ let v18 : (Async<unit> -> unit) = Async.RunSynchronously │
00:02:24 #2755 [verbose] > │ v18 v16 │
00:02:24 #2756 [verbose] > │ () │
00:02:24 #2757 [verbose] > │ #endif │
00:02:24 #2758 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:24 #2759 [verbose] > │ null |> unbox<unit> │
00:02:24 #2760 [verbose] > │ () │
00:02:24 #2761 [verbose] > │ #endif │
00:02:24 #2762 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:24 #2763 [verbose] > │ Unchecked.defaultof<unit> │
00:02:24 #2764 [verbose] > │ #endif │
00:02:24 #2765 [verbose] > │ |> fun x -> _v17 <- Some x │
00:02:24 #2766 [verbose] > │ _v17.Value │
00:02:24 #2767 [verbose] > │ let v19 : int32 = v0.l0 │
00:02:24 #2768 [verbose] > │ let v20 : string = $"%A{v19}" │
00:02:24 #2769 [verbose] > │ System.Console.WriteLine v20 │
00:02:24 #2770 [verbose] > │ let v21 : bool = v19 = 0 │
00:02:24 #2771 [verbose] > │ let v23 : bool = │
00:02:24 #2772 [verbose] > │ if v21 then │
00:02:24 #2773 [verbose] > │ true │
00:02:24 #2774 [verbose] > │ else │
00:02:24 #2775 [verbose] > │ method1(v21) │
00:02:24 #2776 [verbose] > │ let v24 : string = $"__expect / actual: %A{v19} / expected: %A{0}" │
00:02:24 #2777 [verbose] > │ let v25 : bool = v23 = false │
00:02:24 #2778 [verbose] > │ if v25 then │
00:02:24 #2779 [verbose] > │ failwith<unit> v24 │
00:02:24 #2780 [verbose] > │ method0() │
00:02:24 #2781 [verbose] > │ │
00:02:24 #2782 [verbose] > │ 0 │
00:02:24 #2783 [verbose] > │ │
00:02:24 #2784 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:24 #2785 [verbose] >
00:02:24 #2786 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:24 #2787 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:24 #2788 [verbose] > │ ## return │
00:02:24 #2789 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:24 #2790 [verbose] >
00:02:24 #2791 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:24 #2792 [verbose] > inl return forall t. (x : t) : () =
00:02:24 #2793 [verbose] > $'return !x '
00:02:24 #2794 [verbose] >
00:02:24 #2795 [verbose] > inl return' forall t. (x : t) : t =
00:02:24 #2796 [verbose] > $'return !x '
00:02:24 #2797 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e3af53fb1aff9946b6145f9debde97dd018c904a74ae2a674cd3f34c37104a45\main.spi
00:02:24 #2798 [verbose] >
00:02:24 #2799 [verbose] > ╭─[ 267.90ms - stdout ]────────────────────────────────────────────────────────╮
00:02:24 #2800 [verbose] > │ () │
00:02:24 #2801 [verbose] > │ │
00:02:24 #2802 [verbose] > │ │
00:02:24 #2803 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:24 #2804 [verbose] >
00:02:24 #2805 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:24 #2806 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:24 #2807 [verbose] > │ ## sleep │
00:02:24 #2808 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:24 #2809 [verbose] >
00:02:24 #2810 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:24 #2811 [verbose] > inl sleep (n : i32) : () =
00:02:24 #2812 [verbose] > run_target function
00:02:24 #2813 [verbose] > | Fsharp (Native) => fun () => $'System.Threading.Thread.Sleep' n
00:02:24 #2814 [verbose] > | _ => fun () => ()
00:02:24 #2815 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ff3e2f671e2e3755d203ec50344ba9690ccab81a9f3f267540b8f15db7e8f1fb\main.spi
00:02:24 #2816 [verbose] >
00:02:24 #2817 [verbose] > ╭─[ 346.23ms - stdout ]────────────────────────────────────────────────────────╮
00:02:24 #2818 [verbose] > │ () │
00:02:24 #2819 [verbose] > │ │
00:02:24 #2820 [verbose] > │ │
00:02:24 #2821 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:24 #2822 [verbose] >
00:02:24 #2823 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:24 #2824 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:24 #2825 [verbose] > │ ## retry_fn │
00:02:24 #2826 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:24 #2827 [verbose] >
00:02:24 #2828 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:24 #2829 [verbose] > inl retry_fn forall t. retries (fn : () -> t) : option t =
00:02:24 #2830 [verbose] > let rec loop retry =
00:02:24 #2831 [verbose] > try
00:02:24 #2832 [verbose] > fun () =>
00:02:24 #2833 [verbose] > if retry < retries
00:02:24 #2834 [verbose] > then fn () |> Some
00:02:24 #2835 [verbose] > else None
00:02:24 #2836 [verbose] > fun ex =>
00:02:24 #2837 [verbose] > inl get_locals () = $'$"retry: {!retry} / ex: {ex |>
00:02:24 #2838 [verbose] > SpiralSm.format_exception} / {!get_locals ()}"' : string
00:02:24 #2839 [verbose] > // trace Warning (fun () => "retry_fn") getLocals
00:02:24 #2840 [verbose] > sleep 1
00:02:24 #2841 [verbose] > None
00:02:24 #2842 [verbose] > |> function
00:02:24 #2843 [verbose] > | Some x => x
00:02:24 #2844 [verbose] > | None => loop (retry + 1)
00:02:24 #2845 [verbose] > loop 0
00:02:25 #2846 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e71afc79679a8867dfe72dbe06e7a4f10139048a44629cc15d4c470c13680d68\main.spi
00:02:25 #2847 [verbose] >
00:02:25 #2848 [verbose] > ╭─[ 398.16ms - stdout ]────────────────────────────────────────────────────────╮
00:02:25 #2849 [verbose] > │ () │
00:02:25 #2850 [verbose] > │ │
00:02:25 #2851 [verbose] > │ │
00:02:25 #2852 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:25 #2853 [verbose] >
00:02:25 #2854 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:25 #2855 [verbose] > // // test
00:02:25 #2856 [verbose] >
00:02:25 #2857 [verbose] > inl retry_fn_test = mut 0i32
00:02:25 #2858 [verbose] > fun () =>
00:02:25 #2859 [verbose] > retry_fn_test <- *retry_fn_test + 1
00:02:25 #2860 [verbose] > *retry_fn_test
00:02:25 #2861 [verbose] > |> retry_fn 3i32
00:02:25 #2862 [verbose] > |> _assert_eq (Some 1i32)
00:02:25 #2863 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ebcace0ab2f0b4de82cfeea69d8954c1ffbaf3c92f1d11abbcb6341c2d15f92d\main.spi
00:02:25 #2864 [verbose] >
00:02:25 #2865 [verbose] > ╭─[ 638.40ms - stdout ]────────────────────────────────────────────────────────╮
00:02:25 #2866 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:02:25 #2867 [verbose] > │ and [<Struct>] US0 = │
00:02:25 #2868 [verbose] > │ | US0_0 of f0_0 : int32 │
00:02:25 #2869 [verbose] > │ | US0_1 │
00:02:25 #2870 [verbose] > │ and [<Struct>] US1 = │
00:02:25 #2871 [verbose] > │ | US1_0 of f0_0 : US0 │
00:02:25 #2872 [verbose] > │ | US1_1 │
00:02:25 #2873 [verbose] > │ let rec closure0 (v0 : Mut0, v1 : int32) () : US0 = │
00:02:25 #2874 [verbose] > │ let v2 : bool = v1 < 3 │
00:02:25 #2875 [verbose] > │ if v2 then │
00:02:25 #2876 [verbose] > │ let v3 : int32 = v0.l0 │
00:02:25 #2877 [verbose] > │ let v4 : int32 = v3 + 1 │
00:02:25 #2878 [verbose] > │ v0.l0 <- v4 │
00:02:25 #2879 [verbose] > │ let v5 : int32 = v0.l0 │
00:02:25 #2880 [verbose] > │ US0_0(v5) │
00:02:25 #2881 [verbose] > │ else │
00:02:25 #2882 [verbose] > │ US0_1 │
00:02:25 #2883 [verbose] > │ and closure1 () (v0 : US0) : US1 = │
00:02:25 #2884 [verbose] > │ US1_0(v0) │
00:02:25 #2885 [verbose] > │ and closure2 (v0 : int32) (v1 : exn) : US1 = │
00:02:25 #2886 [verbose] > │ let v2 : unit option = None │
00:02:25 #2887 [verbose] > │ let mutable _v2 = v2 │
00:02:25 #2888 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:25 #2889 [verbose] > │ () │
00:02:25 #2890 [verbose] > │ #endif │
00:02:25 #2891 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:25 #2892 [verbose] > │ () │
00:02:26 #2893 [verbose] > │ #endif │
00:02:26 #2894 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:26 #2895 [verbose] > │ () │
00:02:26 #2896 [verbose] > │ #endif │
00:02:26 #2897 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:26 #2898 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:26 #2899 [verbose] > │ let v3 : (int32 -> unit) = System.Threading.Thread.Sleep │
00:02:26 #2900 [verbose] > │ v3 1 │
00:02:26 #2901 [verbose] > │ () │
00:02:26 #2902 [verbose] > │ #endif │
00:02:26 #2903 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:26 #2904 [verbose] > │ () │
00:02:26 #2905 [verbose] > │ #endif │
00:02:26 #2906 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:26 #2907 [verbose] > │ Unchecked.defaultof<unit> │
00:02:26 #2908 [verbose] > │ #endif │
00:02:26 #2909 [verbose] > │ |> fun x -> _v2 <- Some x │
00:02:26 #2910 [verbose] > │ _v2.Value │
00:02:26 #2911 [verbose] > │ US1_1 │
00:02:26 #2912 [verbose] > │ and method1 (v0 : Mut0, v1 : int32) : US0 = │
00:02:26 #2913 [verbose] > │ let v2 : (unit -> US0) = closure0(v0, v1) │
00:02:26 #2914 [verbose] > │ let v3 : (US0 -> US1) = closure1() │
00:02:26 #2915 [verbose] > │ let v4 : (exn -> US1) = closure2(v1) │
00:02:26 #2916 [verbose] > │ let v5 : US1 = try v2 () |> v3 with ex -> v4 ex │
00:02:26 #2917 [verbose] > │ match v5 with │
00:02:26 #2918 [verbose] > │ | US1_1 -> (* None *) │
00:02:26 #2919 [verbose] > │ let v7 : int32 = v1 + 1 │
00:02:26 #2920 [verbose] > │ method1(v0, v7) │
00:02:26 #2921 [verbose] > │ | US1_0(v6) -> (* Some *) │
00:02:26 #2922 [verbose] > │ v6 │
00:02:26 #2923 [verbose] > │ and method2 (v0 : bool) : bool = │
00:02:26 #2924 [verbose] > │ v0 │
00:02:26 #2925 [verbose] > │ and method0 () : unit = │
00:02:26 #2926 [verbose] > │ let v0 : Mut0 = {l0 = 0} : Mut0 │
00:02:26 #2927 [verbose] > │ let v1 : int32 = 0 │
00:02:26 #2928 [verbose] > │ let v2 : US0 = method1(v0, v1) │
00:02:26 #2929 [verbose] > │ let v3 : string = $"%A{v2}" │
00:02:26 #2930 [verbose] > │ System.Console.WriteLine v3 │
00:02:26 #2931 [verbose] > │ let v7 : bool = │
00:02:26 #2932 [verbose] > │ match v2 with │
00:02:26 #2933 [verbose] > │ | US0_0(v5) -> (* Some *) │
00:02:26 #2934 [verbose] > │ let v6 : bool = v5 = 1 │
00:02:26 #2935 [verbose] > │ v6 │
00:02:26 #2936 [verbose] > │ | _ -> │
00:02:26 #2937 [verbose] > │ false │
00:02:26 #2938 [verbose] > │ let v9 : bool = │
00:02:26 #2939 [verbose] > │ if v7 then │
00:02:26 #2940 [verbose] > │ true │
00:02:26 #2941 [verbose] > │ else │
00:02:26 #2942 [verbose] > │ method2(v7) │
00:02:26 #2943 [verbose] > │ let v10 : US0 = US0_0(1) │
00:02:26 #2944 [verbose] > │ let v11 : string = $"__expect / actual: %A{v2} / expected: %A{v10}" │
00:02:26 #2945 [verbose] > │ let v12 : bool = v9 = false │
00:02:26 #2946 [verbose] > │ if v12 then │
00:02:26 #2947 [verbose] > │ failwith<unit> v11 │
00:02:26 #2948 [verbose] > │ method0() │
00:02:26 #2949 [verbose] > │ │
00:02:26 #2950 [verbose] > │ US0_0 1 │
00:02:26 #2951 [verbose] > │ │
00:02:26 #2952 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:26 #2953 [verbose] >
00:02:26 #2954 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:26 #2955 [verbose] > // // test
00:02:26 #2956 [verbose] >
00:02:26 #2957 [verbose] > inl retry_fn_test = mut 0i32
00:02:26 #2958 [verbose] > fun () =>
00:02:26 #2959 [verbose] > if *retry_fn_test >= 2
00:02:26 #2960 [verbose] > then *retry_fn_test
00:02:26 #2961 [verbose] > else
00:02:26 #2962 [verbose] > retry_fn_test <- *retry_fn_test + 1
00:02:26 #2963 [verbose] > failwith "test"
00:02:26 #2964 [verbose] > |> retry_fn 3i32
00:02:26 #2965 [verbose] > |> _assert_eq (Some 2i32)
00:02:26 #2966 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\795da1cc9bb5db2c345a143053f7cfca9b387c7d2a39b455d8a3ee909a573701\main.spi
00:02:27 #2967 [verbose] >
00:02:27 #2968 [verbose] > ╭─[ 961.17ms - stdout ]────────────────────────────────────────────────────────╮
00:02:27 #2969 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:02:27 #2970 [verbose] > │ and [<Struct>] US0 = │
00:02:27 #2971 [verbose] > │ | US0_0 of f0_0 : int32 │
00:02:27 #2972 [verbose] > │ | US0_1 │
00:02:27 #2973 [verbose] > │ and [<Struct>] US1 = │
00:02:27 #2974 [verbose] > │ | US1_0 of f0_0 : US0 │
00:02:27 #2975 [verbose] > │ | US1_1 │
00:02:27 #2976 [verbose] > │ let rec closure0 (v0 : Mut0, v1 : int32) () : US0 = │
00:02:27 #2977 [verbose] > │ let v2 : bool = v1 < 3 │
00:02:27 #2978 [verbose] > │ if v2 then │
00:02:27 #2979 [verbose] > │ let v3 : int32 = v0.l0 │
00:02:27 #2980 [verbose] > │ let v4 : bool = v3 >= 2 │
00:02:27 #2981 [verbose] > │ let v9 : int32 = │
00:02:27 #2982 [verbose] > │ if v4 then │
00:02:27 #2983 [verbose] > │ let v5 : int32 = v0.l0 │
00:02:27 #2984 [verbose] > │ v5 │
00:02:27 #2985 [verbose] > │ else │
00:02:27 #2986 [verbose] > │ let v6 : int32 = v0.l0 │
00:02:27 #2987 [verbose] > │ let v7 : int32 = v6 + 1 │
00:02:27 #2988 [verbose] > │ v0.l0 <- v7 │
00:02:27 #2989 [verbose] > │ failwith<int32> "test" │
00:02:27 #2990 [verbose] > │ US0_0(v9) │
00:02:27 #2991 [verbose] > │ else │
00:02:27 #2992 [verbose] > │ US0_1 │
00:02:27 #2993 [verbose] > │ and closure1 () (v0 : US0) : US1 = │
00:02:27 #2994 [verbose] > │ US1_0(v0) │
00:02:27 #2995 [verbose] > │ and closure2 (v0 : int32) (v1 : exn) : US1 = │
00:02:27 #2996 [verbose] > │ let v2 : unit option = None │
00:02:27 #2997 [verbose] > │ let mutable _v2 = v2 │
00:02:27 #2998 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:27 #2999 [verbose] > │ () │
00:02:27 #3000 [verbose] > │ #endif │
00:02:27 #3001 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:27 #3002 [verbose] > │ () │
00:02:27 #3003 [verbose] > │ #endif │
00:02:27 #3004 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:27 #3005 [verbose] > │ () │
00:02:27 #3006 [verbose] > │ #endif │
00:02:27 #3007 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:27 #3008 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:27 #3009 [verbose] > │ let v3 : (int32 -> unit) = System.Threading.Thread.Sleep │
00:02:27 #3010 [verbose] > │ v3 1 │
00:02:27 #3011 [verbose] > │ () │
00:02:27 #3012 [verbose] > │ #endif │
00:02:27 #3013 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:27 #3014 [verbose] > │ () │
00:02:27 #3015 [verbose] > │ #endif │
00:02:27 #3016 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:27 #3017 [verbose] > │ Unchecked.defaultof<unit> │
00:02:27 #3018 [verbose] > │ #endif │
00:02:27 #3019 [verbose] > │ |> fun x -> _v2 <- Some x │
00:02:27 #3020 [verbose] > │ _v2.Value │
00:02:27 #3021 [verbose] > │ US1_1 │
00:02:27 #3022 [verbose] > │ and method1 (v0 : Mut0, v1 : int32) : US0 = │
00:02:27 #3023 [verbose] > │ let v2 : (unit -> US0) = closure0(v0, v1) │
00:02:27 #3024 [verbose] > │ let v3 : (US0 -> US1) = closure1() │
00:02:27 #3025 [verbose] > │ let v4 : (exn -> US1) = closure2(v1) │
00:02:27 #3026 [verbose] > │ let v5 : US1 = try v2 () |> v3 with ex -> v4 ex │
00:02:27 #3027 [verbose] > │ match v5 with │
00:02:27 #3028 [verbose] > │ | US1_1 -> (* None *) │
00:02:27 #3029 [verbose] > │ let v7 : int32 = v1 + 1 │
00:02:27 #3030 [verbose] > │ method1(v0, v7) │
00:02:27 #3031 [verbose] > │ | US1_0(v6) -> (* Some *) │
00:02:27 #3032 [verbose] > │ v6 │
00:02:27 #3033 [verbose] > │ and method2 (v0 : bool) : bool = │
00:02:27 #3034 [verbose] > │ v0 │
00:02:27 #3035 [verbose] > │ and method0 () : unit = │
00:02:27 #3036 [verbose] > │ let v0 : Mut0 = {l0 = 0} : Mut0 │
00:02:27 #3037 [verbose] > │ let v1 : int32 = 0 │
00:02:27 #3038 [verbose] > │ let v2 : US0 = method1(v0, v1) │
00:02:27 #3039 [verbose] > │ let v3 : string = $"%A{v2}" │
00:02:27 #3040 [verbose] > │ System.Console.WriteLine v3 │
00:02:27 #3041 [verbose] > │ let v7 : bool = │
00:02:27 #3042 [verbose] > │ match v2 with │
00:02:27 #3043 [verbose] > │ | US0_0(v5) -> (* Some *) │
00:02:27 #3044 [verbose] > │ let v6 : bool = v5 = 2 │
00:02:27 #3045 [verbose] > │ v6 │
00:02:27 #3046 [verbose] > │ | _ -> │
00:02:27 #3047 [verbose] > │ false │
00:02:27 #3048 [verbose] > │ let v9 : bool = │
00:02:27 #3049 [verbose] > │ if v7 then │
00:02:27 #3050 [verbose] > │ true │
00:02:27 #3051 [verbose] > │ else │
00:02:27 #3052 [verbose] > │ method2(v7) │
00:02:27 #3053 [verbose] > │ let v10 : US0 = US0_0(2) │
00:02:27 #3054 [verbose] > │ let v11 : string = $"__expect / actual: %A{v2} / expected: %A{v10}" │
00:02:27 #3055 [verbose] > │ let v12 : bool = v9 = false │
00:02:27 #3056 [verbose] > │ if v12 then │
00:02:27 #3057 [verbose] > │ failwith<unit> v11 │
00:02:27 #3058 [verbose] > │ method0() │
00:02:27 #3059 [verbose] > │ │
00:02:27 #3060 [verbose] > │ US0_0 2 │
00:02:27 #3061 [verbose] > │ │
00:02:27 #3062 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:27 #3063 [verbose] >
00:02:27 #3064 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:27 #3065 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:27 #3066 [verbose] > │ ## main │
00:02:27 #3067 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:27 #3068 [verbose] >
00:02:27 #3069 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:27 #3070 [verbose] > inl main () =
00:02:27 #3071 [verbose] > inl new_disposable x : _ () = new_disposable x
00:02:27 #3072 [verbose] > $"let new_disposable x = !new_disposable x" : ()
00:02:27 #3073 [verbose] >
00:02:27 #3074 [verbose] > inl retry_fn (r : i32) (x : () -> _) : optionm'.option' () = retry_fn r x |>
00:02:27 #3075 [verbose] > optionm'.box
00:02:27 #3076 [verbose] > $"let retry_fn x = !retry_fn x" : ()
00:02:27 #3077 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e5f26bbab1e23ad6aac3caafb83321781effb6bf14d17fbea61f92fd59312b7d\main.spi
00:02:28 #3078 [verbose] >
00:02:28 #3079 [verbose] > ╭─[ 1.06s - stdout ]───────────────────────────────────────────────────────────╮
00:02:28 #3080 [verbose] > │ type [<Struct>] US0 = │
00:02:28 #3081 [verbose] > │ | US0_0 │
00:02:28 #3082 [verbose] > │ | US0_1 │
00:02:28 #3083 [verbose] > │ and [<Struct>] US1 = │
00:02:28 #3084 [verbose] > │ | US1_0 of f0_0 : US0 │
00:02:28 #3085 [verbose] > │ | US1_1 │
00:02:28 #3086 [verbose] > │ let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable = │
00:02:28 #3087 [verbose] > │ let v1 : System.IDisposable option = None │
00:02:28 #3088 [verbose] > │ let mutable _v1 = v1 │
00:02:28 #3089 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:28 #3090 [verbose] > │ let v2 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:28 #3091 [verbose] > │ v2 │
00:02:28 #3092 [verbose] > │ #endif │
00:02:28 #3093 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:28 #3094 [verbose] > │ let v3 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:28 #3095 [verbose] > │ v3 │
00:02:28 #3096 [verbose] > │ #endif │
00:02:28 #3097 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:28 #3098 [verbose] > │ let v4 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:28 #3099 [verbose] > │ v4 │
00:02:28 #3100 [verbose] > │ #endif │
00:02:28 #3101 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:28 #3102 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:28 #3103 [verbose] > │ let v5 : System.IDisposable = { new System.IDisposable with member │
00:02:28 #3104 [verbose] > │ _.Dispose () = v0 () } │
00:02:28 #3105 [verbose] > │ v5 │
00:02:28 #3106 [verbose] > │ #endif │
00:02:28 #3107 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:28 #3108 [verbose] > │ let v6 : System.IDisposable = null |> unbox<System.IDisposable> │
00:02:28 #3109 [verbose] > │ v6 │
00:02:28 #3110 [verbose] > │ #endif │
00:02:28 #3111 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:28 #3112 [verbose] > │ Unchecked.defaultof<System.IDisposable> │
00:02:28 #3113 [verbose] > │ #endif │
00:02:28 #3114 [verbose] > │ |> fun x -> _v1 <- Some x │
00:02:28 #3115 [verbose] > │ let v7 : System.IDisposable = _v1.Value │
00:02:28 #3116 [verbose] > │ v7 │
00:02:28 #3117 [verbose] > │ and closure3 (v0 : int32, v1 : (unit -> unit), v2 : int32) () : US0 = │
00:02:28 #3118 [verbose] > │ let v3 : bool = v2 < v0 │
00:02:28 #3119 [verbose] > │ if v3 then │
00:02:28 #3120 [verbose] > │ v1 () │
00:02:28 #3121 [verbose] > │ US0_0 │
00:02:28 #3122 [verbose] > │ else │
00:02:28 #3123 [verbose] > │ US0_1 │
00:02:28 #3124 [verbose] > │ and closure4 () (v0 : US0) : US1 = │
00:02:28 #3125 [verbose] > │ US1_0(v0) │
00:02:28 #3126 [verbose] > │ and closure5 (v0 : int32) (v1 : exn) : US1 = │
00:02:28 #3127 [verbose] > │ let v2 : unit option = None │
00:02:28 #3128 [verbose] > │ let mutable _v2 = v2 │
00:02:28 #3129 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:02:28 #3130 [verbose] > │ () │
00:02:28 #3131 [verbose] > │ #endif │
00:02:28 #3132 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:02:28 #3133 [verbose] > │ () │
00:02:28 #3134 [verbose] > │ #endif │
00:02:28 #3135 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:02:28 #3136 [verbose] > │ () │
00:02:28 #3137 [verbose] > │ #endif │
00:02:28 #3138 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:02:28 #3139 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:02:28 #3140 [verbose] > │ let v3 : (int32 -> unit) = System.Threading.Thread.Sleep │
00:02:28 #3141 [verbose] > │ v3 1 │
00:02:28 #3142 [verbose] > │ () │
00:02:28 #3143 [verbose] > │ #endif │
00:02:28 #3144 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:02:28 #3145 [verbose] > │ () │
00:02:28 #3146 [verbose] > │ #endif │
00:02:28 #3147 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:02:28 #3148 [verbose] > │ Unchecked.defaultof<unit> │
00:02:28 #3149 [verbose] > │ #endif │
00:02:28 #3150 [verbose] > │ |> fun x -> _v2 <- Some x │
00:02:28 #3151 [verbose] > │ _v2.Value │
00:02:28 #3152 [verbose] > │ US1_1 │
00:02:28 #3153 [verbose] > │ and method0 (v0 : int32, v1 : (unit -> unit), v2 : int32) : US0 = │
00:02:28 #3154 [verbose] > │ let v3 : (unit -> US0) = closure3(v0, v1, v2) │
00:02:28 #3155 [verbose] > │ let v4 : (US0 -> US1) = closure4() │
00:02:28 #3156 [verbose] > │ let v5 : (exn -> US1) = closure5(v2) │
00:02:28 #3157 [verbose] > │ let v6 : US1 = try v3 () |> v4 with ex -> v5 ex │
00:02:28 #3158 [verbose] > │ match v6 with │
00:02:28 #3159 [verbose] > │ | US1_1 -> (* None *) │
00:02:28 #3160 [verbose] > │ let v8 : int32 = v2 + 1 │
00:02:28 #3161 [verbose] > │ method0(v0, v1, v8) │
00:02:29 #3162 [verbose] > │ | US1_0(v7) -> (* Some *) │
00:02:29 #3163 [verbose] > │ v7 │
00:02:29 #3164 [verbose] > │ and closure2 (v0 : int32) (v1 : (unit -> unit)) : unit option = │
00:02:29 #3165 [verbose] > │ let v2 : int32 = 0 │
00:02:29 #3166 [verbose] > │ let v3 : US0 = method0(v0, v1, v2) │
00:02:29 #3167 [verbose] > │ match v3 with │
00:02:29 #3168 [verbose] > │ | US0_1 -> (* None *) │
00:02:29 #3169 [verbose] > │ let v5 : unit option = None │
00:02:29 #3170 [verbose] > │ v5 │
00:02:29 #3171 [verbose] > │ | US0_0 -> (* Some *) │
00:02:29 #3172 [verbose] > │ let v4 : unit option = Some () │
00:02:29 #3173 [verbose] > │ v4 │
00:02:29 #3174 [verbose] > │ and closure1 () (v0 : int32) : ((unit -> unit) -> unit option) = │
00:02:29 #3175 [verbose] > │ closure2(v0) │
00:02:29 #3176 [verbose] > │ let v0 : ((unit -> unit) -> System.IDisposable) = closure0() │
00:02:29 #3177 [verbose] > │ let new_disposable x = v0 x │
00:02:29 #3178 [verbose] > │ let v1 : (int32 -> ((unit -> unit) -> unit option)) = closure1() │
00:02:29 #3179 [verbose] > │ let retry_fn x = v1 x │
00:02:29 #3180 [verbose] > │ () │
00:02:29 #3181 [verbose] > │ │
00:02:29 #3182 [verbose] > │ │
00:02:29 #3183 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:34 #3184 [verbose] > [NbConvertApp] Converting notebook common.dib.ipynb to html
00:02:34 #3185 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:02:34 #3186 [verbose] > validate(nb)
00:02:35 #3187 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:02:35 #3188 [verbose] > return _pygments_highlight(
00:02:36 #3189 [verbose] > [NbConvertApp] Writing 401159 bytes to common.dib.html
00:02:37 #3190 [debug] executeAsync / exitCode: 0 / output.Length: 130609
00:02:37 #3191 [debug] main / executeCommand / exitCode: 0
00:02:37 #3192 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 console.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:02:42 #3193 [verbose] >
00:02:42 #3194 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:42 #3195 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:42 #3196 [verbose] > │ # console │
00:02:42 #3197 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:42 #3198 [verbose] >
00:02:42 #3199 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:42 #3200 [verbose] > // // test
00:02:42 #3201 [verbose] >
00:02:42 #3202 [verbose] > open testing
00:02:48 #3203 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:02:50 #3204 [verbose] >
00:02:50 #3205 [verbose] > ╭─[ 7.98s - stdout ]───────────────────────────────────────────────────────────╮
00:02:50 #3206 [verbose] > │ () │
00:02:50 #3207 [verbose] > │ │
00:02:50 #3208 [verbose] > │ │
00:02:50 #3209 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:50 #3210 [verbose] >
00:02:50 #3211 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:02:50 #3212 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:02:50 #3213 [verbose] > │ ## write_line │
00:02:50 #3214 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:50 #3215 [verbose] >
00:02:50 #3216 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:50 #3217 [verbose] > inl write_line obj : () =
00:02:50 #3218 [verbose] > $"System.Console.WriteLine !obj"
00:02:50 #3219 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8734924cc556d38ddd4fe9d78b6dfed880f3092692ae54965b235b33bbc96230\main.spi
00:02:50 #3220 [verbose] >
00:02:50 #3221 [verbose] > ╭─[ 400.73ms - stdout ]────────────────────────────────────────────────────────╮
00:02:50 #3222 [verbose] > │ () │
00:02:50 #3223 [verbose] > │ │
00:02:50 #3224 [verbose] > │ │
00:02:50 #3225 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:50 #3226 [verbose] >
00:02:50 #3227 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:50 #3228 [verbose] > inl write_line_ ~obj : () =
00:02:50 #3229 [verbose] > $"System.Console.WriteLine !obj"
00:02:51 #3230 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ffaaa2487bdb8cfacc66c52e1a4dcc7ef33c94cbbd6668b8d01a1910eaf1fc2a\main.spi
00:02:51 #3231 [verbose] >
00:02:51 #3232 [verbose] > ╭─[ 444.40ms - stdout ]────────────────────────────────────────────────────────╮
00:02:51 #3233 [verbose] > │ () │
00:02:51 #3234 [verbose] > │ │
00:02:51 #3235 [verbose] > │ │
00:02:51 #3236 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:51 #3237 [verbose] >
00:02:51 #3238 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:02:51 #3239 [verbose] > nominal console_color = $"System.ConsoleColor"
00:02:51 #3240 [verbose] >
00:02:51 #3241 [verbose] > inl reset_color () : () =
00:02:51 #3242 [verbose] > run_target function
00:02:51 #3243 [verbose] > | Fsharp => fun () => $"System.Console.ResetColor ()"
00:02:51 #3244 [verbose] > | _ => fun () => ()
00:02:51 #3245 [verbose] >
00:02:51 #3246 [verbose] > inl set_foreground_color (color : console_color) : () =
00:02:51 #3247 [verbose] > run_target function
00:02:51 #3248 [verbose] > | Fsharp => fun () => $"System.Console.ForegroundColor <- !color"
00:02:51 #3249 [verbose] > | _ => fun () => ()
00:02:51 #3250 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e5b6fb32e8bdd3db4dce6c028f792dc4c7b1febe5ab70e4c0ab6cf1a7a579ffe\main.spi
00:02:51 #3251 [verbose] >
00:02:51 #3252 [verbose] > ╭─[ 255.44ms - stdout ]────────────────────────────────────────────────────────╮
00:02:51 #3253 [verbose] > │ () │
00:02:51 #3254 [verbose] > │ │
00:02:51 #3255 [verbose] > │ │
00:02:51 #3256 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:55 #3257 [verbose] > [NbConvertApp] Converting notebook console.dib.ipynb to html
00:02:55 #3258 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:02:55 #3259 [verbose] > validate(nb)
00:02:57 #3260 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:02:57 #3261 [verbose] > return _pygments_highlight(
00:02:57 #3262 [verbose] > [NbConvertApp] Writing 276933 bytes to console.dib.html
00:02:59 #3263 [debug] executeAsync / exitCode: 0 / output.Length: 3869
00:02:59 #3264 [debug] main / executeCommand / exitCode: 0
00:02:59 #3265 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 date_time.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:03:05 #3266 [verbose] >
00:03:05 #3267 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:05 #3268 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:05 #3269 [verbose] > │ # date_time │
00:03:05 #3270 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:05 #3271 [verbose] >
00:03:05 #3272 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:05 #3273 [verbose] > open rust_operators
00:03:05 #3274 [verbose] > open sm'_operators
00:03:12 #3275 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\032c8b088372ab832664d98a64dd782e20000598cb6f954fca120c7fcc91e0cc\main.spi
00:03:14 #3276 [verbose] >
00:03:14 #3277 [verbose] > ╭─[ 8.73s - stdout ]───────────────────────────────────────────────────────────╮
00:03:14 #3278 [verbose] > │ () │
00:03:14 #3279 [verbose] > │ │
00:03:14 #3280 [verbose] > │ │
00:03:14 #3281 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:14 #3282 [verbose] >
00:03:14 #3283 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:14 #3284 [verbose] > // // test
00:03:14 #3285 [verbose] >
00:03:14 #3286 [verbose] > open testing
00:03:14 #3287 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\7d7acecd62a06a4005bd00e248722e32f4574e14d082c2ccfef1dbc96319cca4\main.spi
00:03:14 #3288 [verbose] >
00:03:14 #3289 [verbose] > ╭─[ 304.76ms - stdout ]────────────────────────────────────────────────────────╮
00:03:14 #3290 [verbose] > │ () │
00:03:14 #3291 [verbose] > │ │
00:03:14 #3292 [verbose] > │ │
00:03:14 #3293 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:14 #3294 [verbose] >
00:03:14 #3295 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:14 #3296 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:14 #3297 [verbose] > │ ## types │
00:03:14 #3298 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:14 #3299 [verbose] >
00:03:14 #3300 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:14 #3301 [verbose] > inl types () =
00:03:14 #3302 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"chrono::DateTime<$0>\")>]]
00:03:14 #3303 [verbose] > type chrono_DateTime<'T> = class end"
00:03:14 #3304 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"chrono::Local\")>]] type
00:03:14 #3305 [verbose] > chrono_Local = class end"
00:03:14 #3306 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"chrono::NaiveDateTime\")>]]
00:03:14 #3307 [verbose] > type chrono_NaiveDateTime = class end"
00:03:14 #3308 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"chrono::Utc\")>]] type
00:03:14 #3309 [verbose] > chrono_Utc = class end"
00:03:14 #3310 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::time::Duration\")>]]
00:03:14 #3311 [verbose] > type std_time_Duration = class end"
00:03:14 #3312 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2953bf1a005214994e27ad55daafee82b9bf77a24b4393dfffbdabcfb93b8c88\main.spi
00:03:15 #3313 [verbose] >
00:03:15 #3314 [verbose] > ╭─[ 564.88ms - stdout ]────────────────────────────────────────────────────────╮
00:03:15 #3315 [verbose] > │ () │
00:03:15 #3316 [verbose] > │ │
00:03:15 #3317 [verbose] > │ │
00:03:15 #3318 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:15 #3319 [verbose] >
00:03:15 #3320 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:15 #3321 [verbose] > nominal timestamp = i64
00:03:15 #3322 [verbose] > nominal duration = $"std_time_Duration"
00:03:15 #3323 [verbose] > nominal date_time = $"System.DateTime"
00:03:15 #3324 [verbose] > nominal date_time' t = $"chrono_DateTime<`t>"
00:03:15 #3325 [verbose] > nominal local = $"chrono_Local"
00:03:15 #3326 [verbose] > nominal naive_date_time = $"chrono_NaiveDateTime"
00:03:15 #3327 [verbose] > nominal utc = $"chrono_Utc"
00:03:15 #3328 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\6c0b3e9ca3c9907dd971325e2bd5b81c8762e32927fe516cb10ed1c7b55c1026\main.spi
00:03:15 #3329 [verbose] >
00:03:15 #3330 [verbose] > ╭─[ 370.63ms - stdout ]────────────────────────────────────────────────────────╮
00:03:15 #3331 [verbose] > │ () │
00:03:15 #3332 [verbose] > │ │
00:03:15 #3333 [verbose] > │ │
00:03:15 #3334 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:15 #3335 [verbose] >
00:03:15 #3336 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:15 #3337 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:15 #3338 [verbose] > │ ## date_time_milliseconds │
00:03:15 #3339 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:15 #3340 [verbose] >
00:03:15 #3341 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:15 #3342 [verbose] > inl date_time_milliseconds
00:03:15 #3343 [verbose] > (year : int) (month : int) (day : int) (hour : int) (minute : int) (second :
00:03:15 #3344 [verbose] > int) (millisecond : int)
00:03:15 #3345 [verbose] > : date_time
00:03:15 #3346 [verbose] > =
00:03:15 #3347 [verbose] > $'System.DateTime (!year, !month, !day, !hour, !minute, !second,
00:03:15 #3348 [verbose] > !millisecond)'
00:03:15 #3349 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0271928b63f588de19cca51efb9201b132137fa01b1be39316ed7b0961e2b9bd\main.spi
00:03:16 #3350 [verbose] >
00:03:16 #3351 [verbose] > ╭─[ 533.37ms - stdout ]────────────────────────────────────────────────────────╮
00:03:16 #3352 [verbose] > │ () │
00:03:16 #3353 [verbose] > │ │
00:03:16 #3354 [verbose] > │ │
00:03:16 #3355 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:16 #3356 [verbose] >
00:03:16 #3357 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:16 #3358 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:16 #3359 [verbose] > │ ## naive_utc │
00:03:16 #3360 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:16 #3361 [verbose] >
00:03:16 #3362 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:16 #3363 [verbose] > inl naive_utc (date_time : date_time' utc) : naive_date_time =
00:03:16 #3364 [verbose] > inl date_time = join date_time
00:03:16 #3365 [verbose] > !\($'"!date_time.naive_utc()"')
00:03:16 #3366 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f136473bb2a4a3e1002489893b76030aa31c96f68964997f6f4d7b246f3a412f\main.spi
00:03:16 #3367 [verbose] >
00:03:16 #3368 [verbose] > ╭─[ 590.53ms - stdout ]────────────────────────────────────────────────────────╮
00:03:16 #3369 [verbose] > │ () │
00:03:16 #3370 [verbose] > │ │
00:03:16 #3371 [verbose] > │ │
00:03:16 #3372 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:16 #3373 [verbose] >
00:03:16 #3374 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:16 #3375 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:16 #3376 [verbose] > │ ## to_local │
00:03:16 #3377 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:16 #3378 [verbose] >
00:03:16 #3379 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:16 #3380 [verbose] > inl to_local (date_time : date_time' utc) : date_time' local =
00:03:16 #3381 [verbose] > inl naive_date_time = date_time |> naive_utc
00:03:16 #3382 [verbose] > !\($'"chrono::offset::TimeZone::from_utc_datetime(&chrono::Local,
00:03:16 #3383 [verbose] > &!naive_date_time)"')
00:03:16 #3384 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0897c4a048fe611e4d311e87bf5cafaf43cd196958e8cbcf0b04408e4ee841c7\main.spi
00:03:17 #3385 [verbose] >
00:03:17 #3386 [verbose] > ╭─[ 528.34ms - stdout ]────────────────────────────────────────────────────────╮
00:03:17 #3387 [verbose] > │ () │
00:03:17 #3388 [verbose] > │ │
00:03:17 #3389 [verbose] > │ │
00:03:17 #3390 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:17 #3391 [verbose] >
00:03:17 #3392 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:17 #3393 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:17 #3394 [verbose] > │ ## from_timestamp' │
00:03:17 #3395 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:17 #3396 [verbose] >
00:03:17 #3397 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:17 #3398 [verbose] > inl from_timestamp' forall t {number; int}. (timestamp : t) : option (date_time'
00:03:17 #3399 [verbose] > utc) =
00:03:17 #3400 [verbose] > inl timestamp = join timestamp
00:03:17 #3401 [verbose] > inl result : optionm'.option' (date_time' utc) =
00:03:17 #3402 [verbose] > !\($'"chrono::DateTime::from_timestamp_micros(!timestamp / 1000i64)"')
00:03:17 #3403 [verbose] > result |> optionm'.unbox
00:03:17 #3404 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\dcb1b12acef991d762d9849665274969876964ba4adeba360022a8c7b6383e75\main.spi
00:03:17 #3405 [verbose] >
00:03:17 #3406 [verbose] > ╭─[ 498.53ms - stdout ]────────────────────────────────────────────────────────╮
00:03:17 #3407 [verbose] > │ () │
00:03:17 #3408 [verbose] > │ │
00:03:17 #3409 [verbose] > │ │
00:03:17 #3410 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:17 #3411 [verbose] >
00:03:17 #3412 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:17 #3413 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:17 #3414 [verbose] > │ ## ticks │
00:03:17 #3415 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:17 #3416 [verbose] >
00:03:17 #3417 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:17 #3418 [verbose] > inl ticks (date_time : date_time) : timestamp =
00:03:17 #3419 [verbose] > date_time |> $'_.Ticks'
00:03:18 #3420 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1f72db073283544225a1ed8197dcb6980e3e903370b4f91d0548fee8470046ed\main.spi
00:03:18 #3421 [verbose] >
00:03:18 #3422 [verbose] > ╭─[ 544.70ms - stdout ]────────────────────────────────────────────────────────╮
00:03:18 #3423 [verbose] > │ () │
00:03:18 #3424 [verbose] > │ │
00:03:18 #3425 [verbose] > │ │
00:03:18 #3426 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:18 #3427 [verbose] >
00:03:18 #3428 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:18 #3429 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:18 #3430 [verbose] > │ ## format │
00:03:18 #3431 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:18 #3432 [verbose] >
00:03:18 #3433 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:18 #3434 [verbose] > inl format (format : string) (date_time : date_time) : string =
00:03:18 #3435 [verbose] > $'!date_time.ToString' format
00:03:18 #3436 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9ba3706405fa5713e40e9c593d68455da31ea6f00be428bfc7312d71c43fed40\main.spi
00:03:18 #3437 [verbose] >
00:03:18 #3438 [verbose] > ╭─[ 394.09ms - stdout ]────────────────────────────────────────────────────────╮
00:03:18 #3439 [verbose] > │ () │
00:03:18 #3440 [verbose] > │ │
00:03:18 #3441 [verbose] > │ │
00:03:18 #3442 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:18 #3443 [verbose] >
00:03:18 #3444 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:18 #3445 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:18 #3446 [verbose] > │ ## format_iso8601 │
00:03:18 #3447 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:18 #3448 [verbose] >
00:03:18 #3449 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:18 #3450 [verbose] > inl format_iso8601 (date_time : date_time) =
00:03:18 #3451 [verbose] > date_time |> format "yyyy-MM-ddTHH-mm-ss.fff"
00:03:18 #3452 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\61b6d8ba614785689d10e277624ac581fbf2736b552fc6f6a268bfc278e21503\main.spi
00:03:19 #3453 [verbose] >
00:03:19 #3454 [verbose] > ╭─[ 327.50ms - stdout ]────────────────────────────────────────────────────────╮
00:03:19 #3455 [verbose] > │ () │
00:03:19 #3456 [verbose] > │ │
00:03:19 #3457 [verbose] > │ │
00:03:19 #3458 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:19 #3459 [verbose] >
00:03:19 #3460 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:19 #3461 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:19 #3462 [verbose] > │ ## format' │
00:03:19 #3463 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:19 #3464 [verbose] >
00:03:19 #3465 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:19 #3466 [verbose] > inl format' (format : string) (date_time : date_time' utc) : sm'.std_string =
00:03:19 #3467 [verbose] > inl format = #format
00:03:19 #3468 [verbose] > inl date_time = join date_time
00:03:19 #3469 [verbose] > !\($'"!date_time.format(!format).to_string()"')
00:03:19 #3470 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\188deee443dcf7f329cca702191cee12e0b05d39739160b8e9cac2317e87b672\main.spi
00:03:19 #3471 [verbose] >
00:03:19 #3472 [verbose] > ╭─[ 500.22ms - stdout ]────────────────────────────────────────────────────────╮
00:03:19 #3473 [verbose] > │ () │
00:03:19 #3474 [verbose] > │ │
00:03:19 #3475 [verbose] > │ │
00:03:19 #3476 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:19 #3477 [verbose] >
00:03:19 #3478 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:19 #3479 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:19 #3480 [verbose] > │ ## format'' │
00:03:19 #3481 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:19 #3482 [verbose] >
00:03:19 #3483 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:19 #3484 [verbose] > inl format'' (format : string) (date_time : date_time' _) : sm'.std_string =
00:03:19 #3485 [verbose] > inl format = #format
00:03:19 #3486 [verbose] > inl date_time = join date_time
00:03:19 #3487 [verbose] > !\($'"!date_time.format(!format).to_string()"')
00:03:19 #3488 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a6459429bb8466e82baafd2cdee900ee97b94d46b875a8a1dc4a62b2e2ba8e38\main.spi
00:03:19 #3489 [verbose] >
00:03:19 #3490 [verbose] > ╭─[ 279.78ms - stdout ]────────────────────────────────────────────────────────╮
00:03:19 #3491 [verbose] > │ () │
00:03:19 #3492 [verbose] > │ │
00:03:19 #3493 [verbose] > │ │
00:03:19 #3494 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:19 #3495 [verbose] >
00:03:19 #3496 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:19 #3497 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:19 #3498 [verbose] > │ ## format_timestamp │
00:03:19 #3499 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:19 #3500 [verbose] >
00:03:19 #3501 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:19 #3502 [verbose] > inl format_timestamp (timestamp : sm'.std_string) =
00:03:19 #3503 [verbose] > inl timestamp = join timestamp
00:03:19 #3504 [verbose] > timestamp
00:03:19 #3505 [verbose] > |> fun x => !\($'"!x.parse().unwrap()"') : i64
00:03:19 #3506 [verbose] > |> from_timestamp'
00:03:19 #3507 [verbose] > |> optionm.map fun x =>
00:03:19 #3508 [verbose] > x
00:03:19 #3509 [verbose] > |> to_local
00:03:19 #3510 [verbose] > |> format'' "%Y-%m-%d %H:%M:%S"
00:03:19 #3511 [verbose] > |> sm'.from_std_string
00:03:19 #3512 [verbose] > |> resultm.from_option
00:03:20 #3513 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\65523346cdbc0cf97b8f9f141c916f5cdca6d19fe5325b402c67164edf9cd20f\main.spi
00:03:20 #3514 [verbose] >
00:03:20 #3515 [verbose] > ╭─[ 360.83ms - stdout ]────────────────────────────────────────────────────────╮
00:03:20 #3516 [verbose] > │ () │
00:03:20 #3517 [verbose] > │ │
00:03:20 #3518 [verbose] > │ │
00:03:20 #3519 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:20 #3520 [verbose] >
00:03:20 #3521 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:20 #3522 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:20 #3523 [verbose] > │ ## duration_from_millis │
00:03:20 #3524 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:20 #3525 [verbose] >
00:03:20 #3526 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:20 #3527 [verbose] > inl duration_from_millis (ms : u64) : duration =
00:03:20 #3528 [verbose] > inl ms = join ms
00:03:20 #3529 [verbose] > !\($'"std::time::Duration::from_millis(!ms)"')
00:03:20 #3530 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d222b707827b406e707c275df273b034988b5e8a3cdc3a4ed32557fbebb8e9b0\main.spi
00:03:20 #3531 [verbose] >
00:03:20 #3532 [verbose] > ╭─[ 262.18ms - stdout ]────────────────────────────────────────────────────────╮
00:03:20 #3533 [verbose] > │ () │
00:03:20 #3534 [verbose] > │ │
00:03:20 #3535 [verbose] > │ │
00:03:20 #3536 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:20 #3537 [verbose] >
00:03:20 #3538 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:20 #3539 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:20 #3540 [verbose] > │ ## get_environment_variable │
00:03:20 #3541 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:20 #3542 [verbose] >
00:03:20 #3543 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:20 #3544 [verbose] > inl get_environment_variable (var : string) : string =
00:03:20 #3545 [verbose] > $"System.Environment.GetEnvironmentVariable !var"
00:03:20 #3546 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a8ecb04d75ee33bf8cb4dbf112d82accf2c5b14becc9ff2113b5dd16af1dbfba\main.spi
00:03:20 #3547 [verbose] >
00:03:20 #3548 [verbose] > ╭─[ 245.88ms - stdout ]────────────────────────────────────────────────────────╮
00:03:20 #3549 [verbose] > │ () │
00:03:20 #3550 [verbose] > │ │
00:03:20 #3551 [verbose] > │ │
00:03:20 #3552 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:20 #3553 [verbose] >
00:03:20 #3554 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:20 #3555 [verbose] > // // test
00:03:20 #3556 [verbose] >
00:03:20 #3557 [verbose] > inl test_guid () =
00:03:20 #3558 [verbose] > guid.new_guid "FEDCBA98-7654-3210-FEDC-BA9876543210"
00:03:21 #3559 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a1a1aae093484247dde4303049df188ea3521f3f47df7108cff654e834cc205d\main.spi
00:03:21 #3560 [verbose] >
00:03:21 #3561 [verbose] > ╭─[ 361.55ms - stdout ]────────────────────────────────────────────────────────╮
00:03:21 #3562 [verbose] > │ () │
00:03:21 #3563 [verbose] > │ │
00:03:21 #3564 [verbose] > │ │
00:03:21 #3565 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:21 #3566 [verbose] >
00:03:21 #3567 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:21 #3568 [verbose] > type timestamp_guid = guid.guid
00:03:21 #3569 [verbose] > type date_time_guid = guid.guid
00:03:21 #3570 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1f4c7c8fdef1bf50224b6732c2faeb1637e2652fe23ba59163d52cdbc782730c\main.spi
00:03:21 #3571 [verbose] >
00:03:21 #3572 [verbose] > ╭─[ 254.11ms - stdout ]────────────────────────────────────────────────────────╮
00:03:21 #3573 [verbose] > │ () │
00:03:21 #3574 [verbose] > │ │
00:03:21 #3575 [verbose] > │ │
00:03:21 #3576 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:21 #3577 [verbose] >
00:03:21 #3578 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:21 #3579 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:21 #3580 [verbose] > │ ## date_time_guid_from_date_time │
00:03:21 #3581 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:21 #3582 [verbose] >
00:03:21 #3583 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:21 #3584 [verbose] > inl date_time_guid_from_date_time (guid : guid.guid) (date_time : date_time) =
00:03:21 #3585 [verbose] > inl guid = guid |> sm'.obj_to_string
00:03:21 #3586 [verbose] > inl prefix = $'!date_time.ToString "yyyyMMdd-HHmm-ssff-ffff-f"' : string
00:03:21 #3587 [verbose] > $'`date_time_guid $"{!prefix}{!guid.[[!prefix.Length..]]}"' : date_time_guid
00:03:21 #3588 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\aafccfe21388732e6e367d17f9b4de300ec85a52d81c7adee3deccbc92af476a\main.spi
00:03:21 #3589 [verbose] >
00:03:21 #3590 [verbose] > ╭─[ 312.73ms - stdout ]────────────────────────────────────────────────────────╮
00:03:21 #3591 [verbose] > │ () │
00:03:21 #3592 [verbose] > │ │
00:03:21 #3593 [verbose] > │ │
00:03:21 #3594 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:21 #3595 [verbose] >
00:03:21 #3596 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:21 #3597 [verbose] > // // test
00:03:21 #3598 [verbose] >
00:03:21 #3599 [verbose] > date_time_guid_from_date_time (test_guid ()) $'System.DateTime.MinValue'
00:03:21 #3600 [verbose] > |> sm'.obj_to_string
00:03:21 #3601 [verbose] > |> _assert_eq' "00010101-0000-0000-0000-0a9876543210"
00:03:21 #3602 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2bc1ab8674226e2bc5133d1097a457d0e4ccb44b660459aa78a47788529bb766\main.spi
00:03:23 #3603 [verbose] >
00:03:23 #3604 [verbose] > ╭─[ 1.71s - stdout ]───────────────────────────────────────────────────────────╮
00:03:23 #3605 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:03:23 #3606 [verbose] > │ v0 │
00:03:23 #3607 [verbose] > │ and method0 () : unit = │
00:03:23 #3608 [verbose] > │ let v0 : string = "FEDCBA98-7654-3210-FEDC-BA9876543210" │
00:03:23 #3609 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:23 #3610 [verbose] > │ let v2 : System.DateTime = System.DateTime.MinValue │
00:03:23 #3611 [verbose] > │ let v3 : (System.Guid -> string) = _.ToString() │
00:03:23 #3612 [verbose] > │ let v4 : string = v3 v1 │
00:03:23 #3613 [verbose] > │ let v5 : string = v2.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:03:23 #3614 [verbose] > │ let v6 : System.Guid = System.Guid $"{v5}{v4.[v5.Length..]}" │
00:03:23 #3615 [verbose] > │ let v7 : (System.Guid -> string) = _.ToString() │
00:03:23 #3616 [verbose] > │ let v8 : string = v7 v6 │
00:03:23 #3617 [verbose] > │ let v9 : string = $"%A{v8}" │
00:03:23 #3618 [verbose] > │ System.Console.WriteLine v9 │
00:03:23 #3619 [verbose] > │ let v10 : string = "00010101-0000-0000-0000-0a9876543210" │
00:03:23 #3620 [verbose] > │ let v11 : bool = v8 = v10 │
00:03:23 #3621 [verbose] > │ let v13 : bool = │
00:03:23 #3622 [verbose] > │ if v11 then │
00:03:23 #3623 [verbose] > │ true │
00:03:23 #3624 [verbose] > │ else │
00:03:23 #3625 [verbose] > │ method1(v11) │
00:03:23 #3626 [verbose] > │ let v14 : string = $"__expect / actual: %A{v8} / expected: %A{v10}" │
00:03:23 #3627 [verbose] > │ let v15 : bool = v13 = false │
00:03:23 #3628 [verbose] > │ if v15 then │
00:03:23 #3629 [verbose] > │ failwith<unit> v14 │
00:03:23 #3630 [verbose] > │ method0() │
00:03:23 #3631 [verbose] > │ │
00:03:23 #3632 [verbose] > │ "00010101-0000-0000-0000-0a9876543210" │
00:03:23 #3633 [verbose] > │ │
00:03:23 #3634 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:23 #3635 [verbose] >
00:03:23 #3636 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:23 #3637 [verbose] > // // test
00:03:23 #3638 [verbose] >
00:03:23 #3639 [verbose] > date_time_guid_from_date_time (test_guid ()) $'System.DateTime.MaxValue'
00:03:23 #3640 [verbose] > |> sm'.obj_to_string
00:03:23 #3641 [verbose] > |> _assert_eq $'$"99991231-2359-5999-9999-9{(!test_guid() |>
00:03:23 #3642 [verbose] > string).[[^10..]]}"'
00:03:23 #3643 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0527db9e9851847b76794310fa3a73a09208b11cbaf58e5edf89c47cb3185594\main.spi
00:03:24 #3644 [verbose] >
00:03:24 #3645 [verbose] > ╭─[ 652.75ms - stdout ]────────────────────────────────────────────────────────╮
00:03:24 #3646 [verbose] > │ let rec closure0 () () : System.Guid = │
00:03:24 #3647 [verbose] > │ let v0 : string = "FEDCBA98-7654-3210-FEDC-BA9876543210" │
00:03:24 #3648 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:24 #3649 [verbose] > │ v1 │
00:03:24 #3650 [verbose] > │ and method1 (v0 : bool) : bool = │
00:03:24 #3651 [verbose] > │ v0 │
00:03:24 #3652 [verbose] > │ and method0 () : unit = │
00:03:24 #3653 [verbose] > │ let v0 : string = "FEDCBA98-7654-3210-FEDC-BA9876543210" │
00:03:24 #3654 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:24 #3655 [verbose] > │ let v2 : System.DateTime = System.DateTime.MaxValue │
00:03:24 #3656 [verbose] > │ let v3 : (System.Guid -> string) = _.ToString() │
00:03:24 #3657 [verbose] > │ let v4 : string = v3 v1 │
00:03:24 #3658 [verbose] > │ let v5 : string = v2.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:03:24 #3659 [verbose] > │ let v6 : System.Guid = System.Guid $"{v5}{v4.[v5.Length..]}" │
00:03:24 #3660 [verbose] > │ let v7 : (System.Guid -> string) = _.ToString() │
00:03:24 #3661 [verbose] > │ let v8 : string = v7 v6 │
00:03:24 #3662 [verbose] > │ let v9 : (unit -> System.Guid) = closure0() │
00:03:24 #3663 [verbose] > │ let v10 : string = $"99991231-2359-5999-9999-9{(v9() |> string).[ │
00:03:24 #3664 [verbose] > │ ^10..]}" │
00:03:24 #3665 [verbose] > │ let v11 : string = $"%A{v8}" │
00:03:24 #3666 [verbose] > │ System.Console.WriteLine v11 │
00:03:24 #3667 [verbose] > │ let v12 : bool = v8 = v10 │
00:03:24 #3668 [verbose] > │ let v14 : bool = │
00:03:24 #3669 [verbose] > │ if v12 then │
00:03:24 #3670 [verbose] > │ true │
00:03:24 #3671 [verbose] > │ else │
00:03:24 #3672 [verbose] > │ method1(v12) │
00:03:24 #3673 [verbose] > │ let v15 : string = $"__expect / actual: %A{v8} / expected: %A{v10}" │
00:03:24 #3674 [verbose] > │ let v16 : bool = v14 = false │
00:03:24 #3675 [verbose] > │ if v16 then │
00:03:24 #3676 [verbose] > │ failwith<unit> v15 │
00:03:24 #3677 [verbose] > │ method0() │
00:03:24 #3678 [verbose] > │ │
00:03:24 #3679 [verbose] > │ "99991231-2359-5999-9999-9a9876543210" │
00:03:24 #3680 [verbose] > │ │
00:03:24 #3681 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:24 #3682 [verbose] >
00:03:24 #3683 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:24 #3684 [verbose] > // // test
00:03:24 #3685 [verbose] >
00:03:24 #3686 [verbose] > date_time_guid_from_date_time (test_guid ()) $'System.DateTime.UnixEpoch'
00:03:24 #3687 [verbose] > |> sm'.obj_to_string
00:03:24 #3688 [verbose] > |> _assert_eq $'$"19700101-0000-0000-0000-0{(!test_guid () |>
00:03:24 #3689 [verbose] > string).[[^10..]]}"'
00:03:24 #3690 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\eee635e1b3085daf98a2c61c4adb992fe0fe441a41f8bff5de5c6953a2b4b89a\main.spi
00:03:24 #3691 [verbose] >
00:03:24 #3692 [verbose] > ╭─[ 595.65ms - stdout ]────────────────────────────────────────────────────────╮
00:03:24 #3693 [verbose] > │ let rec closure0 () () : System.Guid = │
00:03:24 #3694 [verbose] > │ let v0 : string = "FEDCBA98-7654-3210-FEDC-BA9876543210" │
00:03:24 #3695 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:24 #3696 [verbose] > │ v1 │
00:03:24 #3697 [verbose] > │ and method1 (v0 : bool) : bool = │
00:03:24 #3698 [verbose] > │ v0 │
00:03:24 #3699 [verbose] > │ and method0 () : unit = │
00:03:24 #3700 [verbose] > │ let v0 : string = "FEDCBA98-7654-3210-FEDC-BA9876543210" │
00:03:24 #3701 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:24 #3702 [verbose] > │ let v2 : System.DateTime = System.DateTime.UnixEpoch │
00:03:24 #3703 [verbose] > │ let v3 : (System.Guid -> string) = _.ToString() │
00:03:24 #3704 [verbose] > │ let v4 : string = v3 v1 │
00:03:24 #3705 [verbose] > │ let v5 : string = v2.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:03:24 #3706 [verbose] > │ let v6 : System.Guid = System.Guid $"{v5}{v4.[v5.Length..]}" │
00:03:24 #3707 [verbose] > │ let v7 : (System.Guid -> string) = _.ToString() │
00:03:24 #3708 [verbose] > │ let v8 : string = v7 v6 │
00:03:24 #3709 [verbose] > │ let v9 : (unit -> System.Guid) = closure0() │
00:03:24 #3710 [verbose] > │ let v10 : string = $"19700101-0000-0000-0000-0{(v9 () |> string).[ │
00:03:24 #3711 [verbose] > │ ^10..]}" │
00:03:24 #3712 [verbose] > │ let v11 : string = $"%A{v8}" │
00:03:24 #3713 [verbose] > │ System.Console.WriteLine v11 │
00:03:24 #3714 [verbose] > │ let v12 : bool = v8 = v10 │
00:03:24 #3715 [verbose] > │ let v14 : bool = │
00:03:24 #3716 [verbose] > │ if v12 then │
00:03:24 #3717 [verbose] > │ true │
00:03:24 #3718 [verbose] > │ else │
00:03:24 #3719 [verbose] > │ method1(v12) │
00:03:24 #3720 [verbose] > │ let v15 : string = $"__expect / actual: %A{v8} / expected: %A{v10}" │
00:03:24 #3721 [verbose] > │ let v16 : bool = v14 = false │
00:03:24 #3722 [verbose] > │ if v16 then │
00:03:24 #3723 [verbose] > │ failwith<unit> v15 │
00:03:24 #3724 [verbose] > │ method0() │
00:03:24 #3725 [verbose] > │ │
00:03:24 #3726 [verbose] > │ "19700101-0000-0000-0000-0a9876543210" │
00:03:24 #3727 [verbose] > │ │
00:03:24 #3728 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:24 #3729 [verbose] >
00:03:24 #3730 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:24 #3731 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:24 #3732 [verbose] > │ ## date_time_from_guid │
00:03:24 #3733 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:24 #3734 [verbose] >
00:03:24 #3735 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:24 #3736 [verbose] > inl date_time_from_guid (date_time_guid : date_time_guid) =
00:03:24 #3737 [verbose] > inl date_time_guid = date_time_guid |> sm'.obj_to_string
00:03:24 #3738 [verbose] > inl sm'_replace = join sm'.replace
00:03:24 #3739 [verbose] > run_target function
00:03:24 #3740 [verbose] > | Rust _ => fun () =>
00:03:24 #3741 [verbose] > $'System.DateTime.Parse (!date_time_guid.[[..24]] |> !sm'_replace
00:03:24 #3742 [verbose] > "-" "")' : date_time
00:03:24 #3743 [verbose] > | _ => fun () => $'System.DateTime.ParseExact (!date_time_guid.[[..24]]
00:03:24 #3744 [verbose] > |> !sm'_replace "-" "", "yyyyMMddHHmmssfffffff", null)' : date_time
00:03:25 #3745 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b686984d5eed2c5f378090cc0c2c1330dcb1372215ce16624a67a38cc7ae5404\main.spi
00:03:25 #3746 [verbose] >
00:03:25 #3747 [verbose] > ╭─[ 411.64ms - stdout ]────────────────────────────────────────────────────────╮
00:03:25 #3748 [verbose] > │ () │
00:03:25 #3749 [verbose] > │ │
00:03:25 #3750 [verbose] > │ │
00:03:25 #3751 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:25 #3752 [verbose] >
00:03:25 #3753 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:25 #3754 [verbose] > // // test
00:03:25 #3755 [verbose] >
00:03:25 #3756 [verbose] > date_time_from_guid (guid.new_guid "00010101-0000-0000-0000-0a9876543210")
00:03:25 #3757 [verbose] > |> _assert_eq' $'System.DateTime.MinValue'
00:03:25 #3758 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\aecf8098ad43c6532f2cb3eafac78d4bd4ad3bc0ccee37ee7833e505ea1578e8\main.spi
00:03:26 #3759 [verbose] >
00:03:26 #3760 [verbose] > ╭─[ 957.65ms - stdout ]────────────────────────────────────────────────────────╮
00:03:26 #3761 [verbose] > │ let rec closure2 (v0 : string, v1 : string) (v2 : string) : string = │
00:03:26 #3762 [verbose] > │ let v3 : string = v2.Replace (v0, v1) │
00:03:26 #3763 [verbose] > │ v3 │
00:03:26 #3764 [verbose] > │ and closure1 (v0 : string) (v1 : string) : (string -> string) = │
00:03:26 #3765 [verbose] > │ closure2(v0, v1) │
00:03:26 #3766 [verbose] > │ and closure0 () (v0 : string) : (string -> (string -> string)) = │
00:03:26 #3767 [verbose] > │ closure1(v0) │
00:03:26 #3768 [verbose] > │ and method1 () : (string -> (string -> (string -> string))) = │
00:03:26 #3769 [verbose] > │ closure0() │
00:03:26 #3770 [verbose] > │ and method2 (v0 : bool) : bool = │
00:03:26 #3771 [verbose] > │ v0 │
00:03:26 #3772 [verbose] > │ and method0 () : unit = │
00:03:26 #3773 [verbose] > │ let v0 : string = "00010101-0000-0000-0000-0a9876543210" │
00:03:26 #3774 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:26 #3775 [verbose] > │ let v2 : (System.Guid -> string) = _.ToString() │
00:03:26 #3776 [verbose] > │ let v3 : string = v2 v1 │
00:03:26 #3777 [verbose] > │ let v4 : (string -> (string -> (string -> string))) = method1() │
00:03:26 #3778 [verbose] > │ let v5 : System.DateTime option = None │
00:03:26 #3779 [verbose] > │ let mutable _v5 = v5 │
00:03:26 #3780 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:03:26 #3781 [verbose] > │ let v6 : System.DateTime = System.DateTime.Parse (v3.[..24] |> v4 "-" │
00:03:26 #3782 [verbose] > │ "") │
00:03:26 #3783 [verbose] > │ v6 │
00:03:26 #3784 [verbose] > │ #endif │
00:03:26 #3785 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:03:26 #3786 [verbose] > │ let v7 : System.DateTime = System.DateTime.Parse (v3.[..24] |> v4 "-" │
00:03:26 #3787 [verbose] > │ "") │
00:03:26 #3788 [verbose] > │ v7 │
00:03:26 #3789 [verbose] > │ #endif │
00:03:26 #3790 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:03:26 #3791 [verbose] > │ let v8 : System.DateTime = System.DateTime.Parse (v3.[..24] |> v4 "-" │
00:03:26 #3792 [verbose] > │ "") │
00:03:26 #3793 [verbose] > │ v8 │
00:03:26 #3794 [verbose] > │ #endif │
00:03:26 #3795 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:03:26 #3796 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:03:26 #3797 [verbose] > │ let v9 : System.DateTime = System.DateTime.ParseExact (v3.[..24] |> v4 │
00:03:26 #3798 [verbose] > │ "-" "", "yyyyMMddHHmmssfffffff", null) │
00:03:26 #3799 [verbose] > │ v9 │
00:03:26 #3800 [verbose] > │ #endif │
00:03:26 #3801 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:03:26 #3802 [verbose] > │ let v10 : System.DateTime = System.DateTime.ParseExact (v3.[..24] |> v4 │
00:03:26 #3803 [verbose] > │ "-" "", "yyyyMMddHHmmssfffffff", null) │
00:03:26 #3804 [verbose] > │ v10 │
00:03:26 #3805 [verbose] > │ #endif │
00:03:26 #3806 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:03:26 #3807 [verbose] > │ Unchecked.defaultof<System.DateTime> │
00:03:26 #3808 [verbose] > │ #endif │
00:03:26 #3809 [verbose] > │ |> fun x -> _v5 <- Some x │
00:03:26 #3810 [verbose] > │ let v11 : System.DateTime = _v5.Value │
00:03:26 #3811 [verbose] > │ let v12 : System.DateTime = System.DateTime.MinValue │
00:03:26 #3812 [verbose] > │ let v13 : string = $"%A{v11}" │
00:03:26 #3813 [verbose] > │ System.Console.WriteLine v13 │
00:03:26 #3814 [verbose] > │ let v14 : bool = v11 = v12 │
00:03:26 #3815 [verbose] > │ let v16 : bool = │
00:03:26 #3816 [verbose] > │ if v14 then │
00:03:26 #3817 [verbose] > │ true │
00:03:26 #3818 [verbose] > │ else │
00:03:26 #3819 [verbose] > │ method2(v14) │
00:03:26 #3820 [verbose] > │ let v17 : string = $"__expect / actual: %A{v11} / expected: %A{v12}" │
00:03:26 #3821 [verbose] > │ let v18 : bool = v16 = false │
00:03:26 #3822 [verbose] > │ if v18 then │
00:03:26 #3823 [verbose] > │ failwith<unit> v17 │
00:03:26 #3824 [verbose] > │ method0() │
00:03:26 #3825 [verbose] > │ │
00:03:26 #3826 [verbose] > │ 0001-01-01 12:00:00 AM │
00:03:26 #3827 [verbose] > │ │
00:03:26 #3828 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:26 #3829 [verbose] >
00:03:26 #3830 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:26 #3831 [verbose] > // // test
00:03:26 #3832 [verbose] >
00:03:26 #3833 [verbose] > date_time_from_guid (guid.new_guid $'$"99991231-2359-5999-9999-9{(!test_guid ()
00:03:26 #3834 [verbose] > |> string).[[^10..]]}"')
00:03:26 #3835 [verbose] > |> _assert_eq' $'System.DateTime.MaxValue'
00:03:26 #3836 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\81684ed12d4e63c9694a345a484aef409c312e7f7ce1b1d1f0755dceb49c67f1\main.spi
00:03:26 #3837 [verbose] >
00:03:26 #3838 [verbose] > ╭─[ 528.45ms - stdout ]────────────────────────────────────────────────────────╮
00:03:26 #3839 [verbose] > │ let rec closure0 () () : System.Guid = │
00:03:26 #3840 [verbose] > │ let v0 : string = "FEDCBA98-7654-3210-FEDC-BA9876543210" │
00:03:26 #3841 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:26 #3842 [verbose] > │ v1 │
00:03:26 #3843 [verbose] > │ and closure3 (v0 : string, v1 : string) (v2 : string) : string = │
00:03:26 #3844 [verbose] > │ let v3 : string = v2.Replace (v0, v1) │
00:03:26 #3845 [verbose] > │ v3 │
00:03:26 #3846 [verbose] > │ and closure2 (v0 : string) (v1 : string) : (string -> string) = │
00:03:26 #3847 [verbose] > │ closure3(v0, v1) │
00:03:26 #3848 [verbose] > │ and closure1 () (v0 : string) : (string -> (string -> string)) = │
00:03:26 #3849 [verbose] > │ closure2(v0) │
00:03:26 #3850 [verbose] > │ and method1 () : (string -> (string -> (string -> string))) = │
00:03:26 #3851 [verbose] > │ closure1() │
00:03:26 #3852 [verbose] > │ and method2 (v0 : bool) : bool = │
00:03:26 #3853 [verbose] > │ v0 │
00:03:26 #3854 [verbose] > │ and method0 () : unit = │
00:03:26 #3855 [verbose] > │ let v0 : (unit -> System.Guid) = closure0() │
00:03:26 #3856 [verbose] > │ let v1 : string = $"99991231-2359-5999-9999-9{(v0 () |> string).[ │
00:03:26 #3857 [verbose] > │ ^10..]}" │
00:03:26 #3858 [verbose] > │ let v2 : System.Guid = System.Guid v1 │
00:03:26 #3859 [verbose] > │ let v3 : (System.Guid -> string) = _.ToString() │
00:03:26 #3860 [verbose] > │ let v4 : string = v3 v2 │
00:03:26 #3861 [verbose] > │ let v5 : (string -> (string -> (string -> string))) = method1() │
00:03:26 #3862 [verbose] > │ let v6 : System.DateTime option = None │
00:03:26 #3863 [verbose] > │ let mutable _v6 = v6 │
00:03:26 #3864 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:03:26 #3865 [verbose] > │ let v7 : System.DateTime = System.DateTime.Parse (v4.[..24] |> v5 "-" │
00:03:26 #3866 [verbose] > │ "") │
00:03:26 #3867 [verbose] > │ v7 │
00:03:26 #3868 [verbose] > │ #endif │
00:03:26 #3869 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:03:26 #3870 [verbose] > │ let v8 : System.DateTime = System.DateTime.Parse (v4.[..24] |> v5 "-" │
00:03:26 #3871 [verbose] > │ "") │
00:03:26 #3872 [verbose] > │ v8 │
00:03:26 #3873 [verbose] > │ #endif │
00:03:26 #3874 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:03:26 #3875 [verbose] > │ let v9 : System.DateTime = System.DateTime.Parse (v4.[..24] |> v5 "-" │
00:03:26 #3876 [verbose] > │ "") │
00:03:26 #3877 [verbose] > │ v9 │
00:03:26 #3878 [verbose] > │ #endif │
00:03:26 #3879 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:03:26 #3880 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:03:26 #3881 [verbose] > │ let v10 : System.DateTime = System.DateTime.ParseExact (v4.[..24] |> v5 │
00:03:26 #3882 [verbose] > │ "-" "", "yyyyMMddHHmmssfffffff", null) │
00:03:26 #3883 [verbose] > │ v10 │
00:03:26 #3884 [verbose] > │ #endif │
00:03:26 #3885 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:03:26 #3886 [verbose] > │ let v11 : System.DateTime = System.DateTime.ParseExact (v4.[..24] |> v5 │
00:03:26 #3887 [verbose] > │ "-" "", "yyyyMMddHHmmssfffffff", null) │
00:03:26 #3888 [verbose] > │ v11 │
00:03:26 #3889 [verbose] > │ #endif │
00:03:26 #3890 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:03:26 #3891 [verbose] > │ Unchecked.defaultof<System.DateTime> │
00:03:26 #3892 [verbose] > │ #endif │
00:03:26 #3893 [verbose] > │ |> fun x -> _v6 <- Some x │
00:03:26 #3894 [verbose] > │ let v12 : System.DateTime = _v6.Value │
00:03:26 #3895 [verbose] > │ let v13 : System.DateTime = System.DateTime.MaxValue │
00:03:26 #3896 [verbose] > │ let v14 : string = $"%A{v12}" │
00:03:26 #3897 [verbose] > │ System.Console.WriteLine v14 │
00:03:26 #3898 [verbose] > │ let v15 : bool = v12 = v13 │
00:03:26 #3899 [verbose] > │ let v17 : bool = │
00:03:26 #3900 [verbose] > │ if v15 then │
00:03:26 #3901 [verbose] > │ true │
00:03:26 #3902 [verbose] > │ else │
00:03:26 #3903 [verbose] > │ method2(v15) │
00:03:26 #3904 [verbose] > │ let v18 : string = $"__expect / actual: %A{v12} / expected: %A{v13}" │
00:03:26 #3905 [verbose] > │ let v19 : bool = v17 = false │
00:03:26 #3906 [verbose] > │ if v19 then │
00:03:26 #3907 [verbose] > │ failwith<unit> v18 │
00:03:26 #3908 [verbose] > │ method0() │
00:03:26 #3909 [verbose] > │ │
00:03:26 #3910 [verbose] > │ 9999-12-31 11:59:59 PM │
00:03:26 #3911 [verbose] > │ │
00:03:26 #3912 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:26 #3913 [verbose] >
00:03:26 #3914 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:26 #3915 [verbose] > // // test
00:03:26 #3916 [verbose] >
00:03:26 #3917 [verbose] > date_time_from_guid (guid.new_guid $'$"19700101-0000-0000-0000-0{(!test_guid ()
00:03:26 #3918 [verbose] > |> string).[[^10..]]}"')
00:03:26 #3919 [verbose] > |> _assert_eq' $'System.DateTime.UnixEpoch'
00:03:27 #3920 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8569dfc0c9e7110dbc36e30a6c0d81f49a196488a0a0f6131f3a0bda7835383c\main.spi
00:03:27 #3921 [verbose] >
00:03:27 #3922 [verbose] > ╭─[ 480.90ms - stdout ]────────────────────────────────────────────────────────╮
00:03:27 #3923 [verbose] > │ let rec closure0 () () : System.Guid = │
00:03:27 #3924 [verbose] > │ let v0 : string = "FEDCBA98-7654-3210-FEDC-BA9876543210" │
00:03:27 #3925 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:27 #3926 [verbose] > │ v1 │
00:03:27 #3927 [verbose] > │ and closure3 (v0 : string, v1 : string) (v2 : string) : string = │
00:03:27 #3928 [verbose] > │ let v3 : string = v2.Replace (v0, v1) │
00:03:27 #3929 [verbose] > │ v3 │
00:03:27 #3930 [verbose] > │ and closure2 (v0 : string) (v1 : string) : (string -> string) = │
00:03:27 #3931 [verbose] > │ closure3(v0, v1) │
00:03:27 #3932 [verbose] > │ and closure1 () (v0 : string) : (string -> (string -> string)) = │
00:03:27 #3933 [verbose] > │ closure2(v0) │
00:03:27 #3934 [verbose] > │ and method1 () : (string -> (string -> (string -> string))) = │
00:03:27 #3935 [verbose] > │ closure1() │
00:03:27 #3936 [verbose] > │ and method2 (v0 : bool) : bool = │
00:03:27 #3937 [verbose] > │ v0 │
00:03:27 #3938 [verbose] > │ and method0 () : unit = │
00:03:27 #3939 [verbose] > │ let v0 : (unit -> System.Guid) = closure0() │
00:03:27 #3940 [verbose] > │ let v1 : string = $"19700101-0000-0000-0000-0{(v0 () |> string).[ │
00:03:27 #3941 [verbose] > │ ^10..]}" │
00:03:27 #3942 [verbose] > │ let v2 : System.Guid = System.Guid v1 │
00:03:27 #3943 [verbose] > │ let v3 : (System.Guid -> string) = _.ToString() │
00:03:27 #3944 [verbose] > │ let v4 : string = v3 v2 │
00:03:27 #3945 [verbose] > │ let v5 : (string -> (string -> (string -> string))) = method1() │
00:03:27 #3946 [verbose] > │ let v6 : System.DateTime option = None │
00:03:27 #3947 [verbose] > │ let mutable _v6 = v6 │
00:03:27 #3948 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:03:27 #3949 [verbose] > │ let v7 : System.DateTime = System.DateTime.Parse (v4.[..24] |> v5 "-" │
00:03:27 #3950 [verbose] > │ "") │
00:03:27 #3951 [verbose] > │ v7 │
00:03:27 #3952 [verbose] > │ #endif │
00:03:27 #3953 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:03:27 #3954 [verbose] > │ let v8 : System.DateTime = System.DateTime.Parse (v4.[..24] |> v5 "-" │
00:03:27 #3955 [verbose] > │ "") │
00:03:27 #3956 [verbose] > │ v8 │
00:03:27 #3957 [verbose] > │ #endif │
00:03:27 #3958 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:03:27 #3959 [verbose] > │ let v9 : System.DateTime = System.DateTime.Parse (v4.[..24] |> v5 "-" │
00:03:27 #3960 [verbose] > │ "") │
00:03:27 #3961 [verbose] > │ v9 │
00:03:27 #3962 [verbose] > │ #endif │
00:03:27 #3963 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:03:27 #3964 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:03:27 #3965 [verbose] > │ let v10 : System.DateTime = System.DateTime.ParseExact (v4.[..24] |> v5 │
00:03:27 #3966 [verbose] > │ "-" "", "yyyyMMddHHmmssfffffff", null) │
00:03:27 #3967 [verbose] > │ v10 │
00:03:27 #3968 [verbose] > │ #endif │
00:03:27 #3969 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:03:27 #3970 [verbose] > │ let v11 : System.DateTime = System.DateTime.ParseExact (v4.[..24] |> v5 │
00:03:27 #3971 [verbose] > │ "-" "", "yyyyMMddHHmmssfffffff", null) │
00:03:27 #3972 [verbose] > │ v11 │
00:03:27 #3973 [verbose] > │ #endif │
00:03:27 #3974 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:03:27 #3975 [verbose] > │ Unchecked.defaultof<System.DateTime> │
00:03:27 #3976 [verbose] > │ #endif │
00:03:27 #3977 [verbose] > │ |> fun x -> _v6 <- Some x │
00:03:27 #3978 [verbose] > │ let v12 : System.DateTime = _v6.Value │
00:03:27 #3979 [verbose] > │ let v13 : System.DateTime = System.DateTime.UnixEpoch │
00:03:27 #3980 [verbose] > │ let v14 : string = $"%A{v12}" │
00:03:27 #3981 [verbose] > │ System.Console.WriteLine v14 │
00:03:27 #3982 [verbose] > │ let v15 : bool = v12 = v13 │
00:03:27 #3983 [verbose] > │ let v17 : bool = │
00:03:27 #3984 [verbose] > │ if v15 then │
00:03:27 #3985 [verbose] > │ true │
00:03:27 #3986 [verbose] > │ else │
00:03:27 #3987 [verbose] > │ method2(v15) │
00:03:27 #3988 [verbose] > │ let v18 : string = $"__expect / actual: %A{v12} / expected: %A{v13}" │
00:03:27 #3989 [verbose] > │ let v19 : bool = v17 = false │
00:03:27 #3990 [verbose] > │ if v19 then │
00:03:27 #3991 [verbose] > │ failwith<unit> v18 │
00:03:27 #3992 [verbose] > │ method0() │
00:03:27 #3993 [verbose] > │ │
00:03:27 #3994 [verbose] > │ 1970-01-01 12:00:00 AM │
00:03:27 #3995 [verbose] > │ │
00:03:27 #3996 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:27 #3997 [verbose] >
00:03:27 #3998 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:27 #3999 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:27 #4000 [verbose] > │ ## timestamp_guid_from_timestamp │
00:03:27 #4001 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:27 #4002 [verbose] >
00:03:27 #4003 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:27 #4004 [verbose] > inl timestamp_guid_from_timestamp (guid : guid.guid) (timestamp : timestamp) :
00:03:27 #4005 [verbose] > timestamp_guid =
00:03:27 #4006 [verbose] > inl guid = guid |> sm'.obj_to_string
00:03:27 #4007 [verbose] > inl timestamp = timestamp |> sm'.obj_to_string |> sm'.pad_left 18i32 '0'
00:03:27 #4008 [verbose] > $'`timestamp_guid
00:03:27 #4009 [verbose] > $"{!timestamp.[[0..7]]}-{!timestamp.[[8..11]]}-{!timestamp.[[12..15]]}-{!timesta
00:03:27 #4010 [verbose] > mp.[[16..17]]}{!guid.[[21..]]}"'
00:03:27 #4011 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\dd804a77723e420c5a57736cdbf2be77fb03a4a57c3bafd4c11f90b33078be92\main.spi
00:03:27 #4012 [verbose] >
00:03:27 #4013 [verbose] > ╭─[ 352.17ms - stdout ]────────────────────────────────────────────────────────╮
00:03:27 #4014 [verbose] > │ () │
00:03:27 #4015 [verbose] > │ │
00:03:27 #4016 [verbose] > │ │
00:03:27 #4017 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:27 #4018 [verbose] >
00:03:27 #4019 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:27 #4020 [verbose] > // // test
00:03:27 #4021 [verbose] >
00:03:27 #4022 [verbose] > timestamp_guid_from_timestamp (test_guid ()) (timestamp 0i64)
00:03:27 #4023 [verbose] > |> _assert_eq' (guid.new_guid "00000000-0000-0000-00dc-ba9876543210")
00:03:27 #4024 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\bc6fb7c436c18c8aa92ececa628adf1dd954502262dc8723cfa55d404ed98e8a\main.spi
00:03:28 #4025 [verbose] >
00:03:28 #4026 [verbose] > ╭─[ 433.44ms - stdout ]────────────────────────────────────────────────────────╮
00:03:28 #4027 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:03:28 #4028 [verbose] > │ v0 │
00:03:28 #4029 [verbose] > │ and method0 () : unit = │
00:03:28 #4030 [verbose] > │ let v0 : string = "FEDCBA98-7654-3210-FEDC-BA9876543210" │
00:03:28 #4031 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:28 #4032 [verbose] > │ let v2 : (System.Guid -> string) = _.ToString() │
00:03:28 #4033 [verbose] > │ let v3 : string = v2 v1 │
00:03:28 #4034 [verbose] > │ let v4 : (int64 -> string) = _.ToString() │
00:03:28 #4035 [verbose] > │ let v5 : string = v4 0L │
00:03:28 #4036 [verbose] > │ let v6 : string = v5.PadLeft (18, '0') │
00:03:28 #4037 [verbose] > │ let v7 : System.Guid = System.Guid $"{v6.[0..7]}-{v6.[8..11]}-{v6.[ │
00:03:28 #4038 [verbose] > │ 12..15]}-{v6.[16..17]}{v3.[21..]}" │
00:03:28 #4039 [verbose] > │ let v8 : string = "00000000-0000-0000-00dc-ba9876543210" │
00:03:28 #4040 [verbose] > │ let v9 : System.Guid = System.Guid v8 │
00:03:28 #4041 [verbose] > │ let v10 : string = $"%A{v7}" │
00:03:28 #4042 [verbose] > │ System.Console.WriteLine v10 │
00:03:28 #4043 [verbose] > │ let v11 : bool = v7 = v9 │
00:03:28 #4044 [verbose] > │ let v13 : bool = │
00:03:28 #4045 [verbose] > │ if v11 then │
00:03:28 #4046 [verbose] > │ true │
00:03:28 #4047 [verbose] > │ else │
00:03:28 #4048 [verbose] > │ method1(v11) │
00:03:28 #4049 [verbose] > │ let v14 : string = $"__expect / actual: %A{v7} / expected: %A{v9}" │
00:03:28 #4050 [verbose] > │ let v15 : bool = v13 = false │
00:03:28 #4051 [verbose] > │ if v15 then │
00:03:28 #4052 [verbose] > │ failwith<unit> v14 │
00:03:28 #4053 [verbose] > │ method0() │
00:03:28 #4054 [verbose] > │ │
00:03:28 #4055 [verbose] > │ 00000000-0000-0000-00dc-ba9876543210 │
00:03:28 #4056 [verbose] > │ │
00:03:28 #4057 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:28 #4058 [verbose] >
00:03:28 #4059 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:28 #4060 [verbose] > // // test
00:03:28 #4061 [verbose] >
00:03:28 #4062 [verbose] > timestamp_guid_from_timestamp (test_guid ()) (timestamp 999999999999999999i64)
00:03:28 #4063 [verbose] > |> _assert_eq' (guid.new_guid $'$"99999999-9999-9999-99dc-b{(!test_guid () |>
00:03:28 #4064 [verbose] > string).[[^10..]]}"')
00:03:28 #4065 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\441c8e928eec8c522bfadd0c955cacc7bce7fab0444bc17cec51763b63744f5c\main.spi
00:03:28 #4066 [verbose] >
00:03:28 #4067 [verbose] > ╭─[ 431.49ms - stdout ]────────────────────────────────────────────────────────╮
00:03:28 #4068 [verbose] > │ let rec closure0 () () : System.Guid = │
00:03:28 #4069 [verbose] > │ let v0 : string = "FEDCBA98-7654-3210-FEDC-BA9876543210" │
00:03:28 #4070 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:28 #4071 [verbose] > │ v1 │
00:03:28 #4072 [verbose] > │ and method1 (v0 : bool) : bool = │
00:03:28 #4073 [verbose] > │ v0 │
00:03:28 #4074 [verbose] > │ and method0 () : unit = │
00:03:28 #4075 [verbose] > │ let v0 : string = "FEDCBA98-7654-3210-FEDC-BA9876543210" │
00:03:28 #4076 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:28 #4077 [verbose] > │ let v2 : (System.Guid -> string) = _.ToString() │
00:03:28 #4078 [verbose] > │ let v3 : string = v2 v1 │
00:03:28 #4079 [verbose] > │ let v4 : (int64 -> string) = _.ToString() │
00:03:28 #4080 [verbose] > │ let v5 : string = v4 999999999999999999L │
00:03:28 #4081 [verbose] > │ let v6 : string = v5.PadLeft (18, '0') │
00:03:28 #4082 [verbose] > │ let v7 : System.Guid = System.Guid $"{v6.[0..7]}-{v6.[8..11]}-{v6.[ │
00:03:28 #4083 [verbose] > │ 12..15]}-{v6.[16..17]}{v3.[21..]}" │
00:03:28 #4084 [verbose] > │ let v8 : (unit -> System.Guid) = closure0() │
00:03:28 #4085 [verbose] > │ let v9 : string = $"99999999-9999-9999-99dc-b{(v8 () |> string).[ │
00:03:28 #4086 [verbose] > │ ^10..]}" │
00:03:28 #4087 [verbose] > │ let v10 : System.Guid = System.Guid v9 │
00:03:28 #4088 [verbose] > │ let v11 : string = $"%A{v7}" │
00:03:28 #4089 [verbose] > │ System.Console.WriteLine v11 │
00:03:28 #4090 [verbose] > │ let v12 : bool = v7 = v10 │
00:03:28 #4091 [verbose] > │ let v14 : bool = │
00:03:28 #4092 [verbose] > │ if v12 then │
00:03:28 #4093 [verbose] > │ true │
00:03:28 #4094 [verbose] > │ else │
00:03:28 #4095 [verbose] > │ method1(v12) │
00:03:28 #4096 [verbose] > │ let v15 : string = $"__expect / actual: %A{v7} / expected: %A{v10}" │
00:03:28 #4097 [verbose] > │ let v16 : bool = v14 = false │
00:03:28 #4098 [verbose] > │ if v16 then │
00:03:28 #4099 [verbose] > │ failwith<unit> v15 │
00:03:28 #4100 [verbose] > │ method0() │
00:03:28 #4101 [verbose] > │ │
00:03:28 #4102 [verbose] > │ 99999999-9999-9999-99dc-ba9876543210 │
00:03:28 #4103 [verbose] > │ │
00:03:28 #4104 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:28 #4105 [verbose] >
00:03:28 #4106 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:28 #4107 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:28 #4108 [verbose] > │ ## timestamp_from_guid │
00:03:28 #4109 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:28 #4110 [verbose] >
00:03:28 #4111 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:28 #4112 [verbose] > inl timestamp_from_guid (guid : date_time_guid) : timestamp =
00:03:28 #4113 [verbose] > inl guid = guid |> sm'.obj_to_string
00:03:28 #4114 [verbose] > $'`i64
00:03:28 #4115 [verbose] > $"{!guid.[[0..7]]}{!guid.[[9..12]]}{!guid.[[14..17]]}{!guid.[[19..20]]}"'
00:03:28 #4116 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8519f31e8e492418788d8965b72ccddd5a9a0e1af15705892adc9680bd66a8e9\main.spi
00:03:29 #4117 [verbose] >
00:03:29 #4118 [verbose] > ╭─[ 1.09s - stdout ]───────────────────────────────────────────────────────────╮
00:03:29 #4119 [verbose] > │ () │
00:03:29 #4120 [verbose] > │ │
00:03:29 #4121 [verbose] > │ │
00:03:29 #4122 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:29 #4123 [verbose] >
00:03:29 #4124 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:29 #4125 [verbose] > // // test
00:03:29 #4126 [verbose] >
00:03:29 #4127 [verbose] > timestamp_from_guid (guid.new_guid "00000000-0000-0000-00dc-ba9876543210")
00:03:29 #4128 [verbose] > |> _assert_eq (timestamp 0)
00:03:29 #4129 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ce3d2cef896a7bc4e764efd542594127898cafd9915ca93eafc126c63201b629\main.spi
00:03:30 #4130 [verbose] >
00:03:30 #4131 [verbose] > ╭─[ 523.83ms - stdout ]────────────────────────────────────────────────────────╮
00:03:30 #4132 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:03:30 #4133 [verbose] > │ v0 │
00:03:30 #4134 [verbose] > │ and method0 () : unit = │
00:03:30 #4135 [verbose] > │ let v0 : string = "00000000-0000-0000-00dc-ba9876543210" │
00:03:30 #4136 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:30 #4137 [verbose] > │ let v2 : (System.Guid -> string) = _.ToString() │
00:03:30 #4138 [verbose] > │ let v3 : string = v2 v1 │
00:03:30 #4139 [verbose] > │ let v4 : int64 = int64 $"{v3.[0..7]}{v3.[9..12]}{v3.[14..17]}{v3.[ │
00:03:30 #4140 [verbose] > │ 19..20]}" │
00:03:30 #4141 [verbose] > │ let v5 : string = $"%A{v4}" │
00:03:30 #4142 [verbose] > │ System.Console.WriteLine v5 │
00:03:30 #4143 [verbose] > │ let v6 : bool = v4 = 0L │
00:03:30 #4144 [verbose] > │ let v8 : bool = │
00:03:30 #4145 [verbose] > │ if v6 then │
00:03:30 #4146 [verbose] > │ true │
00:03:30 #4147 [verbose] > │ else │
00:03:30 #4148 [verbose] > │ method1(v6) │
00:03:30 #4149 [verbose] > │ let v9 : string = $"__expect / actual: %A{v4} / expected: %A{0L}" │
00:03:30 #4150 [verbose] > │ let v10 : bool = v8 = false │
00:03:30 #4151 [verbose] > │ if v10 then │
00:03:30 #4152 [verbose] > │ failwith<unit> v9 │
00:03:30 #4153 [verbose] > │ method0() │
00:03:30 #4154 [verbose] > │ │
00:03:30 #4155 [verbose] > │ 0L │
00:03:30 #4156 [verbose] > │ │
00:03:30 #4157 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:30 #4158 [verbose] >
00:03:30 #4159 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:30 #4160 [verbose] > // // test
00:03:30 #4161 [verbose] >
00:03:30 #4162 [verbose] > timestamp_from_guid (guid.new_guid $'$"99999999-9999-9999-99{(!test_guid () |>
00:03:30 #4163 [verbose] > string).[[^14..]]}"')
00:03:30 #4164 [verbose] > |> _assert_eq (timestamp 999999999999999999)
00:03:30 #4165 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e42bc905811dcb453d867e514b2307821753b982c37bc770aef9094e101946b2\main.spi
00:03:31 #4166 [verbose] >
00:03:31 #4167 [verbose] > ╭─[ 745.33ms - stdout ]────────────────────────────────────────────────────────╮
00:03:31 #4168 [verbose] > │ let rec closure0 () () : System.Guid = │
00:03:31 #4169 [verbose] > │ let v0 : string = "FEDCBA98-7654-3210-FEDC-BA9876543210" │
00:03:31 #4170 [verbose] > │ let v1 : System.Guid = System.Guid v0 │
00:03:31 #4171 [verbose] > │ v1 │
00:03:31 #4172 [verbose] > │ and method1 (v0 : bool) : bool = │
00:03:31 #4173 [verbose] > │ v0 │
00:03:31 #4174 [verbose] > │ and method0 () : unit = │
00:03:31 #4175 [verbose] > │ let v0 : (unit -> System.Guid) = closure0() │
00:03:31 #4176 [verbose] > │ let v1 : string = $"99999999-9999-9999-99{(v0 () |> string).[^14..]}" │
00:03:31 #4177 [verbose] > │ let v2 : System.Guid = System.Guid v1 │
00:03:31 #4178 [verbose] > │ let v3 : (System.Guid -> string) = _.ToString() │
00:03:31 #4179 [verbose] > │ let v4 : string = v3 v2 │
00:03:31 #4180 [verbose] > │ let v5 : int64 = int64 $"{v4.[0..7]}{v4.[9..12]}{v4.[14..17]}{v4.[ │
00:03:31 #4181 [verbose] > │ 19..20]}" │
00:03:31 #4182 [verbose] > │ let v6 : string = $"%A{v5}" │
00:03:31 #4183 [verbose] > │ System.Console.WriteLine v6 │
00:03:31 #4184 [verbose] > │ let v7 : bool = v5 = 999999999999999999L │
00:03:31 #4185 [verbose] > │ let v9 : bool = │
00:03:31 #4186 [verbose] > │ if v7 then │
00:03:31 #4187 [verbose] > │ true │
00:03:31 #4188 [verbose] > │ else │
00:03:31 #4189 [verbose] > │ method1(v7) │
00:03:31 #4190 [verbose] > │ let v10 : string = $"__expect / actual: %A{v5} / expected: │
00:03:31 #4191 [verbose] > │ %A{999999999999999999L}" │
00:03:31 #4192 [verbose] > │ let v11 : bool = v9 = false │
00:03:31 #4193 [verbose] > │ if v11 then │
00:03:31 #4194 [verbose] > │ failwith<unit> v10 │
00:03:31 #4195 [verbose] > │ method0() │
00:03:31 #4196 [verbose] > │ │
00:03:31 #4197 [verbose] > │ 999999999999999999L │
00:03:31 #4198 [verbose] > │ │
00:03:31 #4199 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:31 #4200 [verbose] >
00:03:31 #4201 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:31 #4202 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:31 #4203 [verbose] > │ ## now │
00:03:31 #4204 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:31 #4205 [verbose] >
00:03:31 #4206 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:31 #4207 [verbose] > inl now () : date_time =
00:03:31 #4208 [verbose] > $'System.DateTime.Now'
00:03:31 #4209 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9b2bf3f0e9363fa129b9feb1a8421d0ce02032dc17aac966df9bfe25e300bed9\main.spi
00:03:31 #4210 [verbose] >
00:03:31 #4211 [verbose] > ╭─[ 324.48ms - stdout ]────────────────────────────────────────────────────────╮
00:03:31 #4212 [verbose] > │ () │
00:03:31 #4213 [verbose] > │ │
00:03:31 #4214 [verbose] > │ │
00:03:31 #4215 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:31 #4216 [verbose] >
00:03:31 #4217 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:31 #4218 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:31 #4219 [verbose] > │ ## utc_now │
00:03:31 #4220 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:31 #4221 [verbose] >
00:03:31 #4222 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:31 #4223 [verbose] > inl utc_now () : date_time =
00:03:31 #4224 [verbose] > $'System.DateTime.UtcNow'
00:03:32 #4225 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ebe613da5bf4dd809cedc14f41e8f14dff3cf316f46714d5cae81546bc4faf4f\main.spi
00:03:32 #4226 [verbose] >
00:03:32 #4227 [verbose] > ╭─[ 639.03ms - stdout ]────────────────────────────────────────────────────────╮
00:03:32 #4228 [verbose] > │ () │
00:03:32 #4229 [verbose] > │ │
00:03:32 #4230 [verbose] > │ │
00:03:32 #4231 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:32 #4232 [verbose] >
00:03:32 #4233 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:32 #4234 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:32 #4235 [verbose] > │ ## time_span │
00:03:32 #4236 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:32 #4237 [verbose] >
00:03:32 #4238 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:32 #4239 [verbose] > nominal time_span = $'System.TimeSpan'
00:03:32 #4240 [verbose] >
00:03:32 #4241 [verbose] > inl time_span x : time_span =
00:03:32 #4242 [verbose] > $'`time_span !x '
00:03:32 #4243 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\109ffd69d9b2f5965eaf3937dbb312d7a8c3312687a8dfad3034b58b604f1913\main.spi
00:03:32 #4244 [verbose] >
00:03:32 #4245 [verbose] > ╭─[ 343.29ms - stdout ]────────────────────────────────────────────────────────╮
00:03:32 #4246 [verbose] > │ () │
00:03:32 #4247 [verbose] > │ │
00:03:32 #4248 [verbose] > │ │
00:03:32 #4249 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:32 #4250 [verbose] >
00:03:32 #4251 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:32 #4252 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:32 #4253 [verbose] > │ ## new_time_span │
00:03:32 #4254 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:32 #4255 [verbose] >
00:03:32 #4256 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:32 #4257 [verbose] > inl new_time_span (a : date_time) (b : date_time) : time_span =
00:03:32 #4258 [verbose] > $'!b - !a '
00:03:32 #4259 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9e69038b4205ef39c57cdae2e3ab916e3944759811498dc6bdea3c719ae23fc1\main.spi
00:03:32 #4260 [verbose] >
00:03:32 #4261 [verbose] > ╭─[ 350.52ms - stdout ]────────────────────────────────────────────────────────╮
00:03:32 #4262 [verbose] > │ () │
00:03:33 #4263 [verbose] > │ │
00:03:33 #4264 [verbose] > │ │
00:03:33 #4265 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:33 #4266 [verbose] >
00:03:33 #4267 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:33 #4268 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:33 #4269 [verbose] > │ ## hours │
00:03:33 #4270 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:33 #4271 [verbose] >
00:03:33 #4272 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:33 #4273 [verbose] > inl hours (time_span : time_span) : i32 =
00:03:33 #4274 [verbose] > time_span |> $'_.Hours'
00:03:33 #4275 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\bb9256a6d62c73fbb090dd57c425b20110664e2c9392b56ebd558e2c38516c21\main.spi
00:03:33 #4276 [verbose] >
00:03:33 #4277 [verbose] > ╭─[ 280.46ms - stdout ]────────────────────────────────────────────────────────╮
00:03:33 #4278 [verbose] > │ () │
00:03:33 #4279 [verbose] > │ │
00:03:33 #4280 [verbose] > │ │
00:03:33 #4281 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:33 #4282 [verbose] >
00:03:33 #4283 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:33 #4284 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:33 #4285 [verbose] > │ ## milliseconds │
00:03:33 #4286 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:33 #4287 [verbose] >
00:03:33 #4288 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:33 #4289 [verbose] > inl milliseconds (time_span : time_span) : i32 =
00:03:33 #4290 [verbose] > time_span |> $'_.Milliseconds'
00:03:33 #4291 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d5574b50c7200e926f1b349e352fe1e7abfadf37427ed15a34bf157c9008bc33\main.spi
00:03:33 #4292 [verbose] >
00:03:33 #4293 [verbose] > ╭─[ 263.28ms - stdout ]────────────────────────────────────────────────────────╮
00:03:33 #4294 [verbose] > │ () │
00:03:33 #4295 [verbose] > │ │
00:03:33 #4296 [verbose] > │ │
00:03:33 #4297 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:33 #4298 [verbose] >
00:03:33 #4299 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:33 #4300 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:33 #4301 [verbose] > │ ## minutes │
00:03:33 #4302 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:33 #4303 [verbose] >
00:03:33 #4304 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:33 #4305 [verbose] > inl minutes (time_span : time_span) : i32 =
00:03:33 #4306 [verbose] > time_span |> $'_.Minutes'
00:03:33 #4307 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a8e61c615e56bc8fa3075e489a9b19f50b4a8e009192e5400e39cd853353a025\main.spi
00:03:33 #4308 [verbose] >
00:03:33 #4309 [verbose] > ╭─[ 265.39ms - stdout ]────────────────────────────────────────────────────────╮
00:03:33 #4310 [verbose] > │ () │
00:03:33 #4311 [verbose] > │ │
00:03:33 #4312 [verbose] > │ │
00:03:33 #4313 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:33 #4314 [verbose] >
00:03:33 #4315 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:33 #4316 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:33 #4317 [verbose] > │ ## seconds │
00:03:33 #4318 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:33 #4319 [verbose] >
00:03:33 #4320 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:33 #4321 [verbose] > inl seconds (time_span : time_span) : i32 =
00:03:33 #4322 [verbose] > time_span |> $'_.Seconds'
00:03:34 #4323 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\39e35736357412761a9a7762f0f4e6fbadb1d7a031649a95a3e1f719555f4bec\main.spi
00:03:34 #4324 [verbose] >
00:03:34 #4325 [verbose] > ╭─[ 347.21ms - stdout ]────────────────────────────────────────────────────────╮
00:03:34 #4326 [verbose] > │ () │
00:03:34 #4327 [verbose] > │ │
00:03:34 #4328 [verbose] > │ │
00:03:34 #4329 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:34 #4330 [verbose] >
00:03:34 #4331 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:34 #4332 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:34 #4333 [verbose] > │ ## total_seconds │
00:03:34 #4334 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:34 #4335 [verbose] >
00:03:34 #4336 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:34 #4337 [verbose] > inl total_seconds (time_span : time_span) : f64 =
00:03:34 #4338 [verbose] > time_span |> $'_.TotalSeconds'
00:03:34 #4339 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b2fff9f63e5fa696b7412e78453cc436278a22971418fbe0df9e652ec7e25565\main.spi
00:03:34 #4340 [verbose] >
00:03:34 #4341 [verbose] > ╭─[ 596.94ms - stdout ]────────────────────────────────────────────────────────╮
00:03:34 #4342 [verbose] > │ () │
00:03:34 #4343 [verbose] > │ │
00:03:34 #4344 [verbose] > │ │
00:03:34 #4345 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:34 #4346 [verbose] >
00:03:34 #4347 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:34 #4348 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:34 #4349 [verbose] > │ ## new_guid_from_date_time │
00:03:34 #4350 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:34 #4351 [verbose] >
00:03:34 #4352 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:34 #4353 [verbose] > inl new_guid_from_date_time (date_time : date_time) =
00:03:34 #4354 [verbose] > inl guid = guid.new_raw_guid ()
00:03:34 #4355 [verbose] > date_time_guid_from_date_time guid date_time
00:03:34 #4356 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e725cec876cee814f44bfecbd3499712237b5e797d8519f4d503247d946dc308\main.spi
00:03:35 #4357 [verbose] >
00:03:35 #4358 [verbose] > ╭─[ 303.16ms - stdout ]────────────────────────────────────────────────────────╮
00:03:35 #4359 [verbose] > │ () │
00:03:35 #4360 [verbose] > │ │
00:03:35 #4361 [verbose] > │ │
00:03:35 #4362 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:35 #4363 [verbose] >
00:03:35 #4364 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:35 #4365 [verbose] > // // test
00:03:35 #4366 [verbose] >
00:03:35 #4367 [verbose] > utc_now ()
00:03:35 #4368 [verbose] > |> new_guid_from_date_time
00:03:35 #4369 [verbose] > |> date_time_from_guid
00:03:35 #4370 [verbose] > |> fun date_time => new_time_span date_time (utc_now ()) |> total_seconds |> i32
00:03:35 #4371 [verbose] > |> _assert_eq 0
00:03:35 #4372 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d45bb92bf6e105f39b5c0bf32cfba1c6b14ddcb905aa2f48dcc8a1772413f2d7\main.spi
00:03:35 #4373 [verbose] >
00:03:35 #4374 [verbose] > ╭─[ 518.86ms - stdout ]────────────────────────────────────────────────────────╮
00:03:35 #4375 [verbose] > │ let rec closure2 (v0 : string, v1 : string) (v2 : string) : string = │
00:03:35 #4376 [verbose] > │ let v3 : string = v2.Replace (v0, v1) │
00:03:35 #4377 [verbose] > │ v3 │
00:03:35 #4378 [verbose] > │ and closure1 (v0 : string) (v1 : string) : (string -> string) = │
00:03:35 #4379 [verbose] > │ closure2(v0, v1) │
00:03:35 #4380 [verbose] > │ and closure0 () (v0 : string) : (string -> (string -> string)) = │
00:03:35 #4381 [verbose] > │ closure1(v0) │
00:03:35 #4382 [verbose] > │ and method1 () : (string -> (string -> (string -> string))) = │
00:03:35 #4383 [verbose] > │ closure0() │
00:03:35 #4384 [verbose] > │ and method2 (v0 : bool) : bool = │
00:03:35 #4385 [verbose] > │ v0 │
00:03:35 #4386 [verbose] > │ and method0 () : unit = │
00:03:35 #4387 [verbose] > │ let v0 : System.DateTime = System.DateTime.UtcNow │
00:03:35 #4388 [verbose] > │ let v1 : System.Guid = System.Guid.NewGuid () │
00:03:35 #4389 [verbose] > │ let v2 : (System.Guid -> string) = _.ToString() │
00:03:35 #4390 [verbose] > │ let v3 : string = v2 v1 │
00:03:35 #4391 [verbose] > │ let v4 : string = v0.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:03:35 #4392 [verbose] > │ let v5 : System.Guid = System.Guid $"{v4}{v3.[v4.Length..]}" │
00:03:35 #4393 [verbose] > │ let v6 : (System.Guid -> string) = _.ToString() │
00:03:35 #4394 [verbose] > │ let v7 : string = v6 v5 │
00:03:35 #4395 [verbose] > │ let v8 : (string -> (string -> (string -> string))) = method1() │
00:03:35 #4396 [verbose] > │ let v9 : System.DateTime option = None │
00:03:35 #4397 [verbose] > │ let mutable _v9 = v9 │
00:03:35 #4398 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:03:35 #4399 [verbose] > │ let v10 : System.DateTime = System.DateTime.Parse (v7.[..24] |> v8 "-" │
00:03:35 #4400 [verbose] > │ "") │
00:03:35 #4401 [verbose] > │ v10 │
00:03:35 #4402 [verbose] > │ #endif │
00:03:35 #4403 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:03:35 #4404 [verbose] > │ let v11 : System.DateTime = System.DateTime.Parse (v7.[..24] |> v8 "-" │
00:03:35 #4405 [verbose] > │ "") │
00:03:35 #4406 [verbose] > │ v11 │
00:03:35 #4407 [verbose] > │ #endif │
00:03:35 #4408 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:03:35 #4409 [verbose] > │ let v12 : System.DateTime = System.DateTime.Parse (v7.[..24] |> v8 "-" │
00:03:35 #4410 [verbose] > │ "") │
00:03:35 #4411 [verbose] > │ v12 │
00:03:35 #4412 [verbose] > │ #endif │
00:03:35 #4413 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:03:35 #4414 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:03:35 #4415 [verbose] > │ let v13 : System.DateTime = System.DateTime.ParseExact (v7.[..24] |> v8 │
00:03:35 #4416 [verbose] > │ "-" "", "yyyyMMddHHmmssfffffff", null) │
00:03:35 #4417 [verbose] > │ v13 │
00:03:35 #4418 [verbose] > │ #endif │
00:03:35 #4419 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:03:35 #4420 [verbose] > │ let v14 : System.DateTime = System.DateTime.ParseExact (v7.[..24] |> v8 │
00:03:35 #4421 [verbose] > │ "-" "", "yyyyMMddHHmmssfffffff", null) │
00:03:35 #4422 [verbose] > │ v14 │
00:03:35 #4423 [verbose] > │ #endif │
00:03:35 #4424 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:03:35 #4425 [verbose] > │ Unchecked.defaultof<System.DateTime> │
00:03:35 #4426 [verbose] > │ #endif │
00:03:35 #4427 [verbose] > │ |> fun x -> _v9 <- Some x │
00:03:35 #4428 [verbose] > │ let v15 : System.DateTime = _v9.Value │
00:03:35 #4429 [verbose] > │ let v16 : System.DateTime = System.DateTime.UtcNow │
00:03:35 #4430 [verbose] > │ let v17 : System.TimeSpan = v16 - v15 │
00:03:35 #4431 [verbose] > │ let v18 : (System.TimeSpan -> float) = _.TotalSeconds │
00:03:35 #4432 [verbose] > │ let v19 : float = v18 v17 │
00:03:35 #4433 [verbose] > │ let v20 : int32 = int32 v19 │
00:03:35 #4434 [verbose] > │ let v21 : string = $"%A{v20}" │
00:03:35 #4435 [verbose] > │ System.Console.WriteLine v21 │
00:03:35 #4436 [verbose] > │ let v22 : bool = v20 = 0 │
00:03:35 #4437 [verbose] > │ let v24 : bool = │
00:03:35 #4438 [verbose] > │ if v22 then │
00:03:35 #4439 [verbose] > │ true │
00:03:35 #4440 [verbose] > │ else │
00:03:35 #4441 [verbose] > │ method2(v22) │
00:03:35 #4442 [verbose] > │ let v25 : string = $"__expect / actual: %A{v20} / expected: %A{0}" │
00:03:35 #4443 [verbose] > │ let v26 : bool = v24 = false │
00:03:35 #4444 [verbose] > │ if v26 then │
00:03:35 #4445 [verbose] > │ failwith<unit> v25 │
00:03:35 #4446 [verbose] > │ method0() │
00:03:35 #4447 [verbose] > │ │
00:03:35 #4448 [verbose] > │ 0 │
00:03:35 #4449 [verbose] > │ │
00:03:35 #4450 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:35 #4451 [verbose] >
00:03:35 #4452 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:35 #4453 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:35 #4454 [verbose] > │ ## new_guid_from_timestamp │
00:03:35 #4455 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:35 #4456 [verbose] >
00:03:35 #4457 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:35 #4458 [verbose] > inl new_guid_from_timestamp (timestamp : timestamp) =
00:03:35 #4459 [verbose] > inl guid = guid.new_raw_guid ()
00:03:35 #4460 [verbose] > timestamp_guid_from_timestamp guid timestamp
00:03:36 #4461 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0e1cd384d747729d265b0862373747f61cec9e349ec174b9a84b8f1607e7fdd4\main.spi
00:03:36 #4462 [verbose] >
00:03:36 #4463 [verbose] > ╭─[ 524.56ms - stdout ]────────────────────────────────────────────────────────╮
00:03:36 #4464 [verbose] > │ () │
00:03:36 #4465 [verbose] > │ │
00:03:36 #4466 [verbose] > │ │
00:03:36 #4467 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:36 #4468 [verbose] >
00:03:36 #4469 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:36 #4470 [verbose] > // // test
00:03:36 #4471 [verbose] >
00:03:36 #4472 [verbose] > utc_now ()
00:03:36 #4473 [verbose] > |> ticks
00:03:36 #4474 [verbose] > |> new_guid_from_timestamp
00:03:36 #4475 [verbose] > |> timestamp_from_guid
00:03:36 #4476 [verbose] > |> fun (timestamp timestamp) => (timestamp - (utc_now () |> ticks |> fun
00:03:36 #4477 [verbose] > (timestamp x) => x)) / 100000i64
00:03:36 #4478 [verbose] > |> _assert_eq 0i64
00:03:36 #4479 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5846d31998d401a2e757fab667b15d484917cdd5804b10026327da3af42cbb2c\main.spi
00:03:36 #4480 [verbose] >
00:03:36 #4481 [verbose] > ╭─[ 446.68ms - stdout ]────────────────────────────────────────────────────────╮
00:03:36 #4482 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:03:36 #4483 [verbose] > │ v0 │
00:03:36 #4484 [verbose] > │ and method0 () : unit = │
00:03:36 #4485 [verbose] > │ let v0 : System.DateTime = System.DateTime.UtcNow │
00:03:36 #4486 [verbose] > │ let v1 : (System.DateTime -> int64) = _.Ticks │
00:03:36 #4487 [verbose] > │ let v2 : int64 = v1 v0 │
00:03:36 #4488 [verbose] > │ let v3 : System.Guid = System.Guid.NewGuid () │
00:03:36 #4489 [verbose] > │ let v4 : (System.Guid -> string) = _.ToString() │
00:03:36 #4490 [verbose] > │ let v5 : string = v4 v3 │
00:03:36 #4491 [verbose] > │ let v6 : (int64 -> string) = _.ToString() │
00:03:36 #4492 [verbose] > │ let v7 : string = v6 v2 │
00:03:36 #4493 [verbose] > │ let v8 : string = v7.PadLeft (18, '0') │
00:03:36 #4494 [verbose] > │ let v9 : System.Guid = System.Guid $"{v8.[0..7]}-{v8.[8..11]}-{v8.[ │
00:03:36 #4495 [verbose] > │ 12..15]}-{v8.[16..17]}{v5.[21..]}" │
00:03:36 #4496 [verbose] > │ let v10 : (System.Guid -> string) = _.ToString() │
00:03:36 #4497 [verbose] > │ let v11 : string = v10 v9 │
00:03:36 #4498 [verbose] > │ let v12 : int64 = int64 $"{v11.[0..7]}{v11.[9..12]}{v11.[14..17]}{v11.[ │
00:03:36 #4499 [verbose] > │ 19..20]}" │
00:03:36 #4500 [verbose] > │ let v13 : System.DateTime = System.DateTime.UtcNow │
00:03:36 #4501 [verbose] > │ let v14 : (System.DateTime -> int64) = _.Ticks │
00:03:36 #4502 [verbose] > │ let v15 : int64 = v14 v13 │
00:03:36 #4503 [verbose] > │ let v16 : int64 = v12 - v15 │
00:03:36 #4504 [verbose] > │ let v17 : int64 = v16 / 100000L │
00:03:36 #4505 [verbose] > │ let v18 : string = $"%A{v17}" │
00:03:36 #4506 [verbose] > │ System.Console.WriteLine v18 │
00:03:36 #4507 [verbose] > │ let v19 : bool = v17 = 0L │
00:03:36 #4508 [verbose] > │ let v21 : bool = │
00:03:36 #4509 [verbose] > │ if v19 then │
00:03:36 #4510 [verbose] > │ true │
00:03:36 #4511 [verbose] > │ else │
00:03:36 #4512 [verbose] > │ method1(v19) │
00:03:36 #4513 [verbose] > │ let v22 : string = $"__expect / actual: %A{v17} / expected: %A{0L}" │
00:03:36 #4514 [verbose] > │ let v23 : bool = v21 = false │
00:03:36 #4515 [verbose] > │ if v23 then │
00:03:36 #4516 [verbose] > │ failwith<unit> v22 │
00:03:36 #4517 [verbose] > │ method0() │
00:03:36 #4518 [verbose] > │ │
00:03:36 #4519 [verbose] > │ 0L │
00:03:36 #4520 [verbose] > │ │
00:03:36 #4521 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:36 #4522 [verbose] >
00:03:36 #4523 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:03:36 #4524 [verbose] > //// test
00:03:36 #4525 [verbose] >
00:03:36 #4526 [verbose] > type DateTimeWithZone = {
00:03:36 #4527 [verbose] > DateTime: System.DateTimeOffset
00:03:36 #4528 [verbose] > TimeZone: System.TimeZoneInfo
00:03:36 #4529 [verbose] > }
00:03:36 #4530 [verbose] >
00:03:36 #4531 [verbose] > try
00:03:36 #4532 [verbose] > let now = System.DateTimeOffset.Now
00:03:36 #4533 [verbose] > let timeZoneInfo = System.TimeZoneInfo.Local
00:03:36 #4534 [verbose] > let dateTimeWithZone = { DateTime = now; TimeZone = timeZoneInfo }
00:03:36 #4535 [verbose] >
00:03:36 #4536 [verbose] > printfn "DateTime: %O" dateTimeWithZone.DateTime
00:03:36 #4537 [verbose] > printfn "Time Zone: %s" dateTimeWithZone.TimeZone.DisplayName
00:03:36 #4538 [verbose] > printfn "Is DST: %b"
00:03:36 #4539 [verbose] > (timeZoneInfo.IsDaylightSavingTime(dateTimeWithZone.DateTime.DateTime))
00:03:36 #4540 [verbose] > printfn "v1: %s" (dateTimeWithZone.TimeZone.GetUtcOffset(now) |> string)
00:03:36 #4541 [verbose] > printfn "v2: %s" (dateTimeWithZone.TimeZone |> string)
00:03:36 #4542 [verbose] > with ex ->
00:03:36 #4543 [verbose] > printfn "error: %A" ex
00:03:36 #4544 [verbose] >
00:03:36 #4545 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:36 #4546 [verbose] > #r
00:03:36 #4547 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:03:36 #4548 [verbose] > spNetCore.Html.Abstractions.dll"
00:03:36 #4549 [verbose] > #r
00:03:36 #4550 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:03:36 #4551 [verbose] > otNet.Interactive.dll"
00:03:36 #4552 [verbose] > #r
00:03:36 #4553 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:03:36 #4554 [verbose] > otNet.Interactive.FSharp.dll"
00:03:36 #4555 [verbose] > #r
00:03:36 #4556 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:03:36 #4557 [verbose] > otNet.Interactive.Formatting.dll"
00:03:36 #4558 [verbose] > open System
00:03:36 #4559 [verbose] > open System.IO
00:03:36 #4560 [verbose] > open System.Text
00:03:36 #4561 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:03:39 #4562 [verbose] >
00:03:39 #4563 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:03:39 #4564 [verbose] > #r
00:03:39 #4565 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:03:39 #4566 [verbose] > otNet.Interactive.FSharp.dll"
00:03:39 #4567 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:03:39 #4568 [verbose] > #r
00:03:39 #4569 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:03:39 #4570 [verbose] > otNet.Interactive.dll"
00:03:39 #4571 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:03:40 #4572 [verbose] >
00:03:40 #4573 [verbose] > ╭─[ 3.58s - stdout ]───────────────────────────────────────────────────────────╮
00:03:40 #4574 [verbose] > │ DateTime: 2024-04-10 7:07:39 PM -04:00 │
00:03:40 #4575 [verbose] > │ Time Zone: (UTC-04:00) Cuiaba │
00:03:40 #4576 [verbose] > │ Is DST: false │
00:03:40 #4577 [verbose] > │ v1: -04:00:00 │
00:03:40 #4578 [verbose] > │ v2: (UTC-04:00) Cuiaba │
00:03:40 #4579 [verbose] > │ │
00:03:40 #4580 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:40 #4581 [verbose] >
00:03:40 #4582 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:03:40 #4583 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:03:40 #4584 [verbose] > │ ## main │
00:03:40 #4585 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:40 #4586 [verbose] >
00:03:40 #4587 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:03:40 #4588 [verbose] > inl main () =
00:03:40 #4589 [verbose] > $"let date_time_guid_from_date_time x = !date_time_guid_from_date_time x" :
00:03:40 #4590 [verbose] > ()
00:03:40 #4591 [verbose] > $"let date_time_from_guid x = !date_time_from_guid x" : ()
00:03:40 #4592 [verbose] > $"let timestamp_guid_from_timestamp x = !timestamp_guid_from_timestamp x" :
00:03:40 #4593 [verbose] > ()
00:03:40 #4594 [verbose] > $"let timestamp_from_guid x = !timestamp_from_guid x" : ()
00:03:40 #4595 [verbose] > $"let new_guid_from_date_time x = !new_guid_from_date_time x" : ()
00:03:40 #4596 [verbose] > $"let new_guid_from_timestamp x = !new_guid_from_timestamp x" : ()
00:03:40 #4597 [verbose] > $"let format x = !format x" : ()
00:03:40 #4598 [verbose] > $"let format_iso8601 x = !format_iso8601 x" : ()
00:03:40 #4599 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b9c850e35eb53c1eda15e438d943363d5e17137f923f3b45e350f3a7cb3a8035\main.spi
00:03:41 #4600 [verbose] >
00:03:41 #4601 [verbose] > ╭─[ 1.06s - stdout ]───────────────────────────────────────────────────────────╮
00:03:41 #4602 [verbose] > │ let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid = │
00:03:41 #4603 [verbose] > │ let v2 : (System.Guid -> string) = _.ToString() │
00:03:41 #4604 [verbose] > │ let v3 : string = v2 v0 │
00:03:41 #4605 [verbose] > │ let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:03:41 #4606 [verbose] > │ let v5 : System.Guid = System.Guid $"{v4}{v3.[v4.Length..]}" │
00:03:41 #4607 [verbose] > │ v5 │
00:03:41 #4608 [verbose] > │ and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) = │
00:03:41 #4609 [verbose] > │ closure1(v0) │
00:03:41 #4610 [verbose] > │ and closure5 (v0 : string, v1 : string) (v2 : string) : string = │
00:03:41 #4611 [verbose] > │ let v3 : string = v2.Replace (v0, v1) │
00:03:41 #4612 [verbose] > │ v3 │
00:03:41 #4613 [verbose] > │ and closure4 (v0 : string) (v1 : string) : (string -> string) = │
00:03:41 #4614 [verbose] > │ closure5(v0, v1) │
00:03:41 #4615 [verbose] > │ and closure3 () (v0 : string) : (string -> (string -> string)) = │
00:03:41 #4616 [verbose] > │ closure4(v0) │
00:03:41 #4617 [verbose] > │ and method0 () : (string -> (string -> (string -> string))) = │
00:03:41 #4618 [verbose] > │ closure3() │
00:03:41 #4619 [verbose] > │ and closure2 () (v0 : System.Guid) : System.DateTime = │
00:03:41 #4620 [verbose] > │ let v1 : (System.Guid -> string) = _.ToString() │
00:03:41 #4621 [verbose] > │ let v2 : string = v1 v0 │
00:03:41 #4622 [verbose] > │ let v3 : (string -> (string -> (string -> string))) = method0() │
00:03:41 #4623 [verbose] > │ let v4 : System.DateTime option = None │
00:03:41 #4624 [verbose] > │ let mutable _v4 = v4 │
00:03:41 #4625 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:03:41 #4626 [verbose] > │ let v5 : System.DateTime = System.DateTime.Parse (v2.[..24] |> v3 "-" │
00:03:41 #4627 [verbose] > │ "") │
00:03:41 #4628 [verbose] > │ v5 │
00:03:41 #4629 [verbose] > │ #endif │
00:03:41 #4630 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:03:41 #4631 [verbose] > │ let v6 : System.DateTime = System.DateTime.Parse (v2.[..24] |> v3 "-" │
00:03:41 #4632 [verbose] > │ "") │
00:03:41 #4633 [verbose] > │ v6 │
00:03:41 #4634 [verbose] > │ #endif │
00:03:41 #4635 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:03:41 #4636 [verbose] > │ let v7 : System.DateTime = System.DateTime.Parse (v2.[..24] |> v3 "-" │
00:03:41 #4637 [verbose] > │ "") │
00:03:41 #4638 [verbose] > │ v7 │
00:03:41 #4639 [verbose] > │ #endif │
00:03:41 #4640 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:03:41 #4641 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:03:41 #4642 [verbose] > │ let v8 : System.DateTime = System.DateTime.ParseExact (v2.[..24] |> v3 │
00:03:41 #4643 [verbose] > │ "-" "", "yyyyMMddHHmmssfffffff", null) │
00:03:41 #4644 [verbose] > │ v8 │
00:03:41 #4645 [verbose] > │ #endif │
00:03:41 #4646 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:03:41 #4647 [verbose] > │ let v9 : System.DateTime = System.DateTime.ParseExact (v2.[..24] |> v3 │
00:03:41 #4648 [verbose] > │ "-" "", "yyyyMMddHHmmssfffffff", null) │
00:03:41 #4649 [verbose] > │ v9 │
00:03:41 #4650 [verbose] > │ #endif │
00:03:41 #4651 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:03:41 #4652 [verbose] > │ Unchecked.defaultof<System.DateTime> │
00:03:41 #4653 [verbose] > │ #endif │
00:03:41 #4654 [verbose] > │ |> fun x -> _v4 <- Some x │
00:03:41 #4655 [verbose] > │ let v10 : System.DateTime = _v4.Value │
00:03:41 #4656 [verbose] > │ v10 │
00:03:41 #4657 [verbose] > │ and closure7 (v0 : System.Guid) (v1 : int64) : System.Guid = │
00:03:41 #4658 [verbose] > │ let v2 : (System.Guid -> string) = _.ToString() │
00:03:41 #4659 [verbose] > │ let v3 : string = v2 v0 │
00:03:41 #4660 [verbose] > │ let v4 : (int64 -> string) = _.ToString() │
00:03:41 #4661 [verbose] > │ let v5 : string = v4 v1 │
00:03:41 #4662 [verbose] > │ let v6 : string = v5.PadLeft (18, '0') │
00:03:41 #4663 [verbose] > │ let v7 : System.Guid = System.Guid $"{v6.[0..7]}-{v6.[8..11]}-{v6.[ │
00:03:41 #4664 [verbose] > │ 12..15]}-{v6.[16..17]}{v3.[21..]}" │
00:03:41 #4665 [verbose] > │ v7 │
00:03:41 #4666 [verbose] > │ and closure6 () (v0 : System.Guid) : (int64 -> System.Guid) = │
00:03:41 #4667 [verbose] > │ closure7(v0) │
00:03:41 #4668 [verbose] > │ and closure8 () (v0 : System.Guid) : int64 = │
00:03:41 #4669 [verbose] > │ let v1 : (System.Guid -> string) = _.ToString() │
00:03:41 #4670 [verbose] > │ let v2 : string = v1 v0 │
00:03:41 #4671 [verbose] > │ let v3 : int64 = int64 $"{v2.[0..7]}{v2.[9..12]}{v2.[14..17]}{v2.[ │
00:03:41 #4672 [verbose] > │ 19..20]}" │
00:03:41 #4673 [verbose] > │ v3 │
00:03:41 #4674 [verbose] > │ and closure9 () (v0 : System.DateTime) : System.Guid = │
00:03:41 #4675 [verbose] > │ let v1 : System.Guid = System.Guid.NewGuid () │
00:03:41 #4676 [verbose] > │ let v2 : (System.Guid -> string) = _.ToString() │
00:03:41 #4677 [verbose] > │ let v3 : string = v2 v1 │
00:03:41 #4678 [verbose] > │ let v4 : string = v0.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:03:41 #4679 [verbose] > │ let v5 : System.Guid = System.Guid $"{v4}{v3.[v4.Length..]}" │
00:03:41 #4680 [verbose] > │ v5 │
00:03:41 #4681 [verbose] > │ and closure10 () (v0 : int64) : System.Guid = │
00:03:41 #4682 [verbose] > │ let v1 : System.Guid = System.Guid.NewGuid () │
00:03:41 #4683 [verbose] > │ let v2 : (System.Guid -> string) = _.ToString() │
00:03:41 #4684 [verbose] > │ let v3 : string = v2 v1 │
00:03:41 #4685 [verbose] > │ let v4 : (int64 -> string) = _.ToString() │
00:03:41 #4686 [verbose] > │ let v5 : string = v4 v0 │
00:03:41 #4687 [verbose] > │ let v6 : string = v5.PadLeft (18, '0') │
00:03:41 #4688 [verbose] > │ let v7 : System.Guid = System.Guid $"{v6.[0..7]}-{v6.[8..11]}-{v6.[ │
00:03:41 #4689 [verbose] > │ 12..15]}-{v6.[16..17]}{v3.[21..]}" │
00:03:41 #4690 [verbose] > │ v7 │
00:03:41 #4691 [verbose] > │ and closure12 (v0 : string) (v1 : System.DateTime) : string = │
00:03:41 #4692 [verbose] > │ let v2 : (string -> string) = v1.ToString │
00:03:41 #4693 [verbose] > │ v2 v0 │
00:03:41 #4694 [verbose] > │ and closure11 () (v0 : string) : (System.DateTime -> string) = │
00:03:41 #4695 [verbose] > │ closure12(v0) │
00:03:41 #4696 [verbose] > │ and closure13 () (v0 : System.DateTime) : string = │
00:03:41 #4697 [verbose] > │ let v1 : (string -> string) = v0.ToString │
00:03:41 #4698 [verbose] > │ let v2 : string = "yyyy-MM-ddTHH-mm-ss.fff" │
00:03:41 #4699 [verbose] > │ v1 v2 │
00:03:41 #4700 [verbose] > │ let v0 : (System.Guid -> (System.DateTime -> System.Guid)) = closure0() │
00:03:41 #4701 [verbose] > │ let date_time_guid_from_date_time x = v0 x │
00:03:41 #4702 [verbose] > │ let v1 : (System.Guid -> System.DateTime) = closure2() │
00:03:41 #4703 [verbose] > │ let date_time_from_guid x = v1 x │
00:03:41 #4704 [verbose] > │ let v2 : (System.Guid -> (int64 -> System.Guid)) = closure6() │
00:03:41 #4705 [verbose] > │ let timestamp_guid_from_timestamp x = v2 x │
00:03:41 #4706 [verbose] > │ let v3 : (System.Guid -> int64) = closure8() │
00:03:41 #4707 [verbose] > │ let timestamp_from_guid x = v3 x │
00:03:41 #4708 [verbose] > │ let v4 : (System.DateTime -> System.Guid) = closure9() │
00:03:41 #4709 [verbose] > │ let new_guid_from_date_time x = v4 x │
00:03:41 #4710 [verbose] > │ let v5 : (int64 -> System.Guid) = closure10() │
00:03:41 #4711 [verbose] > │ let new_guid_from_timestamp x = v5 x │
00:03:41 #4712 [verbose] > │ let v6 : (string -> (System.DateTime -> string)) = closure11() │
00:03:41 #4713 [verbose] > │ let format x = v6 x │
00:03:41 #4714 [verbose] > │ let v7 : (System.DateTime -> string) = closure13() │
00:03:41 #4715 [verbose] > │ let format_iso8601 x = v7 x │
00:03:41 #4716 [verbose] > │ () │
00:03:41 #4717 [verbose] > │ │
00:03:41 #4718 [verbose] > │ │
00:03:41 #4719 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:03:50 #4720 [verbose] > [NbConvertApp] Converting notebook date_time.dib.ipynb to html
00:03:50 #4721 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:03:50 #4722 [verbose] > validate(nb)
00:03:52 #4723 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:03:52 #4724 [verbose] > return _pygments_highlight(
00:03:53 #4725 [verbose] > [NbConvertApp] Writing 385226 bytes to date_time.dib.html
00:03:54 #4726 [debug] executeAsync / exitCode: 0 / output.Length: 93956
00:03:54 #4727 [debug] main / executeCommand / exitCode: 0
00:03:54 #4728 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 math.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:04:00 #4729 [verbose] >
00:04:00 #4730 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:00 #4731 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:00 #4732 [verbose] > │ # math │
00:04:00 #4733 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:01 #4734 [verbose] >
00:04:01 #4735 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:01 #4736 [verbose] > // // test
00:04:01 #4737 [verbose] >
00:04:01 #4738 [verbose] > open testing
00:04:08 #4739 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:04:11 #4740 [verbose] >
00:04:11 #4741 [verbose] > ╭─[ 10.48s - stdout ]──────────────────────────────────────────────────────────╮
00:04:11 #4742 [verbose] > │ () │
00:04:11 #4743 [verbose] > │ │
00:04:11 #4744 [verbose] > │ │
00:04:11 #4745 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:11 #4746 [verbose] >
00:04:11 #4747 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:11 #4748 [verbose] > // // test
00:04:11 #4749 [verbose] >
00:04:11 #4750 [verbose] > 2 * 2 / 0.4f64 |> sqrt
00:04:11 #4751 [verbose] > |> _assert_approx_eq None 3.1622776601683795
00:04:11 #4752 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\87b5a21ff6994dccc4d7f209e967da0f0684ba5f0876512508db01ae76a10045\main.spi
00:04:13 #4753 [verbose] >
00:04:13 #4754 [verbose] > ╭─[ 1.57s - stdout ]───────────────────────────────────────────────────────────╮
00:04:13 #4755 [verbose] > │ let rec method0 () : unit = │
00:04:13 #4756 [verbose] > │ let v0 : string = $"%A{3.1622776601683795}" │
00:04:13 #4757 [verbose] > │ System.Console.WriteLine v0 │
00:04:13 #4758 [verbose] > │ let v1 : string = $"__expect / actual: %A{3.1622776601683795} / │
00:04:13 #4759 [verbose] > │ expected: %A{3.1622776601683795}" │
00:04:13 #4760 [verbose] > │ () │
00:04:13 #4761 [verbose] > │ method0() │
00:04:13 #4762 [verbose] > │ │
00:04:13 #4763 [verbose] > │ 3.16227766 │
00:04:13 #4764 [verbose] > │ │
00:04:13 #4765 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:13 #4766 [verbose] >
00:04:13 #4767 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:13 #4768 [verbose] > // // test
00:04:13 #4769 [verbose] >
00:04:13 #4770 [verbose] > 2f64 / 3
00:04:13 #4771 [verbose] > |> _assert_approx_eq None 0.6666666666666666
00:04:13 #4772 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f201cbec49c0a7b6324cf45a7fd9d1966d3a7e45791741c600e64d991bc95032\main.spi
00:04:13 #4773 [verbose] >
00:04:13 #4774 [verbose] > ╭─[ 508.34ms - stdout ]────────────────────────────────────────────────────────╮
00:04:13 #4775 [verbose] > │ let rec method0 () : unit = │
00:04:13 #4776 [verbose] > │ let v0 : string = $"%A{0.6666666666666666}" │
00:04:13 #4777 [verbose] > │ System.Console.WriteLine v0 │
00:04:13 #4778 [verbose] > │ let v1 : string = $"__expect / actual: %A{0.6666666666666666} / │
00:04:13 #4779 [verbose] > │ expected: %A{0.6666666666666666}" │
00:04:13 #4780 [verbose] > │ () │
00:04:13 #4781 [verbose] > │ method0() │
00:04:13 #4782 [verbose] > │ │
00:04:13 #4783 [verbose] > │ 0.6666666667 │
00:04:13 #4784 [verbose] > │ │
00:04:13 #4785 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:13 #4786 [verbose] >
00:04:13 #4787 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:13 #4788 [verbose] > // // test
00:04:13 #4789 [verbose] >
00:04:13 #4790 [verbose] > 2f64 |> log
00:04:13 #4791 [verbose] > |> _assert_approx_eq None 0.6931471805599453
00:04:13 #4792 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f876268b4b06977b27e7fe43e9d9e44c0cf93875005652360409c55f1116d341\main.spi
00:04:14 #4793 [verbose] >
00:04:14 #4794 [verbose] > ╭─[ 686.38ms - stdout ]────────────────────────────────────────────────────────╮
00:04:14 #4795 [verbose] > │ let rec method0 () : unit = │
00:04:14 #4796 [verbose] > │ let v0 : string = $"%A{0.6931471805599453}" │
00:04:14 #4797 [verbose] > │ System.Console.WriteLine v0 │
00:04:14 #4798 [verbose] > │ let v1 : string = $"__expect / actual: %A{0.6931471805599453} / │
00:04:14 #4799 [verbose] > │ expected: %A{0.6931471805599453}" │
00:04:14 #4800 [verbose] > │ () │
00:04:14 #4801 [verbose] > │ method0() │
00:04:14 #4802 [verbose] > │ │
00:04:14 #4803 [verbose] > │ 0.6931471806 │
00:04:14 #4804 [verbose] > │ │
00:04:14 #4805 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:14 #4806 [verbose] >
00:04:14 #4807 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:14 #4808 [verbose] > // // test
00:04:14 #4809 [verbose] >
00:04:14 #4810 [verbose] > pi
00:04:14 #4811 [verbose] > |> _assert_approx_eq None 3.141592653589793f64
00:04:14 #4812 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ed29441ffd8bb707d15580b1ba4c934813222816b0c54717228948b66e9ea141\main.spi
00:04:14 #4813 [verbose] >
00:04:14 #4814 [verbose] > ╭─[ 554.99ms - stdout ]────────────────────────────────────────────────────────╮
00:04:14 #4815 [verbose] > │ let rec method0 () : unit = │
00:04:14 #4816 [verbose] > │ let v0 : string = $"%A{3.141592653589793}" │
00:04:14 #4817 [verbose] > │ System.Console.WriteLine v0 │
00:04:14 #4818 [verbose] > │ let v1 : string = $"__expect / actual: %A{3.141592653589793} / expected: │
00:04:14 #4819 [verbose] > │ %A{3.141592653589793}" │
00:04:14 #4820 [verbose] > │ () │
00:04:14 #4821 [verbose] > │ method0() │
00:04:14 #4822 [verbose] > │ │
00:04:14 #4823 [verbose] > │ 3.141592654 │
00:04:14 #4824 [verbose] > │ │
00:04:14 #4825 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:14 #4826 [verbose] >
00:04:14 #4827 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:14 #4828 [verbose] > // // test
00:04:14 #4829 [verbose] >
00:04:14 #4830 [verbose] > pi |> cos
00:04:14 #4831 [verbose] > |> _assert_eq -1f64
00:04:15 #4832 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\fc982cff505ed44171faa5ade16de3cfdc975d7882c9ce2f602671b8c2e7cecf\main.spi
00:04:15 #4833 [verbose] >
00:04:15 #4834 [verbose] > ╭─[ 599.57ms - stdout ]────────────────────────────────────────────────────────╮
00:04:15 #4835 [verbose] > │ let rec method0 () : unit = │
00:04:15 #4836 [verbose] > │ let v0 : string = $"%A{-1.0}" │
00:04:15 #4837 [verbose] > │ System.Console.WriteLine v0 │
00:04:15 #4838 [verbose] > │ let v1 : string = $"__expect / actual: %A{-1.0} / expected: %A{-1.0}" │
00:04:15 #4839 [verbose] > │ () │
00:04:15 #4840 [verbose] > │ method0() │
00:04:15 #4841 [verbose] > │ │
00:04:15 #4842 [verbose] > │ -1.0 │
00:04:15 #4843 [verbose] > │ │
00:04:15 #4844 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:15 #4845 [verbose] >
00:04:15 #4846 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:15 #4847 [verbose] > // // test
00:04:15 #4848 [verbose] >
00:04:15 #4849 [verbose] > pi
00:04:15 #4850 [verbose] > |> cos
00:04:15 #4851 [verbose] > |> fun n => n / 2f64
00:04:15 #4852 [verbose] > |> _assert_approx_eq None -0.5
00:04:15 #4853 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\7b458f213fbe11c5ff35afa0df884c3e56ac731dfbc13a3c6818babab2ed0283\main.spi
00:04:16 #4854 [verbose] >
00:04:16 #4855 [verbose] > ╭─[ 566.57ms - stdout ]────────────────────────────────────────────────────────╮
00:04:16 #4856 [verbose] > │ let rec method0 () : unit = │
00:04:16 #4857 [verbose] > │ let v0 : string = $"%A{-0.5}" │
00:04:16 #4858 [verbose] > │ System.Console.WriteLine v0 │
00:04:16 #4859 [verbose] > │ let v1 : string = $"__expect / actual: %A{-0.5} / expected: %A{-0.5}" │
00:04:16 #4860 [verbose] > │ () │
00:04:16 #4861 [verbose] > │ method0() │
00:04:16 #4862 [verbose] > │ │
00:04:16 #4863 [verbose] > │ -0.5 │
00:04:16 #4864 [verbose] > │ │
00:04:16 #4865 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:16 #4866 [verbose] >
00:04:16 #4867 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:16 #4868 [verbose] > // // test
00:04:16 #4869 [verbose] >
00:04:16 #4870 [verbose] > pi / 2 |> cos
00:04:16 #4871 [verbose] > |> _assert_approx_eq None 0.00000000000000006123233995736766f64
00:04:16 #4872 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d3e7563eb61c58eb9a0de8f13fb4644cd6e4bd27fa8259645e887d11cbb52a4c\main.spi
00:04:16 #4873 [verbose] >
00:04:16 #4874 [verbose] > ╭─[ 595.15ms - stdout ]────────────────────────────────────────────────────────╮
00:04:16 #4875 [verbose] > │ let rec method0 () : unit = │
00:04:16 #4876 [verbose] > │ let v0 : string = $"%A{6.123233995736766E-17}" │
00:04:16 #4877 [verbose] > │ System.Console.WriteLine v0 │
00:04:16 #4878 [verbose] > │ let v1 : string = $"__expect / actual: %A{6.123233995736766E-17} / │
00:04:16 #4879 [verbose] > │ expected: %A{6.123233995736766E-17}" │
00:04:16 #4880 [verbose] > │ () │
00:04:16 #4881 [verbose] > │ method0() │
00:04:16 #4882 [verbose] > │ │
00:04:16 #4883 [verbose] > │ 6.123233996e-17 │
00:04:16 #4884 [verbose] > │ │
00:04:16 #4885 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:16 #4886 [verbose] >
00:04:16 #4887 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:16 #4888 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:16 #4889 [verbose] > │ ## atan2 │
00:04:16 #4890 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:16 #4891 [verbose] >
00:04:16 #4892 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:16 #4893 [verbose] > inl atan2 (y : f64) (x : f64) =
00:04:16 #4894 [verbose] > $"System.Math.Atan2 (!y, !x)" : f64
00:04:16 #4895 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b52f00ae01e0a82baf398447b5c66bc8552bc3ed8e220d6574b2c95a9b9562a1\main.spi
00:04:17 #4896 [verbose] >
00:04:17 #4897 [verbose] > ╭─[ 554.75ms - stdout ]────────────────────────────────────────────────────────╮
00:04:17 #4898 [verbose] > │ () │
00:04:17 #4899 [verbose] > │ │
00:04:17 #4900 [verbose] > │ │
00:04:17 #4901 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:17 #4902 [verbose] >
00:04:17 #4903 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:17 #4904 [verbose] > // // test
00:04:17 #4905 [verbose] >
00:04:17 #4906 [verbose] > 0 |> atan2 1
00:04:17 #4907 [verbose] > |> _assert_eq 1.5707963267948966
00:04:17 #4908 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\282bea1a492a1f762845c6b5e6c280778ba9ca7e342dabcd29c5bedcdcdf9570\main.spi
00:04:18 #4909 [verbose] >
00:04:18 #4910 [verbose] > ╭─[ 904.05ms - stdout ]────────────────────────────────────────────────────────╮
00:04:18 #4911 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:04:18 #4912 [verbose] > │ v0 │
00:04:18 #4913 [verbose] > │ and method0 () : unit = │
00:04:18 #4914 [verbose] > │ let v0 : float = System.Math.Atan2 (1.0, 0.0) │
00:04:18 #4915 [verbose] > │ let v1 : string = $"%A{v0}" │
00:04:18 #4916 [verbose] > │ System.Console.WriteLine v1 │
00:04:18 #4917 [verbose] > │ let v2 : bool = v0 = 1.5707963267948966 │
00:04:18 #4918 [verbose] > │ let v4 : bool = │
00:04:18 #4919 [verbose] > │ if v2 then │
00:04:18 #4920 [verbose] > │ true │
00:04:18 #4921 [verbose] > │ else │
00:04:18 #4922 [verbose] > │ method1(v2) │
00:04:18 #4923 [verbose] > │ let v5 : string = $"__expect / actual: %A{v0} / expected: │
00:04:18 #4924 [verbose] > │ %A{1.5707963267948966}" │
00:04:18 #4925 [verbose] > │ let v6 : bool = v4 = false │
00:04:18 #4926 [verbose] > │ if v6 then │
00:04:18 #4927 [verbose] > │ failwith<unit> v5 │
00:04:18 #4928 [verbose] > │ method0() │
00:04:18 #4929 [verbose] > │ │
00:04:18 #4930 [verbose] > │ 1.570796327 │
00:04:18 #4931 [verbose] > │ │
00:04:18 #4932 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:18 #4933 [verbose] >
00:04:18 #4934 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:18 #4935 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:18 #4936 [verbose] > │ ## e │
00:04:18 #4937 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:18 #4938 [verbose] >
00:04:18 #4939 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:18 #4940 [verbose] > inl e () =
00:04:18 #4941 [verbose] > exp 1f64
00:04:18 #4942 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9f18f8809a1420fe6309a84b48fe1415a4f94278d9c504bb06944d9b47a33ff2\main.spi
00:04:18 #4943 [verbose] >
00:04:18 #4944 [verbose] > ╭─[ 300.28ms - stdout ]────────────────────────────────────────────────────────╮
00:04:18 #4945 [verbose] > │ () │
00:04:18 #4946 [verbose] > │ │
00:04:18 #4947 [verbose] > │ │
00:04:18 #4948 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:18 #4949 [verbose] >
00:04:18 #4950 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:18 #4951 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:18 #4952 [verbose] > │ ## floor │
00:04:18 #4953 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:18 #4954 [verbose] >
00:04:18 #4955 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:18 #4956 [verbose] > inl floor forall t {float}. (n : t) : t =
00:04:18 #4957 [verbose] > n |> $'floor'
00:04:18 #4958 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9e926fdbe3def79728214d9696c26ef88c37fccacce22427c44cd0ae376edd9f\main.spi
00:04:18 #4959 [verbose] >
00:04:18 #4960 [verbose] > ╭─[ 306.93ms - stdout ]────────────────────────────────────────────────────────╮
00:04:18 #4961 [verbose] > │ () │
00:04:18 #4962 [verbose] > │ │
00:04:18 #4963 [verbose] > │ │
00:04:18 #4964 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:18 #4965 [verbose] >
00:04:18 #4966 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:18 #4967 [verbose] > // // test
00:04:18 #4968 [verbose] >
00:04:18 #4969 [verbose] > 0.6 |> floor
00:04:18 #4970 [verbose] > |> _assert_eq 0f64
00:04:18 #4971 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b926d15f7df8c5da17b3f1c85c24ca5eac34b38534816ab26b0581b4ff19de0e\main.spi
00:04:19 #4972 [verbose] >
00:04:19 #4973 [verbose] > ╭─[ 495.80ms - stdout ]────────────────────────────────────────────────────────╮
00:04:19 #4974 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:04:19 #4975 [verbose] > │ v0 │
00:04:19 #4976 [verbose] > │ and method0 () : unit = │
00:04:19 #4977 [verbose] > │ let v0 : (float -> float) = floor │
00:04:19 #4978 [verbose] > │ let v1 : float = v0 0.6 │
00:04:19 #4979 [verbose] > │ let v2 : string = $"%A{v1}" │
00:04:19 #4980 [verbose] > │ System.Console.WriteLine v2 │
00:04:19 #4981 [verbose] > │ let v3 : bool = v1 = 0.0 │
00:04:19 #4982 [verbose] > │ let v5 : bool = │
00:04:19 #4983 [verbose] > │ if v3 then │
00:04:19 #4984 [verbose] > │ true │
00:04:19 #4985 [verbose] > │ else │
00:04:19 #4986 [verbose] > │ method1(v3) │
00:04:19 #4987 [verbose] > │ let v6 : string = $"__expect / actual: %A{v1} / expected: %A{0.0}" │
00:04:19 #4988 [verbose] > │ let v7 : bool = v5 = false │
00:04:19 #4989 [verbose] > │ if v7 then │
00:04:19 #4990 [verbose] > │ failwith<unit> v6 │
00:04:19 #4991 [verbose] > │ method0() │
00:04:19 #4992 [verbose] > │ │
00:04:19 #4993 [verbose] > │ 0.0 │
00:04:19 #4994 [verbose] > │ │
00:04:19 #4995 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:19 #4996 [verbose] >
00:04:19 #4997 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:19 #4998 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:19 #4999 [verbose] > │ ## ceil │
00:04:19 #5000 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:19 #5001 [verbose] >
00:04:19 #5002 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:19 #5003 [verbose] > inl ceil forall t {float}. (n : t) : t =
00:04:19 #5004 [verbose] > n |> $'ceil'
00:04:19 #5005 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\6ec9e7066fc9025ca918507b5f2b101901cfb9fd538defd3b8fd96866eaf081f\main.spi
00:04:19 #5006 [verbose] >
00:04:19 #5007 [verbose] > ╭─[ 290.58ms - stdout ]────────────────────────────────────────────────────────╮
00:04:19 #5008 [verbose] > │ () │
00:04:19 #5009 [verbose] > │ │
00:04:19 #5010 [verbose] > │ │
00:04:19 #5011 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:19 #5012 [verbose] >
00:04:19 #5013 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:19 #5014 [verbose] > // // test
00:04:19 #5015 [verbose] >
00:04:19 #5016 [verbose] > 0.6 |> ceil
00:04:19 #5017 [verbose] > |> _assert_eq 1f64
00:04:19 #5018 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\944af23eadcba06dbcf5481a7d879730112003385d0f89a2495a05f399526f15\main.spi
00:04:19 #5019 [verbose] >
00:04:19 #5020 [verbose] > ╭─[ 295.04ms - stdout ]────────────────────────────────────────────────────────╮
00:04:19 #5021 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:04:19 #5022 [verbose] > │ v0 │
00:04:19 #5023 [verbose] > │ and method0 () : unit = │
00:04:19 #5024 [verbose] > │ let v0 : (float -> float) = ceil │
00:04:19 #5025 [verbose] > │ let v1 : float = v0 0.6 │
00:04:19 #5026 [verbose] > │ let v2 : string = $"%A{v1}" │
00:04:19 #5027 [verbose] > │ System.Console.WriteLine v2 │
00:04:19 #5028 [verbose] > │ let v3 : bool = v1 = 1.0 │
00:04:19 #5029 [verbose] > │ let v5 : bool = │
00:04:19 #5030 [verbose] > │ if v3 then │
00:04:19 #5031 [verbose] > │ true │
00:04:19 #5032 [verbose] > │ else │
00:04:19 #5033 [verbose] > │ method1(v3) │
00:04:19 #5034 [verbose] > │ let v6 : string = $"__expect / actual: %A{v1} / expected: %A{1.0}" │
00:04:19 #5035 [verbose] > │ let v7 : bool = v5 = false │
00:04:19 #5036 [verbose] > │ if v7 then │
00:04:19 #5037 [verbose] > │ failwith<unit> v6 │
00:04:19 #5038 [verbose] > │ method0() │
00:04:19 #5039 [verbose] > │ │
00:04:19 #5040 [verbose] > │ 1.0 │
00:04:19 #5041 [verbose] > │ │
00:04:19 #5042 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:19 #5043 [verbose] >
00:04:19 #5044 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:19 #5045 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:19 #5046 [verbose] > │ ## round │
00:04:19 #5047 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:19 #5048 [verbose] >
00:04:19 #5049 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:19 #5050 [verbose] > inl round forall t {float}. (n : t) : t =
00:04:19 #5051 [verbose] > n |> $'round'
00:04:20 #5052 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\593cd5dadf0ac6a91b1962983385282591b3532b4a1b99524d9b0058c35d3542\main.spi
00:04:20 #5053 [verbose] >
00:04:20 #5054 [verbose] > ╭─[ 248.94ms - stdout ]────────────────────────────────────────────────────────╮
00:04:20 #5055 [verbose] > │ () │
00:04:20 #5056 [verbose] > │ │
00:04:20 #5057 [verbose] > │ │
00:04:20 #5058 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:20 #5059 [verbose] >
00:04:20 #5060 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:20 #5061 [verbose] > // // test
00:04:20 #5062 [verbose] >
00:04:20 #5063 [verbose] > 0.5 |> round
00:04:20 #5064 [verbose] > |> _assert_eq 0f64
00:04:20 #5065 [verbose] >
00:04:20 #5066 [verbose] > 1.5 |> round
00:04:20 #5067 [verbose] > |> _assert_eq 2f64
00:04:20 #5068 [verbose] >
00:04:20 #5069 [verbose] > 2.5 |> round
00:04:20 #5070 [verbose] > |> _assert_eq 2f64
00:04:20 #5071 [verbose] >
00:04:20 #5072 [verbose] > 3.5 |> round
00:04:20 #5073 [verbose] > |> _assert_eq 4f64
00:04:20 #5074 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b7e854ce4afe028c5a5b7ca5484faeb0ea63410a8848df8b1dae6816b6eca162\main.spi
00:04:20 #5075 [verbose] >
00:04:20 #5076 [verbose] > ╭─[ 460.08ms - stdout ]────────────────────────────────────────────────────────╮
00:04:20 #5077 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:04:20 #5078 [verbose] > │ v0 │
00:04:20 #5079 [verbose] > │ and method0 () : unit = │
00:04:20 #5080 [verbose] > │ let v0 : (float -> float) = round │
00:04:20 #5081 [verbose] > │ let v1 : float = v0 0.5 │
00:04:20 #5082 [verbose] > │ let v2 : string = $"%A{v1}" │
00:04:20 #5083 [verbose] > │ System.Console.WriteLine v2 │
00:04:20 #5084 [verbose] > │ let v3 : bool = v1 = 0.0 │
00:04:20 #5085 [verbose] > │ let v5 : bool = │
00:04:20 #5086 [verbose] > │ if v3 then │
00:04:20 #5087 [verbose] > │ true │
00:04:20 #5088 [verbose] > │ else │
00:04:20 #5089 [verbose] > │ method1(v3) │
00:04:20 #5090 [verbose] > │ let v6 : string = $"__expect / actual: %A{v1} / expected: %A{0.0}" │
00:04:20 #5091 [verbose] > │ let v7 : bool = v5 = false │
00:04:20 #5092 [verbose] > │ if v7 then │
00:04:20 #5093 [verbose] > │ failwith<unit> v6 │
00:04:20 #5094 [verbose] > │ let v8 : (float -> float) = round │
00:04:20 #5095 [verbose] > │ let v9 : float = v8 1.5 │
00:04:20 #5096 [verbose] > │ let v10 : string = $"%A{v9}" │
00:04:20 #5097 [verbose] > │ System.Console.WriteLine v10 │
00:04:20 #5098 [verbose] > │ let v11 : bool = v9 = 2.0 │
00:04:20 #5099 [verbose] > │ let v13 : bool = │
00:04:20 #5100 [verbose] > │ if v11 then │
00:04:20 #5101 [verbose] > │ true │
00:04:20 #5102 [verbose] > │ else │
00:04:20 #5103 [verbose] > │ method1(v11) │
00:04:20 #5104 [verbose] > │ let v14 : string = $"__expect / actual: %A{v9} / expected: %A{2.0}" │
00:04:20 #5105 [verbose] > │ let v15 : bool = v13 = false │
00:04:20 #5106 [verbose] > │ if v15 then │
00:04:20 #5107 [verbose] > │ failwith<unit> v14 │
00:04:20 #5108 [verbose] > │ let v16 : (float -> float) = round │
00:04:20 #5109 [verbose] > │ let v17 : float = v16 2.5 │
00:04:20 #5110 [verbose] > │ let v18 : string = $"%A{v17}" │
00:04:20 #5111 [verbose] > │ System.Console.WriteLine v18 │
00:04:20 #5112 [verbose] > │ let v19 : bool = v17 = 2.0 │
00:04:20 #5113 [verbose] > │ let v21 : bool = │
00:04:20 #5114 [verbose] > │ if v19 then │
00:04:20 #5115 [verbose] > │ true │
00:04:20 #5116 [verbose] > │ else │
00:04:20 #5117 [verbose] > │ method1(v19) │
00:04:20 #5118 [verbose] > │ let v22 : string = $"__expect / actual: %A{v17} / expected: %A{2.0}" │
00:04:20 #5119 [verbose] > │ let v23 : bool = v21 = false │
00:04:20 #5120 [verbose] > │ if v23 then │
00:04:20 #5121 [verbose] > │ failwith<unit> v22 │
00:04:20 #5122 [verbose] > │ let v24 : (float -> float) = round │
00:04:20 #5123 [verbose] > │ let v25 : float = v24 3.5 │
00:04:20 #5124 [verbose] > │ let v26 : string = $"%A{v25}" │
00:04:20 #5125 [verbose] > │ System.Console.WriteLine v26 │
00:04:20 #5126 [verbose] > │ let v27 : bool = v25 = 4.0 │
00:04:20 #5127 [verbose] > │ let v29 : bool = │
00:04:20 #5128 [verbose] > │ if v27 then │
00:04:20 #5129 [verbose] > │ true │
00:04:20 #5130 [verbose] > │ else │
00:04:20 #5131 [verbose] > │ method1(v27) │
00:04:20 #5132 [verbose] > │ let v30 : string = $"__expect / actual: %A{v25} / expected: %A{4.0}" │
00:04:20 #5133 [verbose] > │ let v31 : bool = v29 = false │
00:04:20 #5134 [verbose] > │ if v31 then │
00:04:20 #5135 [verbose] > │ failwith<unit> v30 │
00:04:20 #5136 [verbose] > │ method0() │
00:04:20 #5137 [verbose] > │ │
00:04:20 #5138 [verbose] > │ 0.0 │
00:04:20 #5139 [verbose] > │ 2.0 │
00:04:20 #5140 [verbose] > │ 2.0 │
00:04:20 #5141 [verbose] > │ 4.0 │
00:04:20 #5142 [verbose] > │ │
00:04:20 #5143 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:20 #5144 [verbose] >
00:04:20 #5145 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:20 #5146 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:20 #5147 [verbose] > │ ## log_base │
00:04:20 #5148 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:20 #5149 [verbose] >
00:04:20 #5150 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:20 #5151 [verbose] > inl log_base (new_base : f64) (a : f64) =
00:04:20 #5152 [verbose] > $"System.Math.Log (!a, !new_base)" : f64
00:04:20 #5153 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5cc26f6b307404f6c34526ddc5dfb5d4810ef14de3a38adcdaa329989f623bb1\main.spi
00:04:21 #5154 [verbose] >
00:04:21 #5155 [verbose] > ╭─[ 307.18ms - stdout ]────────────────────────────────────────────────────────╮
00:04:21 #5156 [verbose] > │ () │
00:04:21 #5157 [verbose] > │ │
00:04:21 #5158 [verbose] > │ │
00:04:21 #5159 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:21 #5160 [verbose] >
00:04:21 #5161 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:21 #5162 [verbose] > // // test
00:04:21 #5163 [verbose] >
00:04:21 #5164 [verbose] > 100 |> log_base 10
00:04:21 #5165 [verbose] > |> _assert_eq 2
00:04:21 #5166 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8082d61c18bfe3690d4405438d19aa4743c4231769af9d1834a9581f6aed9055\main.spi
00:04:21 #5167 [verbose] >
00:04:21 #5168 [verbose] > ╭─[ 289.51ms - stdout ]────────────────────────────────────────────────────────╮
00:04:21 #5169 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:04:21 #5170 [verbose] > │ v0 │
00:04:21 #5171 [verbose] > │ and method0 () : unit = │
00:04:21 #5172 [verbose] > │ let v0 : float = System.Math.Log (100.0, 10.0) │
00:04:21 #5173 [verbose] > │ let v1 : string = $"%A{v0}" │
00:04:21 #5174 [verbose] > │ System.Console.WriteLine v1 │
00:04:21 #5175 [verbose] > │ let v2 : bool = v0 = 2.0 │
00:04:21 #5176 [verbose] > │ let v4 : bool = │
00:04:21 #5177 [verbose] > │ if v2 then │
00:04:21 #5178 [verbose] > │ true │
00:04:21 #5179 [verbose] > │ else │
00:04:21 #5180 [verbose] > │ method1(v2) │
00:04:21 #5181 [verbose] > │ let v5 : string = $"__expect / actual: %A{v0} / expected: %A{2.0}" │
00:04:21 #5182 [verbose] > │ let v6 : bool = v4 = false │
00:04:21 #5183 [verbose] > │ if v6 then │
00:04:21 #5184 [verbose] > │ failwith<unit> v5 │
00:04:21 #5185 [verbose] > │ method0() │
00:04:21 #5186 [verbose] > │ │
00:04:21 #5187 [verbose] > │ 2.0 │
00:04:21 #5188 [verbose] > │ │
00:04:21 #5189 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:21 #5190 [verbose] >
00:04:21 #5191 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:21 #5192 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:21 #5193 [verbose] > │ ## round │
00:04:21 #5194 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:21 #5195 [verbose] >
00:04:21 #5196 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:21 #5197 [verbose] > inl round forall t {float}. (x : t) : t =
00:04:21 #5198 [verbose] > $"round !x"
00:04:21 #5199 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\4a82adc786a4d2e4d5c8f2e10720e424266e5819fb02bf34e6bd3e601c751636\main.spi
00:04:21 #5200 [verbose] >
00:04:21 #5201 [verbose] > ╭─[ 322.01ms - stdout ]────────────────────────────────────────────────────────╮
00:04:21 #5202 [verbose] > │ () │
00:04:21 #5203 [verbose] > │ │
00:04:21 #5204 [verbose] > │ │
00:04:21 #5205 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:21 #5206 [verbose] >
00:04:21 #5207 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:21 #5208 [verbose] > // // test
00:04:21 #5209 [verbose] >
00:04:21 #5210 [verbose] > 0.5 |> round
00:04:21 #5211 [verbose] > |> _assert_eq 0f64
00:04:21 #5212 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c2800e18c533626438a5e8bd0777d340a96a68a7531380b1cc02d38dadd37232\main.spi
00:04:21 #5213 [verbose] >
00:04:21 #5214 [verbose] > ╭─[ 287.41ms - stdout ]────────────────────────────────────────────────────────╮
00:04:21 #5215 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:04:21 #5216 [verbose] > │ v0 │
00:04:21 #5217 [verbose] > │ and method0 () : unit = │
00:04:21 #5218 [verbose] > │ let v0 : float = round 0.5 │
00:04:21 #5219 [verbose] > │ let v1 : string = $"%A{v0}" │
00:04:21 #5220 [verbose] > │ System.Console.WriteLine v1 │
00:04:21 #5221 [verbose] > │ let v2 : bool = v0 = 0.0 │
00:04:21 #5222 [verbose] > │ let v4 : bool = │
00:04:21 #5223 [verbose] > │ if v2 then │
00:04:21 #5224 [verbose] > │ true │
00:04:21 #5225 [verbose] > │ else │
00:04:21 #5226 [verbose] > │ method1(v2) │
00:04:21 #5227 [verbose] > │ let v5 : string = $"__expect / actual: %A{v0} / expected: %A{0.0}" │
00:04:21 #5228 [verbose] > │ let v6 : bool = v4 = false │
00:04:21 #5229 [verbose] > │ if v6 then │
00:04:21 #5230 [verbose] > │ failwith<unit> v5 │
00:04:21 #5231 [verbose] > │ method0() │
00:04:21 #5232 [verbose] > │ │
00:04:21 #5233 [verbose] > │ 0.0 │
00:04:21 #5234 [verbose] > │ │
00:04:21 #5235 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:22 #5236 [verbose] >
00:04:22 #5237 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:22 #5238 [verbose] > // // test
00:04:22 #5239 [verbose] >
00:04:22 #5240 [verbose] > 0.6 |> round
00:04:22 #5241 [verbose] > |> _assert_eq 1f64
00:04:22 #5242 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9bdfbc487d6ac05c65e40811e4191da51c25ca471316fff7173cbec4948a6f91\main.spi
00:04:22 #5243 [verbose] >
00:04:22 #5244 [verbose] > ╭─[ 372.26ms - stdout ]────────────────────────────────────────────────────────╮
00:04:22 #5245 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:04:22 #5246 [verbose] > │ v0 │
00:04:22 #5247 [verbose] > │ and method0 () : unit = │
00:04:22 #5248 [verbose] > │ let v0 : float = round 0.6 │
00:04:22 #5249 [verbose] > │ let v1 : string = $"%A{v0}" │
00:04:22 #5250 [verbose] > │ System.Console.WriteLine v1 │
00:04:22 #5251 [verbose] > │ let v2 : bool = v0 = 1.0 │
00:04:22 #5252 [verbose] > │ let v4 : bool = │
00:04:22 #5253 [verbose] > │ if v2 then │
00:04:22 #5254 [verbose] > │ true │
00:04:22 #5255 [verbose] > │ else │
00:04:22 #5256 [verbose] > │ method1(v2) │
00:04:22 #5257 [verbose] > │ let v5 : string = $"__expect / actual: %A{v0} / expected: %A{1.0}" │
00:04:22 #5258 [verbose] > │ let v6 : bool = v4 = false │
00:04:22 #5259 [verbose] > │ if v6 then │
00:04:22 #5260 [verbose] > │ failwith<unit> v5 │
00:04:22 #5261 [verbose] > │ method0() │
00:04:22 #5262 [verbose] > │ │
00:04:22 #5263 [verbose] > │ 1.0 │
00:04:22 #5264 [verbose] > │ │
00:04:22 #5265 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:22 #5266 [verbose] >
00:04:22 #5267 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:22 #5268 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:22 #5269 [verbose] > │ ## square │
00:04:22 #5270 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:22 #5271 [verbose] >
00:04:22 #5272 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:22 #5273 [verbose] > inl square x =
00:04:22 #5274 [verbose] > x ** 2
00:04:22 #5275 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0a6224adba94e3830901ee228ee47e45ca3607fb178a21f3b7959f83b3b9c373\main.spi
00:04:22 #5276 [verbose] >
00:04:22 #5277 [verbose] > ╭─[ 339.79ms - stdout ]────────────────────────────────────────────────────────╮
00:04:22 #5278 [verbose] > │ () │
00:04:22 #5279 [verbose] > │ │
00:04:22 #5280 [verbose] > │ │
00:04:22 #5281 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:22 #5282 [verbose] >
00:04:22 #5283 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:22 #5284 [verbose] > // // test
00:04:22 #5285 [verbose] >
00:04:22 #5286 [verbose] > 5f64
00:04:22 #5287 [verbose] > |> sqrt
00:04:22 #5288 [verbose] > |> square
00:04:22 #5289 [verbose] > |> _assert_approx_eq None 5
00:04:22 #5290 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ba0718d978830d09c983a032cdb9fa16f86d2e7f1ff2a68aa358e77d82db4ae8\main.spi
00:04:23 #5291 [verbose] >
00:04:23 #5292 [verbose] > ╭─[ 284.64ms - stdout ]────────────────────────────────────────────────────────╮
00:04:23 #5293 [verbose] > │ let rec method0 () : unit = │
00:04:23 #5294 [verbose] > │ let v0 : string = $"%A{5.000000000000001}" │
00:04:23 #5295 [verbose] > │ System.Console.WriteLine v0 │
00:04:23 #5296 [verbose] > │ let v1 : string = $"__expect / actual: %A{5.000000000000001} / expected: │
00:04:23 #5297 [verbose] > │ %A{5.0}" │
00:04:23 #5298 [verbose] > │ () │
00:04:23 #5299 [verbose] > │ method0() │
00:04:23 #5300 [verbose] > │ │
00:04:23 #5301 [verbose] > │ 5.0 │
00:04:23 #5302 [verbose] > │ │
00:04:23 #5303 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:23 #5304 [verbose] >
00:04:23 #5305 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:23 #5306 [verbose] > // // test
00:04:23 #5307 [verbose] >
00:04:23 #5308 [verbose] > e () |> square
00:04:23 #5309 [verbose] > |> _assert_approx_eq None 7.3890560989306495
00:04:23 #5310 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e8a3502899a4272c12824483af8d92c4e64f786f1eda3217d7d9c8b586512baf\main.spi
00:04:23 #5311 [verbose] >
00:04:23 #5312 [verbose] > ╭─[ 303.77ms - stdout ]────────────────────────────────────────────────────────╮
00:04:23 #5313 [verbose] > │ let rec method0 () : unit = │
00:04:23 #5314 [verbose] > │ let v0 : string = $"%A{7.3890560989306495}" │
00:04:23 #5315 [verbose] > │ System.Console.WriteLine v0 │
00:04:23 #5316 [verbose] > │ let v1 : string = $"__expect / actual: %A{7.3890560989306495} / │
00:04:23 #5317 [verbose] > │ expected: %A{7.3890560989306495}" │
00:04:23 #5318 [verbose] > │ () │
00:04:23 #5319 [verbose] > │ method0() │
00:04:23 #5320 [verbose] > │ │
00:04:23 #5321 [verbose] > │ 7.389056099 │
00:04:23 #5322 [verbose] > │ │
00:04:23 #5323 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:27 #5324 [verbose] > [NbConvertApp] Converting notebook math.dib.ipynb to html
00:04:27 #5325 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:04:27 #5326 [verbose] > validate(nb)
00:04:28 #5327 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:04:28 #5328 [verbose] > return _pygments_highlight(
00:04:29 #5329 [verbose] > [NbConvertApp] Writing 313224 bytes to math.dib.html
00:04:30 #5330 [debug] executeAsync / exitCode: 0 / output.Length: 35922
00:04:30 #5331 [debug] main / executeCommand / exitCode: 0
00:04:30 #5332 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 \"optionm'.dib\" -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:04:35 #5333 [verbose] >
00:04:35 #5334 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:35 #5335 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:35 #5336 [verbose] > │ # optionm │
00:04:35 #5337 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:35 #5338 [verbose] >
00:04:35 #5339 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:35 #5340 [verbose] > // // test
00:04:35 #5341 [verbose] >
00:04:35 #5342 [verbose] > open testing
00:04:41 #5343 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:04:43 #5344 [verbose] >
00:04:43 #5345 [verbose] > ╭─[ 7.40s - stdout ]───────────────────────────────────────────────────────────╮
00:04:43 #5346 [verbose] > │ () │
00:04:43 #5347 [verbose] > │ │
00:04:43 #5348 [verbose] > │ │
00:04:43 #5349 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:43 #5350 [verbose] >
00:04:43 #5351 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:43 #5352 [verbose] > open rust_operators
00:04:43 #5353 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b9bafaa9190fd8b92f96dcaf4c2d6855aa7c524558dd349c71163ab7065188b0\main.spi
00:04:43 #5354 [verbose] >
00:04:43 #5355 [verbose] > ╭─[ 296.13ms - stdout ]────────────────────────────────────────────────────────╮
00:04:43 #5356 [verbose] > │ () │
00:04:43 #5357 [verbose] > │ │
00:04:43 #5358 [verbose] > │ │
00:04:43 #5359 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:43 #5360 [verbose] >
00:04:43 #5361 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:43 #5362 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:43 #5363 [verbose] > │ ## default_value │
00:04:43 #5364 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:43 #5365 [verbose] >
00:04:43 #5366 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:43 #5367 [verbose] > inl default_value d =
00:04:43 #5368 [verbose] > optionm.defaultWith d
00:04:43 #5369 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\67879457f8da40dc6d225e4ec958787028de82cfe885be7a3cdce48a543bf5c4\main.spi
00:04:43 #5370 [verbose] >
00:04:43 #5371 [verbose] > ╭─[ 249.01ms - stdout ]────────────────────────────────────────────────────────╮
00:04:43 #5372 [verbose] > │ () │
00:04:43 #5373 [verbose] > │ │
00:04:43 #5374 [verbose] > │ │
00:04:43 #5375 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:43 #5376 [verbose] >
00:04:43 #5377 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:43 #5378 [verbose] > // // test
00:04:43 #5379 [verbose] >
00:04:43 #5380 [verbose] > None
00:04:43 #5381 [verbose] > |> default_value 3i32
00:04:43 #5382 [verbose] > |> _assert_eq 3i32
00:04:43 #5383 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f127e910128409c2144d0ec128524c6d3f4ea158b822f92b4bde74822af60286\main.spi
00:04:45 #5384 [verbose] >
00:04:45 #5385 [verbose] > ╭─[ 1.59s - stdout ]───────────────────────────────────────────────────────────╮
00:04:45 #5386 [verbose] > │ let rec method0 () : unit = │
00:04:45 #5387 [verbose] > │ let v0 : string = $"%A{3}" │
00:04:45 #5388 [verbose] > │ System.Console.WriteLine v0 │
00:04:45 #5389 [verbose] > │ let v1 : string = $"__expect / actual: %A{3} / expected: %A{3}" │
00:04:45 #5390 [verbose] > │ () │
00:04:45 #5391 [verbose] > │ method0() │
00:04:45 #5392 [verbose] > │ │
00:04:45 #5393 [verbose] > │ 3 │
00:04:45 #5394 [verbose] > │ │
00:04:45 #5395 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:45 #5396 [verbose] >
00:04:45 #5397 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:45 #5398 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:45 #5399 [verbose] > │ ## (/??) │
00:04:45 #5400 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:45 #5401 [verbose] >
00:04:45 #5402 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:45 #5403 [verbose] > inl (/??) a b =
00:04:45 #5404 [verbose] > a |> default_value b
00:04:45 #5405 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8ac13221d2a941e0351392f381fd7f7a76bbee28a435f6166d57c9d6edeaed75\main.spi
00:04:45 #5406 [verbose] >
00:04:45 #5407 [verbose] > ╭─[ 413.20ms - stdout ]────────────────────────────────────────────────────────╮
00:04:45 #5408 [verbose] > │ () │
00:04:45 #5409 [verbose] > │ │
00:04:45 #5410 [verbose] > │ │
00:04:45 #5411 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:45 #5412 [verbose] >
00:04:45 #5413 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:45 #5414 [verbose] > // // test
00:04:45 #5415 [verbose] >
00:04:45 #5416 [verbose] > None /?? 3i32
00:04:45 #5417 [verbose] > |> _assert_eq 3i32
00:04:45 #5418 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\81032139a8d1837f2e24dd8e76254e3c5e3d1b290f1f037b49ebed4992b9367a\main.spi
00:04:46 #5419 [verbose] >
00:04:46 #5420 [verbose] > ╭─[ 397.39ms - stdout ]────────────────────────────────────────────────────────╮
00:04:46 #5421 [verbose] > │ let rec method0 () : unit = │
00:04:46 #5422 [verbose] > │ let v0 : string = $"%A{3}" │
00:04:46 #5423 [verbose] > │ System.Console.WriteLine v0 │
00:04:46 #5424 [verbose] > │ let v1 : string = $"__expect / actual: %A{3} / expected: %A{3}" │
00:04:46 #5425 [verbose] > │ () │
00:04:46 #5426 [verbose] > │ method0() │
00:04:46 #5427 [verbose] > │ │
00:04:46 #5428 [verbose] > │ 3 │
00:04:46 #5429 [verbose] > │ │
00:04:46 #5430 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:46 #5431 [verbose] >
00:04:46 #5432 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:46 #5433 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:46 #5434 [verbose] > │ ## default_with │
00:04:46 #5435 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:46 #5436 [verbose] >
00:04:46 #5437 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:46 #5438 [verbose] > inl default_with fn = function
00:04:46 #5439 [verbose] > | Some x => x
00:04:46 #5440 [verbose] > | None => fn ()
00:04:46 #5441 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\25cdae92c8945151af3cafac33bf38a8e49f838b2bdaa1cd03b1ab2309e59aee\main.spi
00:04:46 #5442 [verbose] >
00:04:46 #5443 [verbose] > ╭─[ 331.24ms - stdout ]────────────────────────────────────────────────────────╮
00:04:46 #5444 [verbose] > │ () │
00:04:46 #5445 [verbose] > │ │
00:04:46 #5446 [verbose] > │ │
00:04:46 #5447 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:46 #5448 [verbose] >
00:04:46 #5449 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:46 #5450 [verbose] > // // test
00:04:46 #5451 [verbose] >
00:04:46 #5452 [verbose] > None
00:04:46 #5453 [verbose] > |> default_with fun () => 3i32
00:04:46 #5454 [verbose] > |> _assert_eq 3i32
00:04:46 #5455 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3d0a5ba8955e48e694d1aee4d367d506b897018237440ccaefde413d3cf6b122\main.spi
00:04:47 #5456 [verbose] >
00:04:47 #5457 [verbose] > ╭─[ 469.25ms - stdout ]────────────────────────────────────────────────────────╮
00:04:47 #5458 [verbose] > │ let rec method0 () : unit = │
00:04:47 #5459 [verbose] > │ let v0 : string = $"%A{3}" │
00:04:47 #5460 [verbose] > │ System.Console.WriteLine v0 │
00:04:47 #5461 [verbose] > │ let v1 : string = $"__expect / actual: %A{3} / expected: %A{3}" │
00:04:47 #5462 [verbose] > │ () │
00:04:47 #5463 [verbose] > │ method0() │
00:04:47 #5464 [verbose] > │ │
00:04:47 #5465 [verbose] > │ 3 │
00:04:47 #5466 [verbose] > │ │
00:04:47 #5467 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:47 #5468 [verbose] >
00:04:47 #5469 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:47 #5470 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:47 #5471 [verbose] > │ ## choose │
00:04:47 #5472 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:47 #5473 [verbose] >
00:04:47 #5474 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:47 #5475 [verbose] > inl choose fn a b =
00:04:47 #5476 [verbose] > match a, b with
00:04:47 #5477 [verbose] > | Some x, Some y => fn x y |> Some
00:04:47 #5478 [verbose] > | _ => None
00:04:47 #5479 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5ce28a8150483c0d279d8581b3d5bf160c6489ada948ce74630bd54b6d30603e\main.spi
00:04:47 #5480 [verbose] >
00:04:47 #5481 [verbose] > ╭─[ 302.43ms - stdout ]────────────────────────────────────────────────────────╮
00:04:47 #5482 [verbose] > │ () │
00:04:47 #5483 [verbose] > │ │
00:04:47 #5484 [verbose] > │ │
00:04:47 #5485 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:47 #5486 [verbose] >
00:04:47 #5487 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:47 #5488 [verbose] > // // test
00:04:47 #5489 [verbose] >
00:04:47 #5490 [verbose] > (Some 2i32, Some 3)
00:04:47 #5491 [verbose] > ||> choose (+)
00:04:47 #5492 [verbose] > |> _assert_eq (Some 5)
00:04:47 #5493 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\421b231584700139210a8a78bd888043a4511c6e8cfd39b1199b1441afee064e\main.spi
00:04:48 #5494 [verbose] >
00:04:48 #5495 [verbose] > ╭─[ 1.07s - stdout ]───────────────────────────────────────────────────────────╮
00:04:48 #5496 [verbose] > │ type [<Struct>] US0 = │
00:04:48 #5497 [verbose] > │ | US0_0 of f0_0 : int32 │
00:04:48 #5498 [verbose] > │ | US0_1 │
00:04:48 #5499 [verbose] > │ let rec method0 () : unit = │
00:04:48 #5500 [verbose] > │ let v0 : US0 = US0_0(5) │
00:04:48 #5501 [verbose] > │ let v1 : string = $"%A{v0}" │
00:04:48 #5502 [verbose] > │ System.Console.WriteLine v1 │
00:04:48 #5503 [verbose] > │ let v5 : US0 = US0_0(5) │
00:04:48 #5504 [verbose] > │ let v6 : US0 = US0_0(5) │
00:04:48 #5505 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:04:48 #5506 [verbose] > │ () │
00:04:48 #5507 [verbose] > │ method0() │
00:04:48 #5508 [verbose] > │ │
00:04:48 #5509 [verbose] > │ US0_0 5 │
00:04:48 #5510 [verbose] > │ │
00:04:48 #5511 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:48 #5512 [verbose] >
00:04:48 #5513 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:48 #5514 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:48 #5515 [verbose] > │ ## iter │
00:04:48 #5516 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:48 #5517 [verbose] >
00:04:48 #5518 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:48 #5519 [verbose] > inl iter fn = function
00:04:48 #5520 [verbose] > | Some x => fn x
00:04:48 #5521 [verbose] > | None => ()
00:04:48 #5522 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\6b71c772c676b54887ca3127d3461a4519f9fc60d20088c62814be31b7b7586e\main.spi
00:04:48 #5523 [verbose] >
00:04:48 #5524 [verbose] > ╭─[ 377.85ms - stdout ]────────────────────────────────────────────────────────╮
00:04:48 #5525 [verbose] > │ () │
00:04:48 #5526 [verbose] > │ │
00:04:48 #5527 [verbose] > │ │
00:04:48 #5528 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:48 #5529 [verbose] >
00:04:48 #5530 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:48 #5531 [verbose] > // // test
00:04:48 #5532 [verbose] >
00:04:48 #5533 [verbose] > inl n = mut 1i32
00:04:48 #5534 [verbose] > inl fn =
00:04:48 #5535 [verbose] > fun n' =>
00:04:48 #5536 [verbose] > n <- *n + n'
00:04:48 #5537 [verbose] > Some 1i32 |> iter fn
00:04:48 #5538 [verbose] > None |> iter fn
00:04:48 #5539 [verbose] > *n
00:04:48 #5540 [verbose] > |> _assert_eq 2i32
00:04:48 #5541 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8dc4e3276ef0ed082dee76c2df62a507aee81f28f265a2b4231ebec10582426d\main.spi
00:04:49 #5542 [verbose] >
00:04:49 #5543 [verbose] > ╭─[ 631.08ms - stdout ]────────────────────────────────────────────────────────╮
00:04:49 #5544 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:04:49 #5545 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:04:49 #5546 [verbose] > │ v0 │
00:04:49 #5547 [verbose] > │ and method0 () : unit = │
00:04:49 #5548 [verbose] > │ let v0 : Mut0 = {l0 = 1} : Mut0 │
00:04:49 #5549 [verbose] > │ let v1 : int32 = v0.l0 │
00:04:49 #5550 [verbose] > │ let v2 : int32 = v1 + 1 │
00:04:49 #5551 [verbose] > │ v0.l0 <- v2 │
00:04:49 #5552 [verbose] > │ let v3 : int32 = v0.l0 │
00:04:49 #5553 [verbose] > │ let v4 : string = $"%A{v3}" │
00:04:49 #5554 [verbose] > │ System.Console.WriteLine v4 │
00:04:49 #5555 [verbose] > │ let v5 : bool = v3 = 2 │
00:04:49 #5556 [verbose] > │ let v7 : bool = │
00:04:49 #5557 [verbose] > │ if v5 then │
00:04:49 #5558 [verbose] > │ true │
00:04:49 #5559 [verbose] > │ else │
00:04:49 #5560 [verbose] > │ method1(v5) │
00:04:49 #5561 [verbose] > │ let v8 : string = $"__expect / actual: %A{v3} / expected: %A{2}" │
00:04:49 #5562 [verbose] > │ let v9 : bool = v7 = false │
00:04:49 #5563 [verbose] > │ if v9 then │
00:04:49 #5564 [verbose] > │ failwith<unit> v8 │
00:04:49 #5565 [verbose] > │ method0() │
00:04:49 #5566 [verbose] > │ │
00:04:49 #5567 [verbose] > │ 2 │
00:04:49 #5568 [verbose] > │ │
00:04:49 #5569 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:49 #5570 [verbose] >
00:04:49 #5571 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:49 #5572 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:49 #5573 [verbose] > │ ## option' │
00:04:49 #5574 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:49 #5575 [verbose] >
00:04:49 #5576 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:49 #5577 [verbose] > nominal option' t = $"`t option"
00:04:49 #5578 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\36176593a8fc7e49837a0752c5271c8bbf20dba7eab7702a2646ac56a8a22d2f\main.spi
00:04:49 #5579 [verbose] >
00:04:49 #5580 [verbose] > ╭─[ 283.71ms - stdout ]────────────────────────────────────────────────────────╮
00:04:49 #5581 [verbose] > │ () │
00:04:49 #5582 [verbose] > │ │
00:04:49 #5583 [verbose] > │ │
00:04:49 #5584 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:49 #5585 [verbose] >
00:04:49 #5586 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:49 #5587 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:49 #5588 [verbose] > │ ## none' │
00:04:49 #5589 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:49 #5590 [verbose] >
00:04:49 #5591 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:49 #5592 [verbose] > inl none' forall t. () : option' t =
00:04:49 #5593 [verbose] > $'None'
00:04:49 #5594 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\61cf11b890e30cc7af2db4da0c20ed70a99e3752df1f131161c5149c28d64481\main.spi
00:04:50 #5595 [verbose] >
00:04:50 #5596 [verbose] > ╭─[ 575.76ms - stdout ]────────────────────────────────────────────────────────╮
00:04:50 #5597 [verbose] > │ () │
00:04:50 #5598 [verbose] > │ │
00:04:50 #5599 [verbose] > │ │
00:04:50 #5600 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:50 #5601 [verbose] >
00:04:50 #5602 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:50 #5603 [verbose] > inl some' forall t. (x : t) : option' t =
00:04:50 #5604 [verbose] > $'Some !x '
00:04:50 #5605 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\cd3fc4e682f03bb9e8a92093370444dd11eaea3e4fa892de8675a188e769908b\main.spi
00:04:51 #5606 [verbose] >
00:04:51 #5607 [verbose] > ╭─[ 864.34ms - stdout ]────────────────────────────────────────────────────────╮
00:04:51 #5608 [verbose] > │ () │
00:04:51 #5609 [verbose] > │ │
00:04:51 #5610 [verbose] > │ │
00:04:51 #5611 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:51 #5612 [verbose] >
00:04:51 #5613 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:51 #5614 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:51 #5615 [verbose] > │ ## map │
00:04:51 #5616 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:51 #5617 [verbose] >
00:04:51 #5618 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:51 #5619 [verbose] > inl map forall t u. (fn : t -> u) (x : option' t) : option' u =
00:04:51 #5620 [verbose] > $'!x |> Option.map !fn '
00:04:51 #5621 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\328e4e90c2e02fcb5140bb04fa5ba5135366b9f9c8fbb39342e52adfd0200611\main.spi
00:04:52 #5622 [verbose] >
00:04:52 #5623 [verbose] > ╭─[ 781.43ms - stdout ]────────────────────────────────────────────────────────╮
00:04:52 #5624 [verbose] > │ () │
00:04:52 #5625 [verbose] > │ │
00:04:52 #5626 [verbose] > │ │
00:04:52 #5627 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:52 #5628 [verbose] >
00:04:52 #5629 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:52 #5630 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:52 #5631 [verbose] > │ ## default_value' │
00:04:52 #5632 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:52 #5633 [verbose] >
00:04:52 #5634 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:52 #5635 [verbose] > inl default_value' forall t. (value : t) (x : option' t) : t =
00:04:52 #5636 [verbose] > $'!x |> Option.defaultValue !value '
00:04:52 #5637 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\6be86e30f5faa062d2f646db126f0658b00a3e4eac876a24c69584ab68623bba\main.spi
00:04:53 #5638 [verbose] >
00:04:53 #5639 [verbose] > ╭─[ 1.21s - stdout ]───────────────────────────────────────────────────────────╮
00:04:53 #5640 [verbose] > │ () │
00:04:53 #5641 [verbose] > │ │
00:04:53 #5642 [verbose] > │ │
00:04:53 #5643 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:53 #5644 [verbose] >
00:04:53 #5645 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:53 #5646 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:53 #5647 [verbose] > │ ## unbox │
00:04:53 #5648 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:53 #5649 [verbose] >
00:04:53 #5650 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:53 #5651 [verbose] > inl unbox forall t. (x : option' t) : option t =
00:04:53 #5652 [verbose] > // x
00:04:53 #5653 [verbose] > // |> map Some
00:04:53 #5654 [verbose] > // |> default_value' None
00:04:53 #5655 [verbose] > inl some x : option t = Some x
00:04:53 #5656 [verbose] > inl some = join some
00:04:53 #5657 [verbose] > inl none : option t = None
00:04:53 #5658 [verbose] > $'!x |> Option.map !some |> Option.defaultValue !none '
00:04:54 #5659 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b2db0a968256653f13e6f1be5fbe106f9ba76c764f98669ea965b3fd3fb7c6c2\main.spi
00:04:54 #5660 [verbose] >
00:04:55 #5661 [verbose] > ╭─[ 1.41s - stdout ]───────────────────────────────────────────────────────────╮
00:04:55 #5662 [verbose] > │ () │
00:04:55 #5663 [verbose] > │ │
00:04:55 #5664 [verbose] > │ │
00:04:55 #5665 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:55 #5666 [verbose] >
00:04:55 #5667 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:55 #5668 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:55 #5669 [verbose] > │ ## box │
00:04:55 #5670 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:55 #5671 [verbose] >
00:04:55 #5672 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:55 #5673 [verbose] > inl box forall t. (x : option t) : option' t =
00:04:55 #5674 [verbose] > // x
00:04:55 #5675 [verbose] > // |> optionm.map some'
00:04:55 #5676 [verbose] > // |> default_with none'
00:04:55 #5677 [verbose] > match x with
00:04:55 #5678 [verbose] > | Some x => some' x
00:04:55 #5679 [verbose] > | None => none' ()
00:04:55 #5680 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a78ede552695dc9de7f7db67d1fb45afb89687614395b1a5a2dd5a655694afad\main.spi
00:04:56 #5681 [verbose] >
00:04:56 #5682 [verbose] > ╭─[ 988.05ms - stdout ]────────────────────────────────────────────────────────╮
00:04:56 #5683 [verbose] > │ () │
00:04:56 #5684 [verbose] > │ │
00:04:56 #5685 [verbose] > │ │
00:04:56 #5686 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:56 #5687 [verbose] >
00:04:56 #5688 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:56 #5689 [verbose] > // // test
00:04:56 #5690 [verbose] >
00:04:56 #5691 [verbose] > inl x = Some 3i32
00:04:56 #5692 [verbose] > inl y : option i32 = None
00:04:56 #5693 [verbose] > inl x' = x |> box |> unbox
00:04:56 #5694 [verbose] > inl y' = y |> box |> unbox
00:04:56 #5695 [verbose] > (x', y') |> _assert_eq (x, y)
00:04:56 #5696 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0aeace847dae50c0e69af1bc159df72293015a0a75a9298cdbf988efdf7bcb3a\main.spi
00:04:57 #5697 [verbose] >
00:04:57 #5698 [verbose] > ╭─[ 1.14s - stdout ]───────────────────────────────────────────────────────────╮
00:04:57 #5699 [verbose] > │ type [<Struct>] US0 = │
00:04:57 #5700 [verbose] > │ | US0_0 of f0_0 : int32 │
00:04:57 #5701 [verbose] > │ | US0_1 │
00:04:57 #5702 [verbose] > │ let rec closure0 () (v0 : int32) : US0 = │
00:04:57 #5703 [verbose] > │ US0_0(v0) │
00:04:57 #5704 [verbose] > │ and method1 () : (int32 -> US0) = │
00:04:57 #5705 [verbose] > │ closure0() │
00:04:57 #5706 [verbose] > │ and method2 (v0 : bool) : bool = │
00:04:57 #5707 [verbose] > │ v0 │
00:04:57 #5708 [verbose] > │ and method0 () : unit = │
00:04:57 #5709 [verbose] > │ let v0 : int32 option = Some 3 │
00:04:57 #5710 [verbose] > │ let v1 : (int32 -> US0) = method1() │
00:04:57 #5711 [verbose] > │ let v2 : US0 = US0_1 │
00:04:57 #5712 [verbose] > │ let v3 : US0 = v0 |> Option.map v1 |> Option.defaultValue v2 │
00:04:57 #5713 [verbose] > │ let v4 : int32 option = None │
00:04:57 #5714 [verbose] > │ let v5 : (int32 -> US0) = method1() │
00:04:57 #5715 [verbose] > │ let v6 : US0 = US0_1 │
00:04:57 #5716 [verbose] > │ let v7 : US0 = v4 |> Option.map v5 |> Option.defaultValue v6 │
00:04:57 #5717 [verbose] > │ let v8 : string = $"%A{struct (v3, v7)}" │
00:04:57 #5718 [verbose] > │ System.Console.WriteLine v8 │
00:04:57 #5719 [verbose] > │ let v13 : bool = │
00:04:57 #5720 [verbose] > │ match v3 with │
00:04:57 #5721 [verbose] > │ | US0_0(v11) -> (* Some *) │
00:04:57 #5722 [verbose] > │ let v12 : bool = v11 = 3 │
00:04:57 #5723 [verbose] > │ v12 │
00:04:57 #5724 [verbose] > │ | _ -> │
00:04:57 #5725 [verbose] > │ false │
00:04:57 #5726 [verbose] > │ let v15 : bool = │
00:04:57 #5727 [verbose] > │ if v13 then │
00:04:57 #5728 [verbose] > │ match v7 with │
00:04:57 #5729 [verbose] > │ | US0_1 -> (* None *) │
00:04:57 #5730 [verbose] > │ true │
00:04:57 #5731 [verbose] > │ | _ -> │
00:04:57 #5732 [verbose] > │ false │
00:04:57 #5733 [verbose] > │ else │
00:04:57 #5734 [verbose] > │ false │
00:04:57 #5735 [verbose] > │ let v17 : bool = │
00:04:57 #5736 [verbose] > │ if v15 then │
00:04:57 #5737 [verbose] > │ true │
00:04:57 #5738 [verbose] > │ else │
00:04:57 #5739 [verbose] > │ method2(v15) │
00:04:57 #5740 [verbose] > │ let v18 : US0 = US0_0(3) │
00:04:57 #5741 [verbose] > │ let v19 : US0 = US0_1 │
00:04:57 #5742 [verbose] > │ let v20 : string = $"__expect / actual: %A{struct (v3, v7)} / expected: │
00:04:57 #5743 [verbose] > │ %A{struct (v18, v19)}" │
00:04:57 #5744 [verbose] > │ let v21 : bool = v17 = false │
00:04:57 #5745 [verbose] > │ if v21 then │
00:04:57 #5746 [verbose] > │ failwith<unit> v20 │
00:04:57 #5747 [verbose] > │ method0() │
00:04:57 #5748 [verbose] > │ │
00:04:57 #5749 [verbose] > │ struct (US0_0 3, US0_1) │
00:04:57 #5750 [verbose] > │ │
00:04:57 #5751 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:57 #5752 [verbose] >
00:04:57 #5753 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:57 #5754 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:57 #5755 [verbose] > │ ## try' │
00:04:57 #5756 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:57 #5757 [verbose] >
00:04:57 #5758 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:57 #5759 [verbose] > inl try' forall t. (x : option' t) : t =
00:04:57 #5760 [verbose] > !\\(x, $'"$0?"')
00:04:57 #5761 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e932dca77827d733c597dc005999451239aec49491cee6fc2fa7b3b00a6bc9e9\main.spi
00:04:57 #5762 [verbose] >
00:04:57 #5763 [verbose] > ╭─[ 430.01ms - stdout ]────────────────────────────────────────────────────────╮
00:04:57 #5764 [verbose] > │ () │
00:04:57 #5765 [verbose] > │ │
00:04:57 #5766 [verbose] > │ │
00:04:57 #5767 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:57 #5768 [verbose] >
00:04:57 #5769 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:57 #5770 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:57 #5771 [verbose] > │ ## flatten │
00:04:57 #5772 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:57 #5773 [verbose] >
00:04:57 #5774 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:57 #5775 [verbose] > inl flatten x =
00:04:57 #5776 [verbose] > match x with
00:04:57 #5777 [verbose] > | Some (Some x) => Some x
00:04:57 #5778 [verbose] > | _ => None
00:04:57 #5779 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9d03e78bd0838e8c4b0c09022722c45b13d1dee49cbb72ca6a1aed6b7f9a545d\main.spi
00:04:58 #5780 [verbose] >
00:04:58 #5781 [verbose] > ╭─[ 450.44ms - stdout ]────────────────────────────────────────────────────────╮
00:04:58 #5782 [verbose] > │ () │
00:04:58 #5783 [verbose] > │ │
00:04:58 #5784 [verbose] > │ │
00:04:58 #5785 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:58 #5786 [verbose] >
00:04:58 #5787 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:58 #5788 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:58 #5789 [verbose] > │ ## unwrap │
00:04:58 #5790 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:58 #5791 [verbose] >
00:04:58 #5792 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:58 #5793 [verbose] > inl unwrap forall t. (x : option' t) : t =
00:04:58 #5794 [verbose] > !\($'"!x.unwrap()"')
00:04:58 #5795 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c624bfeb41e844c578e8a5628302bdedae0dc20b8fd02127e04d6798b9737393\main.spi
00:04:58 #5796 [verbose] >
00:04:58 #5797 [verbose] > ╭─[ 409.60ms - stdout ]────────────────────────────────────────────────────────╮
00:04:58 #5798 [verbose] > │ () │
00:04:58 #5799 [verbose] > │ │
00:04:58 #5800 [verbose] > │ │
00:04:58 #5801 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:58 #5802 [verbose] >
00:04:58 #5803 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:58 #5804 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:58 #5805 [verbose] > │ ## unwrap_or │
00:04:58 #5806 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:58 #5807 [verbose] >
00:04:58 #5808 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:58 #5809 [verbose] > inl unwrap_or forall t. (def : t) (x : option' t) : t =
00:04:58 #5810 [verbose] > !\($'"!x.unwrap_or(!def)"')
00:04:58 #5811 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d7a292df577870f7c411168cc5a5630e6494ab4c70096c2ff064f136287dab36\main.spi
00:04:59 #5812 [verbose] >
00:04:59 #5813 [verbose] > ╭─[ 485.49ms - stdout ]────────────────────────────────────────────────────────╮
00:04:59 #5814 [verbose] > │ () │
00:04:59 #5815 [verbose] > │ │
00:04:59 #5816 [verbose] > │ │
00:04:59 #5817 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:59 #5818 [verbose] >
00:04:59 #5819 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:04:59 #5820 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:04:59 #5821 [verbose] > │ ## rc_upgrade │
00:04:59 #5822 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:04:59 #5823 [verbose] >
00:04:59 #5824 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:04:59 #5825 [verbose] > inl rc_upgrade forall t. (x : rust.weak_rc t) : option (rust.rc t) =
00:04:59 #5826 [verbose] > inl x = join x
00:04:59 #5827 [verbose] > !\($'"std::rc::Weak::upgrade(&!x)"')
00:04:59 #5828 [verbose] > |> unbox
00:04:59 #5829 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e3ee0d37cd277b03bb9437af678f43c66c8843fcf421c239fbd6b3ca8968c7a2\main.spi
00:04:59 #5830 [verbose] >
00:04:59 #5831 [verbose] > ╭─[ 427.06ms - stdout ]────────────────────────────────────────────────────────╮
00:04:59 #5832 [verbose] > │ () │
00:04:59 #5833 [verbose] > │ │
00:04:59 #5834 [verbose] > │ │
00:04:59 #5835 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:03 #5836 [verbose] > [NbConvertApp] Converting notebook optionm'.dib.ipynb to html
00:05:03 #5837 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:05:03 #5838 [verbose] > validate(nb)
00:05:04 #5839 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:05:04 #5840 [verbose] > return _pygments_highlight(
00:05:05 #5841 [verbose] > [NbConvertApp] Writing 316892 bytes to optionm'.dib.html
00:05:07 #5842 [debug] executeAsync / exitCode: 0 / output.Length: 28733
00:05:07 #5843 [debug] main / executeCommand / exitCode: 0
00:05:07 #5844 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 \"am'.dib\" -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:05:13 #5845 [verbose] >
00:05:13 #5846 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:13 #5847 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:13 #5848 [verbose] > │ # am' │
00:05:13 #5849 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:14 #5850 [verbose] >
00:05:14 #5851 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:14 #5852 [verbose] > // // test
00:05:14 #5853 [verbose] >
00:05:14 #5854 [verbose] > open testing
00:05:14 #5855 [verbose] >
00:05:14 #5856 [verbose] > prototype append t : t -> t -> t
00:05:20 #5857 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d3d1d1fda00dd59384a760ee28afa07876963bb48cdababc03a709d40c2fc076\main.spi
00:05:22 #5858 [verbose] >
00:05:22 #5859 [verbose] > ╭─[ 8.65s - stdout ]───────────────────────────────────────────────────────────╮
00:05:22 #5860 [verbose] > │ () │
00:05:22 #5861 [verbose] > │ │
00:05:22 #5862 [verbose] > │ │
00:05:22 #5863 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:22 #5864 [verbose] >
00:05:22 #5865 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:22 #5866 [verbose] > open rust_operators
00:05:22 #5867 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\13d26aa870446379747b84676a44180aa3203ef2c14e9c6ed6def74d269ef546\main.spi
00:05:23 #5868 [verbose] >
00:05:23 #5869 [verbose] > ╭─[ 517.04ms - stdout ]────────────────────────────────────────────────────────╮
00:05:23 #5870 [verbose] > │ () │
00:05:23 #5871 [verbose] > │ │
00:05:23 #5872 [verbose] > │ │
00:05:23 #5873 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:23 #5874 [verbose] >
00:05:23 #5875 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:23 #5876 [verbose] > inl types () =
00:05:23 #5877 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"[[$0]]\")>]] type Slice<'T> =
00:05:23 #5878 [verbose] > class end"
00:05:23 #5879 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"[[$0; $1]]\")>]] type
00:05:23 #5880 [verbose] > Slice'<'T, 'U> = class end"
00:05:23 #5881 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"Vec<$0>\")>]] type Vec<'T> =
00:05:23 #5882 [verbose] > class end"
00:05:23 #5883 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a246473e46304eac16c62c52a5a8c4d56812b3707f446c29d6befd9812cc4ed1\main.spi
00:05:23 #5884 [verbose] >
00:05:23 #5885 [verbose] > ╭─[ 384.98ms - stdout ]────────────────────────────────────────────────────────╮
00:05:23 #5886 [verbose] > │ () │
00:05:23 #5887 [verbose] > │ │
00:05:23 #5888 [verbose] > │ │
00:05:23 #5889 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:23 #5890 [verbose] >
00:05:23 #5891 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:23 #5892 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:23 #5893 [verbose] > │ ## length │
00:05:23 #5894 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:23 #5895 [verbose] >
00:05:23 #5896 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:23 #5897 [verbose] > inl length forall dim {int} el. (a : a dim el) : dim =
00:05:23 #5898 [verbose] > a |> length
00:05:23 #5899 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a6d2bf8c7739a4897fd6df1a6a2f505a8e0b3ddd37de6b83c66d916cabd46cfa\main.spi
00:05:23 #5900 [verbose] >
00:05:23 #5901 [verbose] > ╭─[ 401.71ms - stdout ]────────────────────────────────────────────────────────╮
00:05:23 #5902 [verbose] > │ () │
00:05:24 #5903 [verbose] > │ │
00:05:24 #5904 [verbose] > │ │
00:05:24 #5905 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:24 #5906 [verbose] >
00:05:24 #5907 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:24 #5908 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:24 #5909 [verbose] > │ ## index │
00:05:24 #5910 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:24 #5911 [verbose] >
00:05:24 #5912 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:24 #5913 [verbose] > inl index forall dim {int} el. (i : dim) (a : a dim el) : el =
00:05:24 #5914 [verbose] > index a i
00:05:24 #5915 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\336a73751fa0664fe14f5735785601485f75d018fdad0e0e677ee0dbe1d8231d\main.spi
00:05:24 #5916 [verbose] >
00:05:24 #5917 [verbose] > ╭─[ 732.76ms - stdout ]────────────────────────────────────────────────────────╮
00:05:24 #5918 [verbose] > │ () │
00:05:24 #5919 [verbose] > │ │
00:05:24 #5920 [verbose] > │ │
00:05:24 #5921 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:24 #5922 [verbose] >
00:05:24 #5923 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:24 #5924 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:24 #5925 [verbose] > │ ## append │
00:05:24 #5926 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:24 #5927 [verbose] >
00:05:24 #5928 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:24 #5929 [verbose] > instance append a dim {int; number} t =
00:05:24 #5930 [verbose] > am.append
00:05:25 #5931 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\519d26b3db1ac382080493fdcb2d8534bc2a4cab7e1ffc5d9c5332475ca7d1ed\main.spi
00:05:25 #5932 [verbose] >
00:05:25 #5933 [verbose] > ╭─[ 577.65ms - stdout ]────────────────────────────────────────────────────────╮
00:05:25 #5934 [verbose] > │ () │
00:05:25 #5935 [verbose] > │ │
00:05:25 #5936 [verbose] > │ │
00:05:25 #5937 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:25 #5938 [verbose] >
00:05:25 #5939 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:25 #5940 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:25 #5941 [verbose] > │ ## /@ │
00:05:25 #5942 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:25 #5943 [verbose] >
00:05:25 #5944 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:25 #5945 [verbose] > inl (/@) a b =
00:05:25 #5946 [verbose] > b |> append a
00:05:25 #5947 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b7caca8a0792a108d00b1d861735eb2ba8bba7bf5b27c651790e5a6b64a0c9f8\main.spi
00:05:25 #5948 [verbose] >
00:05:25 #5949 [verbose] > ╭─[ 528.03ms - stdout ]────────────────────────────────────────────────────────╮
00:05:25 #5950 [verbose] > │ () │
00:05:25 #5951 [verbose] > │ │
00:05:25 #5952 [verbose] > │ │
00:05:25 #5953 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:25 #5954 [verbose] >
00:05:25 #5955 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:25 #5956 [verbose] > // // test
00:05:25 #5957 [verbose] >
00:05:25 #5958 [verbose] > a ;[[ "a"; "b" ]] /@ a ;[[ "c"; "d" ]]
00:05:25 #5959 [verbose] > |> _assert_eq (a ;[[ "a"; "b"; "c"; "d" ]] : _ i32 _)
00:05:26 #5960 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\df4afc29c4c45298ac46f5b85aa5bbe90d5a2526f3a6b237ba63524d3637b4d3\main.spi
00:05:29 #5961 [verbose] >
00:05:29 #5962 [verbose] > ╭─[ 3.65s - stdout ]───────────────────────────────────────────────────────────╮
00:05:29 #5963 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:05:29 #5964 [verbose] > │ let rec method1 (v0 : int32, v1 : Mut0) : bool = │
00:05:29 #5965 [verbose] > │ let v2 : int32 = v1.l0 │
00:05:29 #5966 [verbose] > │ let v3 : bool = v2 < v0 │
00:05:29 #5967 [verbose] > │ v3 │
00:05:29 #5968 [verbose] > │ and method2 (v0 : (string []), v1 : (string []), v2 : int32) : bool = │
00:05:29 #5969 [verbose] > │ let v3 : int32 = v0.Length │
00:05:29 #5970 [verbose] > │ let v4 : bool = v2 < v3 │
00:05:29 #5971 [verbose] > │ if v4 then │
00:05:29 #5972 [verbose] > │ let v5 : string = v0.[int v2] │
00:05:29 #5973 [verbose] > │ let v6 : string = v1.[int v2] │
00:05:29 #5974 [verbose] > │ let v7 : bool = v5 = v6 │
00:05:29 #5975 [verbose] > │ if v7 then │
00:05:29 #5976 [verbose] > │ let v8 : int32 = v2 + 1 │
00:05:29 #5977 [verbose] > │ method2(v0, v1, v8) │
00:05:29 #5978 [verbose] > │ else │
00:05:29 #5979 [verbose] > │ false │
00:05:29 #5980 [verbose] > │ else │
00:05:29 #5981 [verbose] > │ true │
00:05:29 #5982 [verbose] > │ and method3 (v0 : bool) : bool = │
00:05:29 #5983 [verbose] > │ v0 │
00:05:29 #5984 [verbose] > │ and method0 () : unit = │
00:05:29 #5985 [verbose] > │ let v0 : string = "a" │
00:05:29 #5986 [verbose] > │ let v1 : string = "b" │
00:05:29 #5987 [verbose] > │ let v2 : (string []) = [|v0; v1|] │
00:05:29 #5988 [verbose] > │ let v3 : string = "c" │
00:05:29 #5989 [verbose] > │ let v4 : string = "d" │
00:05:29 #5990 [verbose] > │ let v5 : (string []) = [|v3; v4|] │
00:05:29 #5991 [verbose] > │ let v6 : int32 = v2.Length │
00:05:29 #5992 [verbose] > │ let v7 : int32 = v5.Length │
00:05:29 #5993 [verbose] > │ let v8 : int32 = v6 + v7 │
00:05:29 #5994 [verbose] > │ let v9 : (string []) = Array.zeroCreate<string> (v8) │
00:05:29 #5995 [verbose] > │ let v10 : Mut0 = {l0 = 0} : Mut0 │
00:05:29 #5996 [verbose] > │ while method1(v8, v10) do │
00:05:29 #5997 [verbose] > │ let v12 : int32 = v10.l0 │
00:05:29 #5998 [verbose] > │ let v13 : bool = v12 < v6 │
00:05:29 #5999 [verbose] > │ let v17 : string = │
00:05:29 #6000 [verbose] > │ if v13 then │
00:05:29 #6001 [verbose] > │ let v14 : string = v2.[int v12] │
00:05:29 #6002 [verbose] > │ v14 │
00:05:29 #6003 [verbose] > │ else │
00:05:29 #6004 [verbose] > │ let v15 : int32 = v12 - v6 │
00:05:29 #6005 [verbose] > │ let v16 : string = v5.[int v15] │
00:05:29 #6006 [verbose] > │ v16 │
00:05:29 #6007 [verbose] > │ v9.[int v12] <- v17 │
00:05:29 #6008 [verbose] > │ let v18 : int32 = v12 + 1 │
00:05:29 #6009 [verbose] > │ v10.l0 <- v18 │
00:05:29 #6010 [verbose] > │ () │
00:05:29 #6011 [verbose] > │ let v19 : (string []) = [|v0; v1; v3; v4|] │
00:05:29 #6012 [verbose] > │ let v20 : string = $"%A{v9}" │
00:05:29 #6013 [verbose] > │ System.Console.WriteLine v20 │
00:05:29 #6014 [verbose] > │ let v21 : int32 = v9.Length │
00:05:29 #6015 [verbose] > │ let v22 : int32 = v19.Length │
00:05:29 #6016 [verbose] > │ let v23 : bool = v21 = v22 │
00:05:29 #6017 [verbose] > │ let v24 : bool = v23 <> true │
00:05:29 #6018 [verbose] > │ let v27 : bool = │
00:05:29 #6019 [verbose] > │ if v24 then │
00:05:29 #6020 [verbose] > │ false │
00:05:29 #6021 [verbose] > │ else │
00:05:29 #6022 [verbose] > │ let v25 : int32 = 0 │
00:05:29 #6023 [verbose] > │ method2(v9, v19, v25) │
00:05:29 #6024 [verbose] > │ let v29 : bool = │
00:05:29 #6025 [verbose] > │ if v27 then │
00:05:29 #6026 [verbose] > │ true │
00:05:29 #6027 [verbose] > │ else │
00:05:29 #6028 [verbose] > │ method3(v27) │
00:05:29 #6029 [verbose] > │ let v30 : string = $"__expect / actual: %A{v9} / expected: %A{v19}" │
00:05:29 #6030 [verbose] > │ let v31 : bool = v29 = false │
00:05:29 #6031 [verbose] > │ if v31 then │
00:05:29 #6032 [verbose] > │ failwith<unit> v30 │
00:05:29 #6033 [verbose] > │ method0() │
00:05:29 #6034 [verbose] > │ │
00:05:29 #6035 [verbose] > │ [|"a"; "b"; "c"; "d"|] │
00:05:29 #6036 [verbose] > │ │
00:05:29 #6037 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:29 #6038 [verbose] >
00:05:29 #6039 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:29 #6040 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:29 #6041 [verbose] > │ ## collect │
00:05:29 #6042 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:29 #6043 [verbose] >
00:05:29 #6044 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:29 #6045 [verbose] > inl collect forall t r. (fn : t -> a i32 r) (items : a i32 t) : a i32 r =
00:05:29 #6046 [verbose] > items
00:05:29 #6047 [verbose] > |> am.map fn
00:05:29 #6048 [verbose] > |> am.fold (/@) (a ;[[]])
00:05:29 #6049 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2693c6b90f129744e060db4d79d9eface9c6fe47ca378ca3d7909f8858bb1361\main.spi
00:05:29 #6050 [verbose] >
00:05:29 #6051 [verbose] > ╭─[ 264.22ms - stdout ]────────────────────────────────────────────────────────╮
00:05:29 #6052 [verbose] > │ () │
00:05:29 #6053 [verbose] > │ │
00:05:29 #6054 [verbose] > │ │
00:05:29 #6055 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:29 #6056 [verbose] >
00:05:29 #6057 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:29 #6058 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:29 #6059 [verbose] > │ ## choose │
00:05:29 #6060 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:29 #6061 [verbose] >
00:05:29 #6062 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:29 #6063 [verbose] > inl choose f l =
00:05:29 #6064 [verbose] > (l, [[]])
00:05:29 #6065 [verbose] > ||> am.foldBack fun x acc =>
00:05:29 #6066 [verbose] > match f x with
00:05:29 #6067 [verbose] > | Some y => y :: acc
00:05:29 #6068 [verbose] > | None => acc
00:05:29 #6069 [verbose] > |> listm.toArray
00:05:30 #6070 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\bdc19e2c49dab8063681100a8c3f6cf6dcb93b090e2e6290c2cd5e5e85670ed4\main.spi
00:05:30 #6071 [verbose] >
00:05:30 #6072 [verbose] > ╭─[ 347.47ms - stdout ]────────────────────────────────────────────────────────╮
00:05:30 #6073 [verbose] > │ () │
00:05:30 #6074 [verbose] > │ │
00:05:30 #6075 [verbose] > │ │
00:05:30 #6076 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:30 #6077 [verbose] >
00:05:30 #6078 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:30 #6079 [verbose] > // // test
00:05:30 #6080 [verbose] >
00:05:30 #6081 [verbose] > (am.init 10i32 id : a _ _)
00:05:30 #6082 [verbose] > |> choose (fun x => if x % 2 = 0 then Some x else None)
00:05:30 #6083 [verbose] > |> _assert_eq (a ;[[ 0; 2; 4; 6; 8 ]] : _ i32 _)
00:05:30 #6084 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c26b724252467a7efd00f43b4635fbeec0ea48a2bdda3cdf5f85ffda1b9c7ec0\main.spi
00:05:31 #6085 [verbose] >
00:05:31 #6086 [verbose] > ╭─[ 1.15s - stdout ]───────────────────────────────────────────────────────────╮
00:05:31 #6087 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:05:31 #6088 [verbose] > │ and UH0 = │
00:05:31 #6089 [verbose] > │ | UH0_0 │
00:05:31 #6090 [verbose] > │ | UH0_1 of int32 * UH0 │
00:05:31 #6091 [verbose] > │ and Mut1 = {mutable l0 : int32; mutable l1 : UH0} │
00:05:31 #6092 [verbose] > │ and [<Struct>] US0 = │
00:05:31 #6093 [verbose] > │ | US0_0 of f0_0 : int32 │
00:05:31 #6094 [verbose] > │ | US0_1 │
00:05:31 #6095 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:05:31 #6096 [verbose] > │ let v1 : int32 = v0.l0 │
00:05:31 #6097 [verbose] > │ let v2 : bool = v1 < 10 │
00:05:31 #6098 [verbose] > │ v2 │
00:05:31 #6099 [verbose] > │ and method2 (v0 : int32, v1 : Mut1) : bool = │
00:05:31 #6100 [verbose] > │ let v2 : int32 = v1.l0 │
00:05:31 #6101 [verbose] > │ let v3 : bool = v2 < v0 │
00:05:31 #6102 [verbose] > │ v3 │
00:05:31 #6103 [verbose] > │ and method4 (v0 : UH0, v1 : int32) : int32 = │
00:05:31 #6104 [verbose] > │ match v0 with │
00:05:31 #6105 [verbose] > │ | UH0_1(v2, v3) -> (* Cons *) │
00:05:31 #6106 [verbose] > │ let v4 : int32 = v1 + 1 │
00:05:31 #6107 [verbose] > │ method4(v3, v4) │
00:05:31 #6108 [verbose] > │ | UH0_0 -> (* Nil *) │
00:05:31 #6109 [verbose] > │ v1 │
00:05:31 #6110 [verbose] > │ and method5 (v0 : (int32 []), v1 : UH0, v2 : int32) : int32 = │
00:05:31 #6111 [verbose] > │ match v1 with │
00:05:31 #6112 [verbose] > │ | UH0_1(v3, v4) -> (* Cons *) │
00:05:31 #6113 [verbose] > │ v0.[int v2] <- v3 │
00:05:31 #6114 [verbose] > │ let v5 : int32 = v2 + 1 │
00:05:31 #6115 [verbose] > │ method5(v0, v4, v5) │
00:05:31 #6116 [verbose] > │ | UH0_0 -> (* Nil *) │
00:05:31 #6117 [verbose] > │ v2 │
00:05:31 #6118 [verbose] > │ and method3 (v0 : UH0) : (int32 []) = │
00:05:31 #6119 [verbose] > │ let v1 : int32 = 0 │
00:05:31 #6120 [verbose] > │ let v2 : int32 = method4(v0, v1) │
00:05:31 #6121 [verbose] > │ let v3 : (int32 []) = Array.zeroCreate<int32> (v2) │
00:05:31 #6122 [verbose] > │ let v4 : int32 = 0 │
00:05:31 #6123 [verbose] > │ let v5 : int32 = method5(v3, v0, v4) │
00:05:31 #6124 [verbose] > │ v3 │
00:05:31 #6125 [verbose] > │ and method6 (v0 : (int32 []), v1 : (int32 []), v2 : int32) : bool = │
00:05:31 #6126 [verbose] > │ let v3 : int32 = v0.Length │
00:05:31 #6127 [verbose] > │ let v4 : bool = v2 < v3 │
00:05:31 #6128 [verbose] > │ if v4 then │
00:05:31 #6129 [verbose] > │ let v5 : int32 = v0.[int v2] │
00:05:31 #6130 [verbose] > │ let v6 : int32 = v1.[int v2] │
00:05:31 #6131 [verbose] > │ let v7 : bool = v5 = v6 │
00:05:31 #6132 [verbose] > │ if v7 then │
00:05:31 #6133 [verbose] > │ let v8 : int32 = v2 + 1 │
00:05:31 #6134 [verbose] > │ method6(v0, v1, v8) │
00:05:31 #6135 [verbose] > │ else │
00:05:31 #6136 [verbose] > │ false │
00:05:31 #6137 [verbose] > │ else │
00:05:31 #6138 [verbose] > │ true │
00:05:31 #6139 [verbose] > │ and method7 (v0 : bool) : bool = │
00:05:31 #6140 [verbose] > │ v0 │
00:05:31 #6141 [verbose] > │ and method0 () : unit = │
00:05:31 #6142 [verbose] > │ let v0 : (int32 []) = Array.zeroCreate<int32> (10) │
00:05:31 #6143 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:05:31 #6144 [verbose] > │ while method1(v1) do │
00:05:31 #6145 [verbose] > │ let v3 : int32 = v1.l0 │
00:05:31 #6146 [verbose] > │ v0.[int v3] <- v3 │
00:05:31 #6147 [verbose] > │ let v4 : int32 = v3 + 1 │
00:05:31 #6148 [verbose] > │ v1.l0 <- v4 │
00:05:31 #6149 [verbose] > │ () │
00:05:31 #6150 [verbose] > │ let v5 : int32 = v0.Length │
00:05:31 #6151 [verbose] > │ let v6 : UH0 = UH0_0 │
00:05:31 #6152 [verbose] > │ let v7 : Mut1 = {l0 = 0; l1 = v6} : Mut1 │
00:05:31 #6153 [verbose] > │ while method2(v5, v7) do │
00:05:31 #6154 [verbose] > │ let v9 : int32 = v7.l0 │
00:05:31 #6155 [verbose] > │ let v10 : int32 = -v9 │
00:05:31 #6156 [verbose] > │ let v11 : int32 = v10 + v5 │
00:05:31 #6157 [verbose] > │ let v12 : int32 = v11 - 1 │
00:05:31 #6158 [verbose] > │ let v13 : UH0 = v7.l1 │
00:05:31 #6159 [verbose] > │ let v14 : int32 = v0.[int v12] │
00:05:31 #6160 [verbose] > │ let v15 : int32 = v14 % 2 │
00:05:31 #6161 [verbose] > │ let v16 : bool = v15 = 0 │
00:05:31 #6162 [verbose] > │ let v19 : US0 = │
00:05:31 #6163 [verbose] > │ if v16 then │
00:05:31 #6164 [verbose] > │ US0_0(v14) │
00:05:31 #6165 [verbose] > │ else │
00:05:31 #6166 [verbose] > │ US0_1 │
00:05:31 #6167 [verbose] > │ let v23 : UH0 = │
00:05:31 #6168 [verbose] > │ match v19 with │
00:05:31 #6169 [verbose] > │ | US0_1 -> (* None *) │
00:05:31 #6170 [verbose] > │ v13 │
00:05:31 #6171 [verbose] > │ | US0_0(v20) -> (* Some *) │
00:05:31 #6172 [verbose] > │ UH0_1(v20, v13) │
00:05:31 #6173 [verbose] > │ let v24 : int32 = v9 + 1 │
00:05:31 #6174 [verbose] > │ v7.l0 <- v24 │
00:05:31 #6175 [verbose] > │ v7.l1 <- v23 │
00:05:31 #6176 [verbose] > │ () │
00:05:31 #6177 [verbose] > │ let v25 : UH0 = v7.l1 │
00:05:31 #6178 [verbose] > │ let v26 : (int32 []) = method3(v25) │
00:05:31 #6179 [verbose] > │ let v27 : (int32 []) = [|0; 2; 4; 6; 8|] │
00:05:31 #6180 [verbose] > │ let v28 : string = $"%A{v26}" │
00:05:31 #6181 [verbose] > │ System.Console.WriteLine v28 │
00:05:31 #6182 [verbose] > │ let v29 : int32 = v26.Length │
00:05:31 #6183 [verbose] > │ let v30 : int32 = v27.Length │
00:05:31 #6184 [verbose] > │ let v31 : bool = v29 = v30 │
00:05:31 #6185 [verbose] > │ let v32 : bool = v31 <> true │
00:05:31 #6186 [verbose] > │ let v35 : bool = │
00:05:31 #6187 [verbose] > │ if v32 then │
00:05:31 #6188 [verbose] > │ false │
00:05:31 #6189 [verbose] > │ else │
00:05:31 #6190 [verbose] > │ let v33 : int32 = 0 │
00:05:31 #6191 [verbose] > │ method6(v26, v27, v33) │
00:05:31 #6192 [verbose] > │ let v37 : bool = │
00:05:31 #6193 [verbose] > │ if v35 then │
00:05:31 #6194 [verbose] > │ true │
00:05:31 #6195 [verbose] > │ else │
00:05:31 #6196 [verbose] > │ method7(v35) │
00:05:31 #6197 [verbose] > │ let v38 : string = $"__expect / actual: %A{v26} / expected: %A{v27}" │
00:05:31 #6198 [verbose] > │ let v39 : bool = v37 = false │
00:05:31 #6199 [verbose] > │ if v39 then │
00:05:31 #6200 [verbose] > │ failwith<unit> v38 │
00:05:31 #6201 [verbose] > │ method0() │
00:05:31 #6202 [verbose] > │ │
00:05:31 #6203 [verbose] > │ [|0; 2; 4; 6; 8|] │
00:05:31 #6204 [verbose] > │ │
00:05:31 #6205 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:31 #6206 [verbose] >
00:05:31 #6207 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:31 #6208 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:31 #6209 [verbose] > │ ## sum │
00:05:31 #6210 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:31 #6211 [verbose] >
00:05:31 #6212 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:31 #6213 [verbose] > inl sum (a' : a _ _) =
00:05:31 #6214 [verbose] > a' |> am.fold (+) 0
00:05:31 #6215 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c790ae083d786fe97262d691a4a1b0447dcb6ae4b60d294c9deb1a6d27d94e05\main.spi
00:05:31 #6216 [verbose] >
00:05:31 #6217 [verbose] > ╭─[ 319.03ms - stdout ]────────────────────────────────────────────────────────╮
00:05:31 #6218 [verbose] > │ () │
00:05:31 #6219 [verbose] > │ │
00:05:31 #6220 [verbose] > │ │
00:05:31 #6221 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:31 #6222 [verbose] >
00:05:31 #6223 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:31 #6224 [verbose] > // // test
00:05:31 #6225 [verbose] >
00:05:31 #6226 [verbose] > am.init 10i32 id
00:05:31 #6227 [verbose] > |> sum
00:05:31 #6228 [verbose] > |> _assert_eq 45
00:05:32 #6229 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\de9b7e62d1578f79255422e90622f25cf83423b56d6d2a5981a400d26f10d3ea\main.spi
00:05:32 #6230 [verbose] >
00:05:32 #6231 [verbose] > ╭─[ 402.61ms - stdout ]────────────────────────────────────────────────────────╮
00:05:32 #6232 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:05:32 #6233 [verbose] > │ and Mut1 = {mutable l0 : int32; mutable l1 : int32} │
00:05:32 #6234 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:05:32 #6235 [verbose] > │ let v1 : int32 = v0.l0 │
00:05:32 #6236 [verbose] > │ let v2 : bool = v1 < 10 │
00:05:32 #6237 [verbose] > │ v2 │
00:05:32 #6238 [verbose] > │ and method2 (v0 : int32, v1 : Mut1) : bool = │
00:05:32 #6239 [verbose] > │ let v2 : int32 = v1.l0 │
00:05:32 #6240 [verbose] > │ let v3 : bool = v2 < v0 │
00:05:32 #6241 [verbose] > │ v3 │
00:05:32 #6242 [verbose] > │ and method3 (v0 : bool) : bool = │
00:05:32 #6243 [verbose] > │ v0 │
00:05:32 #6244 [verbose] > │ and method0 () : unit = │
00:05:32 #6245 [verbose] > │ let v0 : (int32 []) = Array.zeroCreate<int32> (10) │
00:05:32 #6246 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:05:32 #6247 [verbose] > │ while method1(v1) do │
00:05:32 #6248 [verbose] > │ let v3 : int32 = v1.l0 │
00:05:32 #6249 [verbose] > │ v0.[int v3] <- v3 │
00:05:32 #6250 [verbose] > │ let v4 : int32 = v3 + 1 │
00:05:32 #6251 [verbose] > │ v1.l0 <- v4 │
00:05:32 #6252 [verbose] > │ () │
00:05:32 #6253 [verbose] > │ let v5 : int32 = v0.Length │
00:05:32 #6254 [verbose] > │ let v6 : Mut1 = {l0 = 0; l1 = 0} : Mut1 │
00:05:32 #6255 [verbose] > │ while method2(v5, v6) do │
00:05:32 #6256 [verbose] > │ let v8 : int32 = v6.l0 │
00:05:32 #6257 [verbose] > │ let v9 : int32 = v6.l1 │
00:05:32 #6258 [verbose] > │ let v10 : int32 = v0.[int v8] │
00:05:32 #6259 [verbose] > │ let v11 : int32 = v9 + v10 │
00:05:32 #6260 [verbose] > │ let v12 : int32 = v8 + 1 │
00:05:32 #6261 [verbose] > │ v6.l0 <- v12 │
00:05:32 #6262 [verbose] > │ v6.l1 <- v11 │
00:05:32 #6263 [verbose] > │ () │
00:05:32 #6264 [verbose] > │ let v13 : int32 = v6.l1 │
00:05:32 #6265 [verbose] > │ let v14 : string = $"%A{v13}" │
00:05:32 #6266 [verbose] > │ System.Console.WriteLine v14 │
00:05:32 #6267 [verbose] > │ let v15 : bool = v13 = 45 │
00:05:32 #6268 [verbose] > │ let v17 : bool = │
00:05:32 #6269 [verbose] > │ if v15 then │
00:05:32 #6270 [verbose] > │ true │
00:05:32 #6271 [verbose] > │ else │
00:05:32 #6272 [verbose] > │ method3(v15) │
00:05:32 #6273 [verbose] > │ let v18 : string = $"__expect / actual: %A{v13} / expected: %A{45}" │
00:05:32 #6274 [verbose] > │ let v19 : bool = v17 = false │
00:05:32 #6275 [verbose] > │ if v19 then │
00:05:32 #6276 [verbose] > │ failwith<unit> v18 │
00:05:32 #6277 [verbose] > │ method0() │
00:05:32 #6278 [verbose] > │ │
00:05:32 #6279 [verbose] > │ 45 │
00:05:32 #6280 [verbose] > │ │
00:05:32 #6281 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:32 #6282 [verbose] >
00:05:32 #6283 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:32 #6284 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:32 #6285 [verbose] > │ ## init_series │
00:05:32 #6286 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:32 #6287 [verbose] >
00:05:32 #6288 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:32 #6289 [verbose] > inl init_series start end inc =
00:05:32 #6290 [verbose] > inl total = conv ((end - start) / inc) + 1
00:05:32 #6291 [verbose] > am.init total (conv >> (*) inc >> (+) start) : a i32 _
00:05:32 #6292 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\058dbf427278c05865af272cfbc19c29faff3dc8bcec170c34cfb5a9dd1bc99d\main.spi
00:05:32 #6293 [verbose] >
00:05:32 #6294 [verbose] > ╭─[ 375.82ms - stdout ]────────────────────────────────────────────────────────╮
00:05:32 #6295 [verbose] > │ () │
00:05:32 #6296 [verbose] > │ │
00:05:32 #6297 [verbose] > │ │
00:05:32 #6298 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:32 #6299 [verbose] >
00:05:32 #6300 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:32 #6301 [verbose] > // // test
00:05:32 #6302 [verbose] >
00:05:32 #6303 [verbose] > init_series 0 1 0.5
00:05:32 #6304 [verbose] > |> _assert_eq (a ;[[ 0f64; 0.5; 1 ]])
00:05:32 #6305 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3011d13ca6d4c6b6e4bf5d7f4fce601e2086079fc5b1aa10659807244b8a69fc\main.spi
00:05:33 #6306 [verbose] >
00:05:33 #6307 [verbose] > ╭─[ 385.51ms - stdout ]────────────────────────────────────────────────────────╮
00:05:33 #6308 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:05:33 #6309 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:05:33 #6310 [verbose] > │ let v1 : int32 = v0.l0 │
00:05:33 #6311 [verbose] > │ let v2 : bool = v1 < 3 │
00:05:33 #6312 [verbose] > │ v2 │
00:05:33 #6313 [verbose] > │ and method2 (v0 : (float []), v1 : (float []), v2 : int32) : bool = │
00:05:33 #6314 [verbose] > │ let v3 : int32 = v0.Length │
00:05:33 #6315 [verbose] > │ let v4 : bool = v2 < v3 │
00:05:33 #6316 [verbose] > │ if v4 then │
00:05:33 #6317 [verbose] > │ let v5 : float = v0.[int v2] │
00:05:33 #6318 [verbose] > │ let v6 : float = v1.[int v2] │
00:05:33 #6319 [verbose] > │ let v7 : bool = v5 = v6 │
00:05:33 #6320 [verbose] > │ if v7 then │
00:05:33 #6321 [verbose] > │ let v8 : int32 = v2 + 1 │
00:05:33 #6322 [verbose] > │ method2(v0, v1, v8) │
00:05:33 #6323 [verbose] > │ else │
00:05:33 #6324 [verbose] > │ false │
00:05:33 #6325 [verbose] > │ else │
00:05:33 #6326 [verbose] > │ true │
00:05:33 #6327 [verbose] > │ and method3 (v0 : bool) : bool = │
00:05:33 #6328 [verbose] > │ v0 │
00:05:33 #6329 [verbose] > │ and method0 () : unit = │
00:05:33 #6330 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (3) │
00:05:33 #6331 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:05:33 #6332 [verbose] > │ while method1(v1) do │
00:05:33 #6333 [verbose] > │ let v3 : int32 = v1.l0 │
00:05:33 #6334 [verbose] > │ let v4 : float = float v3 │
00:05:33 #6335 [verbose] > │ let v5 : float = 0.5 * v4 │
00:05:33 #6336 [verbose] > │ v0.[int v3] <- v5 │
00:05:33 #6337 [verbose] > │ let v6 : int32 = v3 + 1 │
00:05:33 #6338 [verbose] > │ v1.l0 <- v6 │
00:05:33 #6339 [verbose] > │ () │
00:05:33 #6340 [verbose] > │ let v7 : (float []) = [|0.0; 0.5; 1.0|] │
00:05:33 #6341 [verbose] > │ let v8 : string = $"%A{v0}" │
00:05:33 #6342 [verbose] > │ System.Console.WriteLine v8 │
00:05:33 #6343 [verbose] > │ let v9 : int32 = v0.Length │
00:05:33 #6344 [verbose] > │ let v10 : int32 = v7.Length │
00:05:33 #6345 [verbose] > │ let v11 : bool = v9 = v10 │
00:05:33 #6346 [verbose] > │ let v12 : bool = v11 <> true │
00:05:33 #6347 [verbose] > │ let v15 : bool = │
00:05:33 #6348 [verbose] > │ if v12 then │
00:05:33 #6349 [verbose] > │ false │
00:05:33 #6350 [verbose] > │ else │
00:05:33 #6351 [verbose] > │ let v13 : int32 = 0 │
00:05:33 #6352 [verbose] > │ method2(v0, v7, v13) │
00:05:33 #6353 [verbose] > │ let v17 : bool = │
00:05:33 #6354 [verbose] > │ if v15 then │
00:05:33 #6355 [verbose] > │ true │
00:05:33 #6356 [verbose] > │ else │
00:05:33 #6357 [verbose] > │ method3(v15) │
00:05:33 #6358 [verbose] > │ let v18 : string = $"__expect / actual: %A{v0} / expected: %A{v7}" │
00:05:33 #6359 [verbose] > │ let v19 : bool = v17 = false │
00:05:33 #6360 [verbose] > │ if v19 then │
00:05:33 #6361 [verbose] > │ failwith<unit> v18 │
00:05:33 #6362 [verbose] > │ method0() │
00:05:33 #6363 [verbose] > │ │
00:05:33 #6364 [verbose] > │ [|0.0; 0.5; 1.0|] │
00:05:33 #6365 [verbose] > │ │
00:05:33 #6366 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:33 #6367 [verbose] >
00:05:33 #6368 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:33 #6369 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:33 #6370 [verbose] > │ ## head │
00:05:33 #6371 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:33 #6372 [verbose] >
00:05:33 #6373 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:33 #6374 [verbose] > inl head (ar : a _ _) =
00:05:33 #6375 [verbose] > if var_is ar || length ar > 0
00:05:33 #6376 [verbose] > then ar |> index 0
00:05:33 #6377 [verbose] > else error_type "The length of the array should be greater than 0."
00:05:33 #6378 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\981dc93870296fc9f9f1d68d1f395589e6b1ca94d4b37f4cc899e5e368e3e565\main.spi
00:05:33 #6379 [verbose] >
00:05:33 #6380 [verbose] > ╭─[ 287.16ms - stdout ]────────────────────────────────────────────────────────╮
00:05:33 #6381 [verbose] > │ () │
00:05:33 #6382 [verbose] > │ │
00:05:33 #6383 [verbose] > │ │
00:05:33 #6384 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:33 #6385 [verbose] >
00:05:33 #6386 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:33 #6387 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:33 #6388 [verbose] > │ ## last │
00:05:33 #6389 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:33 #6390 [verbose] >
00:05:33 #6391 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:33 #6392 [verbose] > inl last (ar : a _ _) =
00:05:33 #6393 [verbose] > inl len = length ar
00:05:33 #6394 [verbose] > if var_is ar || len > 0
00:05:33 #6395 [verbose] > then ar |> index (len - 1)
00:05:33 #6396 [verbose] > else error_type "The length of the array should be greater than 0."
00:05:33 #6397 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ff52934dc8f78e5716309459d1b627c8dafdb8c593c448d2dae4a846ed7943bb\main.spi
00:05:33 #6398 [verbose] >
00:05:33 #6399 [verbose] > ╭─[ 312.88ms - stdout ]────────────────────────────────────────────────────────╮
00:05:33 #6400 [verbose] > │ () │
00:05:33 #6401 [verbose] > │ │
00:05:33 #6402 [verbose] > │ │
00:05:33 #6403 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:33 #6404 [verbose] >
00:05:33 #6405 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:33 #6406 [verbose] > // // test
00:05:33 #6407 [verbose] >
00:05:33 #6408 [verbose] > am.init 10i32 id
00:05:33 #6409 [verbose] > |> last
00:05:33 #6410 [verbose] > |> _assert_eq 9
00:05:33 #6411 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\47cfe2cba41e3b652e3a4e9be98ac035fd792927b5fcce3f7198b17a65159b97\main.spi
00:05:34 #6412 [verbose] >
00:05:34 #6413 [verbose] > ╭─[ 338.60ms - stdout ]────────────────────────────────────────────────────────╮
00:05:34 #6414 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:05:34 #6415 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:05:34 #6416 [verbose] > │ let v1 : int32 = v0.l0 │
00:05:34 #6417 [verbose] > │ let v2 : bool = v1 < 10 │
00:05:34 #6418 [verbose] > │ v2 │
00:05:34 #6419 [verbose] > │ and method2 (v0 : bool) : bool = │
00:05:34 #6420 [verbose] > │ v0 │
00:05:34 #6421 [verbose] > │ and method0 () : unit = │
00:05:34 #6422 [verbose] > │ let v0 : (int32 []) = Array.zeroCreate<int32> (10) │
00:05:34 #6423 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:05:34 #6424 [verbose] > │ while method1(v1) do │
00:05:34 #6425 [verbose] > │ let v3 : int32 = v1.l0 │
00:05:34 #6426 [verbose] > │ v0.[int v3] <- v3 │
00:05:34 #6427 [verbose] > │ let v4 : int32 = v3 + 1 │
00:05:34 #6428 [verbose] > │ v1.l0 <- v4 │
00:05:34 #6429 [verbose] > │ () │
00:05:34 #6430 [verbose] > │ let v5 : int32 = v0.Length │
00:05:34 #6431 [verbose] > │ let v6 : int32 = v5 - 1 │
00:05:34 #6432 [verbose] > │ let v7 : int32 = v0.[int v6] │
00:05:34 #6433 [verbose] > │ let v8 : string = $"%A{v7}" │
00:05:34 #6434 [verbose] > │ System.Console.WriteLine v8 │
00:05:34 #6435 [verbose] > │ let v9 : bool = v7 = 9 │
00:05:34 #6436 [verbose] > │ let v11 : bool = │
00:05:34 #6437 [verbose] > │ if v9 then │
00:05:34 #6438 [verbose] > │ true │
00:05:34 #6439 [verbose] > │ else │
00:05:34 #6440 [verbose] > │ method2(v9) │
00:05:34 #6441 [verbose] > │ let v12 : string = $"__expect / actual: %A{v7} / expected: %A{9}" │
00:05:34 #6442 [verbose] > │ let v13 : bool = v11 = false │
00:05:34 #6443 [verbose] > │ if v13 then │
00:05:34 #6444 [verbose] > │ failwith<unit> v12 │
00:05:34 #6445 [verbose] > │ method0() │
00:05:34 #6446 [verbose] > │ │
00:05:34 #6447 [verbose] > │ 9 │
00:05:34 #6448 [verbose] > │ │
00:05:34 #6449 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:34 #6450 [verbose] >
00:05:34 #6451 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:34 #6452 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:34 #6453 [verbose] > │ ## try_pick │
00:05:34 #6454 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:34 #6455 [verbose] >
00:05:34 #6456 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:34 #6457 [verbose] > inl try_pick forall t u. (fn : t -> option u) (array : a _ t) : option u =
00:05:34 #6458 [verbose] > (array, None)
00:05:34 #6459 [verbose] > ||> am.foldBack fun x acc =>
00:05:34 #6460 [verbose] > match acc with
00:05:34 #6461 [verbose] > | Some _ => acc
00:05:34 #6462 [verbose] > | None => x |> fn
00:05:34 #6463 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3b5608351d345e2a257de949f82f9d7cb1f42a9f4c8465f1bb3e4d1328536dc2\main.spi
00:05:34 #6464 [verbose] >
00:05:34 #6465 [verbose] > ╭─[ 279.15ms - stdout ]────────────────────────────────────────────────────────╮
00:05:34 #6466 [verbose] > │ () │
00:05:34 #6467 [verbose] > │ │
00:05:34 #6468 [verbose] > │ │
00:05:34 #6469 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:34 #6470 [verbose] >
00:05:34 #6471 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:34 #6472 [verbose] > // // test
00:05:34 #6473 [verbose] >
00:05:34 #6474 [verbose] > am.init 10i32 id
00:05:34 #6475 [verbose] > |> try_pick (fun x => if x = 5i32 then Some x else None)
00:05:34 #6476 [verbose] > |> _assert_eq (Some 5i32)
00:05:34 #6477 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\54d3f56ff16ada411e532ba41ac0d7a152123d8519540d65e3999fb8db32c93b\main.spi
00:05:34 #6478 [verbose] >
00:05:34 #6479 [verbose] > ╭─[ 503.15ms - stdout ]────────────────────────────────────────────────────────╮
00:05:34 #6480 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:05:34 #6481 [verbose] > │ and [<Struct>] US0 = │
00:05:34 #6482 [verbose] > │ | US0_0 of f0_0 : int32 │
00:05:34 #6483 [verbose] > │ | US0_1 │
00:05:34 #6484 [verbose] > │ and Mut1 = {mutable l0 : int32; mutable l1 : US0} │
00:05:34 #6485 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:05:34 #6486 [verbose] > │ let v1 : int32 = v0.l0 │
00:05:34 #6487 [verbose] > │ let v2 : bool = v1 < 10 │
00:05:34 #6488 [verbose] > │ v2 │
00:05:34 #6489 [verbose] > │ and method2 (v0 : int32, v1 : Mut1) : bool = │
00:05:34 #6490 [verbose] > │ let v2 : int32 = v1.l0 │
00:05:34 #6491 [verbose] > │ let v3 : bool = v2 < v0 │
00:05:34 #6492 [verbose] > │ v3 │
00:05:34 #6493 [verbose] > │ and method3 (v0 : bool) : bool = │
00:05:34 #6494 [verbose] > │ v0 │
00:05:34 #6495 [verbose] > │ and method0 () : unit = │
00:05:34 #6496 [verbose] > │ let v0 : (int32 []) = Array.zeroCreate<int32> (10) │
00:05:34 #6497 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:05:34 #6498 [verbose] > │ while method1(v1) do │
00:05:34 #6499 [verbose] > │ let v3 : int32 = v1.l0 │
00:05:34 #6500 [verbose] > │ v0.[int v3] <- v3 │
00:05:34 #6501 [verbose] > │ let v4 : int32 = v3 + 1 │
00:05:34 #6502 [verbose] > │ v1.l0 <- v4 │
00:05:34 #6503 [verbose] > │ () │
00:05:34 #6504 [verbose] > │ let v5 : int32 = v0.Length │
00:05:34 #6505 [verbose] > │ let v6 : US0 = US0_1 │
00:05:34 #6506 [verbose] > │ let v7 : Mut1 = {l0 = 0; l1 = v6} : Mut1 │
00:05:34 #6507 [verbose] > │ while method2(v5, v7) do │
00:05:34 #6508 [verbose] > │ let v9 : int32 = v7.l0 │
00:05:34 #6509 [verbose] > │ let v10 : int32 = -v9 │
00:05:34 #6510 [verbose] > │ let v11 : int32 = v10 + v5 │
00:05:34 #6511 [verbose] > │ let v12 : int32 = v11 - 1 │
00:05:34 #6512 [verbose] > │ let v13 : US0 = v7.l1 │
00:05:34 #6513 [verbose] > │ let v14 : int32 = v0.[int v12] │
00:05:34 #6514 [verbose] > │ let v21 : US0 = │
00:05:34 #6515 [verbose] > │ match v13 with │
00:05:34 #6516 [verbose] > │ | US0_1 -> (* None *) │
00:05:34 #6517 [verbose] > │ let v16 : bool = v14 = 5 │
00:05:34 #6518 [verbose] > │ if v16 then │
00:05:34 #6519 [verbose] > │ US0_0(v14) │
00:05:34 #6520 [verbose] > │ else │
00:05:34 #6521 [verbose] > │ US0_1 │
00:05:34 #6522 [verbose] > │ | US0_0(v15) -> (* Some *) │
00:05:34 #6523 [verbose] > │ v13 │
00:05:34 #6524 [verbose] > │ let v22 : int32 = v9 + 1 │
00:05:34 #6525 [verbose] > │ v7.l0 <- v22 │
00:05:34 #6526 [verbose] > │ v7.l1 <- v21 │
00:05:34 #6527 [verbose] > │ () │
00:05:34 #6528 [verbose] > │ let v23 : US0 = v7.l1 │
00:05:34 #6529 [verbose] > │ let v24 : string = $"%A{v23}" │
00:05:34 #6530 [verbose] > │ System.Console.WriteLine v24 │
00:05:34 #6531 [verbose] > │ let v28 : bool = │
00:05:34 #6532 [verbose] > │ match v23 with │
00:05:34 #6533 [verbose] > │ | US0_0(v26) -> (* Some *) │
00:05:34 #6534 [verbose] > │ let v27 : bool = v26 = 5 │
00:05:34 #6535 [verbose] > │ v27 │
00:05:34 #6536 [verbose] > │ | _ -> │
00:05:34 #6537 [verbose] > │ false │
00:05:34 #6538 [verbose] > │ let v30 : bool = │
00:05:34 #6539 [verbose] > │ if v28 then │
00:05:34 #6540 [verbose] > │ true │
00:05:34 #6541 [verbose] > │ else │
00:05:34 #6542 [verbose] > │ method3(v28) │
00:05:34 #6543 [verbose] > │ let v31 : US0 = US0_0(5) │
00:05:34 #6544 [verbose] > │ let v32 : string = $"__expect / actual: %A{v23} / expected: %A{v31}" │
00:05:34 #6545 [verbose] > │ let v33 : bool = v30 = false │
00:05:34 #6546 [verbose] > │ if v33 then │
00:05:34 #6547 [verbose] > │ failwith<unit> v32 │
00:05:34 #6548 [verbose] > │ method0() │
00:05:34 #6549 [verbose] > │ │
00:05:34 #6550 [verbose] > │ US0_0 5 │
00:05:34 #6551 [verbose] > │ │
00:05:34 #6552 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:34 #6553 [verbose] >
00:05:34 #6554 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:34 #6555 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:34 #6556 [verbose] > │ ## indexed' │
00:05:34 #6557 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:34 #6558 [verbose] >
00:05:34 #6559 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:34 #6560 [verbose] > inl indexed' forall t dim {int; number} dim' {int; number} u {number}. (ar : a
00:05:34 #6561 [verbose] > dim t) : a dim' (u * t) =
00:05:34 #6562 [verbose] > ((0, a ;[[]]), ar)
00:05:34 #6563 [verbose] > ||> am.fold fun (i, acc) x =>
00:05:34 #6564 [verbose] > i + 1, acc /@ a ;[[i, x]]
00:05:34 #6565 [verbose] > |> snd
00:05:35 #6566 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\63aa2a6eed38de9050734fca837d5719aa31ef4f71f2c74263c39c6362b79699\main.spi
00:05:35 #6567 [verbose] >
00:05:35 #6568 [verbose] > ╭─[ 457.95ms - stdout ]────────────────────────────────────────────────────────╮
00:05:35 #6569 [verbose] > │ () │
00:05:35 #6570 [verbose] > │ │
00:05:35 #6571 [verbose] > │ │
00:05:35 #6572 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:35 #6573 [verbose] >
00:05:35 #6574 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:35 #6575 [verbose] > // // test
00:05:35 #6576 [verbose] >
00:05:35 #6577 [verbose] > am.init 3i32 ((*) 2)
00:05:35 #6578 [verbose] > |> indexed'
00:05:35 #6579 [verbose] > |> _assert_eq (a ;[[0i32, 0; 1, 2; 2, 4]] : a i32 _)
00:05:35 #6580 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c85db5920fea777bd738ebec7af04a20f4d25ec044affbb559d8d92da053fc1b\main.spi
00:05:36 #6581 [verbose] >
00:05:36 #6582 [verbose] > ╭─[ 888.56ms - stdout ]────────────────────────────────────────────────────────╮
00:05:36 #6583 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:05:36 #6584 [verbose] > │ and Mut1 = {mutable l0 : int32; mutable l1 : int32; mutable l2 : (struct │
00:05:36 #6585 [verbose] > │ (int32 * int32) [])} │
00:05:36 #6586 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:05:36 #6587 [verbose] > │ let v1 : int32 = v0.l0 │
00:05:36 #6588 [verbose] > │ let v2 : bool = v1 < 3 │
00:05:36 #6589 [verbose] > │ v2 │
00:05:36 #6590 [verbose] > │ and method2 (v0 : int32, v1 : Mut1) : bool = │
00:05:36 #6591 [verbose] > │ let v2 : int32 = v1.l0 │
00:05:36 #6592 [verbose] > │ let v3 : bool = v2 < v0 │
00:05:36 #6593 [verbose] > │ v3 │
00:05:36 #6594 [verbose] > │ and method3 (v0 : int32, v1 : Mut0) : bool = │
00:05:36 #6595 [verbose] > │ let v2 : int32 = v1.l0 │
00:05:36 #6596 [verbose] > │ let v3 : bool = v2 < v0 │
00:05:36 #6597 [verbose] > │ v3 │
00:05:36 #6598 [verbose] > │ and method4 (v0 : (struct (int32 * int32) []), v1 : (struct (int32 * int32) │
00:05:36 #6599 [verbose] > │ []), v2 : int32) : bool = │
00:05:36 #6600 [verbose] > │ let v3 : int32 = v0.Length │
00:05:36 #6601 [verbose] > │ let v4 : bool = v2 < v3 │
00:05:36 #6602 [verbose] > │ if v4 then │
00:05:36 #6603 [verbose] > │ let struct (v5 : int32, v6 : int32) = v0.[int v2] │
00:05:36 #6604 [verbose] > │ let struct (v7 : int32, v8 : int32) = v1.[int v2] │
00:05:36 #6605 [verbose] > │ let v9 : bool = v5 = v7 │
00:05:36 #6606 [verbose] > │ let v11 : bool = │
00:05:36 #6607 [verbose] > │ if v9 then │
00:05:36 #6608 [verbose] > │ let v10 : bool = v6 = v8 │
00:05:36 #6609 [verbose] > │ v10 │
00:05:36 #6610 [verbose] > │ else │
00:05:36 #6611 [verbose] > │ false │
00:05:36 #6612 [verbose] > │ if v11 then │
00:05:36 #6613 [verbose] > │ let v12 : int32 = v2 + 1 │
00:05:36 #6614 [verbose] > │ method4(v0, v1, v12) │
00:05:36 #6615 [verbose] > │ else │
00:05:36 #6616 [verbose] > │ false │
00:05:36 #6617 [verbose] > │ else │
00:05:36 #6618 [verbose] > │ true │
00:05:36 #6619 [verbose] > │ and method5 (v0 : bool) : bool = │
00:05:36 #6620 [verbose] > │ v0 │
00:05:36 #6621 [verbose] > │ and method0 () : unit = │
00:05:36 #6622 [verbose] > │ let v0 : (int32 []) = Array.zeroCreate<int32> (3) │
00:05:36 #6623 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:05:36 #6624 [verbose] > │ while method1(v1) do │
00:05:36 #6625 [verbose] > │ let v3 : int32 = v1.l0 │
00:05:36 #6626 [verbose] > │ let v4 : int32 = 2 * v3 │
00:05:36 #6627 [verbose] > │ v0.[int v3] <- v4 │
00:05:36 #6628 [verbose] > │ let v5 : int32 = v3 + 1 │
00:05:36 #6629 [verbose] > │ v1.l0 <- v5 │
00:05:36 #6630 [verbose] > │ () │
00:05:36 #6631 [verbose] > │ let v6 : (struct (int32 * int32) []) = [||] │
00:05:36 #6632 [verbose] > │ let v7 : int32 = v0.Length │
00:05:36 #6633 [verbose] > │ let v8 : Mut1 = {l0 = 0; l1 = 0; l2 = v6} : Mut1 │
00:05:36 #6634 [verbose] > │ while method2(v7, v8) do │
00:05:36 #6635 [verbose] > │ let v10 : int32 = v8.l0 │
00:05:36 #6636 [verbose] > │ let struct (v11 : int32, v12 : (struct (int32 * int32) [])) = v8.l1, │
00:05:36 #6637 [verbose] > │ v8.l2 │
00:05:36 #6638 [verbose] > │ let v13 : int32 = v0.[int v10] │
00:05:36 #6639 [verbose] > │ let v14 : int32 = v11 + 1 │
00:05:36 #6640 [verbose] > │ let v15 : (struct (int32 * int32) []) = [|struct (v11, v13)|] │
00:05:36 #6641 [verbose] > │ let v16 : int32 = v12.Length │
00:05:36 #6642 [verbose] > │ let v17 : int32 = v15.Length │
00:05:36 #6643 [verbose] > │ let v18 : int32 = v16 + v17 │
00:05:36 #6644 [verbose] > │ let v19 : (struct (int32 * int32) []) = Array.zeroCreate<struct │
00:05:36 #6645 [verbose] > │ (int32 * int32)> (v18) │
00:05:36 #6646 [verbose] > │ let v20 : Mut0 = {l0 = 0} : Mut0 │
00:05:36 #6647 [verbose] > │ while method3(v18, v20) do │
00:05:36 #6648 [verbose] > │ let v22 : int32 = v20.l0 │
00:05:36 #6649 [verbose] > │ let v23 : bool = v22 < v16 │
00:05:36 #6650 [verbose] > │ let struct (v29 : int32, v30 : int32) = │
00:05:36 #6651 [verbose] > │ if v23 then │
00:05:36 #6652 [verbose] > │ let struct (v24 : int32, v25 : int32) = v12.[int v22] │
00:05:36 #6653 [verbose] > │ struct (v24, v25) │
00:05:36 #6654 [verbose] > │ else │
00:05:36 #6655 [verbose] > │ let v26 : int32 = v22 - v16 │
00:05:36 #6656 [verbose] > │ let struct (v27 : int32, v28 : int32) = v15.[int v26] │
00:05:36 #6657 [verbose] > │ struct (v27, v28) │
00:05:36 #6658 [verbose] > │ v19.[int v22] <- struct (v29, v30) │
00:05:36 #6659 [verbose] > │ let v31 : int32 = v22 + 1 │
00:05:36 #6660 [verbose] > │ v20.l0 <- v31 │
00:05:36 #6661 [verbose] > │ () │
00:05:36 #6662 [verbose] > │ let v32 : int32 = v10 + 1 │
00:05:36 #6663 [verbose] > │ v8.l0 <- v32 │
00:05:36 #6664 [verbose] > │ v8.l1 <- v14 │
00:05:36 #6665 [verbose] > │ v8.l2 <- v19 │
00:05:36 #6666 [verbose] > │ () │
00:05:36 #6667 [verbose] > │ let struct (v33 : int32, v34 : (struct (int32 * int32) [])) = v8.l1, │
00:05:36 #6668 [verbose] > │ v8.l2 │
00:05:36 #6669 [verbose] > │ let v35 : (struct (int32 * int32) []) = [|struct (0, 0); struct (1, 2); │
00:05:36 #6670 [verbose] > │ struct (2, 4)|] │
00:05:36 #6671 [verbose] > │ let v36 : string = $"%A{v34}" │
00:05:36 #6672 [verbose] > │ System.Console.WriteLine v36 │
00:05:36 #6673 [verbose] > │ let v37 : int32 = v34.Length │
00:05:36 #6674 [verbose] > │ let v38 : int32 = v35.Length │
00:05:36 #6675 [verbose] > │ let v39 : bool = v37 = v38 │
00:05:36 #6676 [verbose] > │ let v40 : bool = v39 <> true │
00:05:36 #6677 [verbose] > │ let v43 : bool = │
00:05:36 #6678 [verbose] > │ if v40 then │
00:05:36 #6679 [verbose] > │ false │
00:05:36 #6680 [verbose] > │ else │
00:05:36 #6681 [verbose] > │ let v41 : int32 = 0 │
00:05:36 #6682 [verbose] > │ method4(v34, v35, v41) │
00:05:36 #6683 [verbose] > │ let v45 : bool = │
00:05:36 #6684 [verbose] > │ if v43 then │
00:05:36 #6685 [verbose] > │ true │
00:05:36 #6686 [verbose] > │ else │
00:05:36 #6687 [verbose] > │ method5(v43) │
00:05:36 #6688 [verbose] > │ let v46 : string = $"__expect / actual: %A{v34} / expected: %A{v35}" │
00:05:36 #6689 [verbose] > │ let v47 : bool = v45 = false │
00:05:36 #6690 [verbose] > │ if v47 then │
00:05:36 #6691 [verbose] > │ failwith<unit> v46 │
00:05:36 #6692 [verbose] > │ method0() │
00:05:36 #6693 [verbose] > │ │
00:05:36 #6694 [verbose] > │ [|struct (0, 0); struct (1, 2); struct (2, 4)|] │
00:05:36 #6695 [verbose] > │ │
00:05:36 #6696 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:36 #6697 [verbose] >
00:05:36 #6698 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:36 #6699 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:36 #6700 [verbose] > │ ## map_base │
00:05:36 #6701 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:36 #6702 [verbose] >
00:05:36 #6703 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:36 #6704 [verbose] > inl map_base forall t u. (fn : t -> u) (x : array_base t) : array_base u =
00:05:36 #6705 [verbose] > a x
00:05:36 #6706 [verbose] > |> am.map fn
00:05:36 #6707 [verbose] > |> fun (a x : _ i64 _) => x
00:05:36 #6708 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a58fe736a5e2a7c90a7fba333e960891e0342a49117a331a97abbb783845365d\main.spi
00:05:36 #6709 [verbose] >
00:05:36 #6710 [verbose] > ╭─[ 444.32ms - stdout ]────────────────────────────────────────────────────────╮
00:05:36 #6711 [verbose] > │ () │
00:05:36 #6712 [verbose] > │ │
00:05:36 #6713 [verbose] > │ │
00:05:36 #6714 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:36 #6715 [verbose] >
00:05:36 #6716 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:36 #6717 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:36 #6718 [verbose] > │ ## average │
00:05:36 #6719 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:37 #6720 [verbose] >
00:05:37 #6721 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:37 #6722 [verbose] > inl average forall el {number}. (a : a _ el) : el =
00:05:37 #6723 [verbose] > a |> $'Array.average'
00:05:37 #6724 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e0b3acf2a87410fcd1d271766651e399c13a35d87f958b553764e2ca4dfca848\main.spi
00:05:37 #6725 [verbose] >
00:05:37 #6726 [verbose] > ╭─[ 394.57ms - stdout ]────────────────────────────────────────────────────────╮
00:05:37 #6727 [verbose] > │ () │
00:05:37 #6728 [verbose] > │ │
00:05:37 #6729 [verbose] > │ │
00:05:37 #6730 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:37 #6731 [verbose] >
00:05:37 #6732 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:37 #6733 [verbose] > inl distinct forall dim el. (a : a dim el) : a dim el =
00:05:37 #6734 [verbose] > a |> $'Array.distinct'
00:05:37 #6735 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\23719e93ee87d1d8a8d2207049467be97e385d3023b6cbcc37634c0cd60808eb\main.spi
00:05:37 #6736 [verbose] >
00:05:37 #6737 [verbose] > ╭─[ 416.15ms - stdout ]────────────────────────────────────────────────────────╮
00:05:37 #6738 [verbose] > │ () │
00:05:37 #6739 [verbose] > │ │
00:05:37 #6740 [verbose] > │ │
00:05:37 #6741 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:37 #6742 [verbose] >
00:05:37 #6743 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:37 #6744 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:37 #6745 [verbose] > │ ## parallel_map │
00:05:37 #6746 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:37 #6747 [verbose] >
00:05:37 #6748 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:37 #6749 [verbose] > inl parallel_map forall dim el el'. (fn : el -> el') (a : a dim el) : a dim el'
00:05:37 #6750 [verbose] > =
00:05:37 #6751 [verbose] > a |> $'Array.Parallel.map' fn
00:05:37 #6752 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\aeaaf52aab939cf23513b3ce0e4db19009a5a7481cfc6b885917ccff8853914a\main.spi
00:05:38 #6753 [verbose] >
00:05:38 #6754 [verbose] > ╭─[ 353.13ms - stdout ]────────────────────────────────────────────────────────╮
00:05:38 #6755 [verbose] > │ () │
00:05:38 #6756 [verbose] > │ │
00:05:38 #6757 [verbose] > │ │
00:05:38 #6758 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:38 #6759 [verbose] >
00:05:38 #6760 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:38 #6761 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:38 #6762 [verbose] > │ ## sort_by │
00:05:38 #6763 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:38 #6764 [verbose] >
00:05:38 #6765 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:38 #6766 [verbose] > inl sort_by forall dim el. (fn : el -> _) (a : a dim el) : a dim el =
00:05:38 #6767 [verbose] > a |> $'Array.sortBy' fn
00:05:38 #6768 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\15dcda3fe4d70c30adad96772635b401e1d982e1149df734ec7df5e2425b1e25\main.spi
00:05:38 #6769 [verbose] >
00:05:38 #6770 [verbose] > ╭─[ 455.62ms - stdout ]────────────────────────────────────────────────────────╮
00:05:38 #6771 [verbose] > │ () │
00:05:38 #6772 [verbose] > │ │
00:05:38 #6773 [verbose] > │ │
00:05:38 #6774 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:38 #6775 [verbose] >
00:05:38 #6776 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:38 #6777 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:38 #6778 [verbose] > │ ## sort_descending │
00:05:38 #6779 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:38 #6780 [verbose] >
00:05:38 #6781 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:38 #6782 [verbose] > inl sort_descending forall dim el. (a : a dim el) : a dim el =
00:05:38 #6783 [verbose] > a |> $'Array.sortDescending'
00:05:38 #6784 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3ba18b494387591436ea84b7f74c27fff4295f9b524d9fe9f8be0c0fa07e74fe\main.spi
00:05:39 #6785 [verbose] >
00:05:39 #6786 [verbose] > ╭─[ 438.65ms - stdout ]────────────────────────────────────────────────────────╮
00:05:39 #6787 [verbose] > │ () │
00:05:39 #6788 [verbose] > │ │
00:05:39 #6789 [verbose] > │ │
00:05:39 #6790 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:39 #6791 [verbose] >
00:05:39 #6792 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:39 #6793 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:39 #6794 [verbose] > │ ## transpose │
00:05:39 #6795 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:39 #6796 [verbose] >
00:05:39 #6797 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:39 #6798 [verbose] > inl transpose forall dim el. (a : a dim (a dim el)) : a dim (a dim el) =
00:05:39 #6799 [verbose] > a |> $'Array.transpose'
00:05:39 #6800 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\dba16f3298415ca0b5a19b7104b50ee40ddcde086f33d315ec5ac562044dbea6\main.spi
00:05:39 #6801 [verbose] >
00:05:39 #6802 [verbose] > ╭─[ 321.96ms - stdout ]────────────────────────────────────────────────────────╮
00:05:39 #6803 [verbose] > │ () │
00:05:39 #6804 [verbose] > │ │
00:05:39 #6805 [verbose] > │ │
00:05:39 #6806 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:39 #6807 [verbose] >
00:05:39 #6808 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:39 #6809 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:39 #6810 [verbose] > │ ## try_item │
00:05:39 #6811 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:39 #6812 [verbose] >
00:05:39 #6813 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:39 #6814 [verbose] > inl try_item forall dim el. (i : i32) (a : a dim el) : option el =
00:05:39 #6815 [verbose] > a |> $'Array.tryItem' i |> optionm'.unbox
00:05:39 #6816 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a4d4e9600415133779b9f8a52525e310611724c9f1aff5745d02ebdcb0ca708f\main.spi
00:05:39 #6817 [verbose] >
00:05:39 #6818 [verbose] > ╭─[ 335.62ms - stdout ]────────────────────────────────────────────────────────╮
00:05:39 #6819 [verbose] > │ () │
00:05:39 #6820 [verbose] > │ │
00:05:39 #6821 [verbose] > │ │
00:05:39 #6822 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:39 #6823 [verbose] >
00:05:39 #6824 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:39 #6825 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:39 #6826 [verbose] > │ ## indexed │
00:05:39 #6827 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:39 #6828 [verbose] >
00:05:39 #6829 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:39 #6830 [verbose] > inl indexed (array : a _ _) =
00:05:39 #6831 [verbose] > (([[]], 0), array)
00:05:39 #6832 [verbose] > ||> am.fold fun (acc, i) x =>
00:05:39 #6833 [verbose] > (i, x) :: acc, i + 1
00:05:39 #6834 [verbose] > |> fst
00:05:39 #6835 [verbose] > |> listm.rev
00:05:39 #6836 [verbose] > |> listm.toArray
00:05:39 #6837 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\fea65d8a4be04f8a1affdaa328abfa300fb78a0363f6ea7b56cf9e71f9a6f0a1\main.spi
00:05:40 #6838 [verbose] >
00:05:40 #6839 [verbose] > ╭─[ 283.84ms - stdout ]────────────────────────────────────────────────────────╮
00:05:40 #6840 [verbose] > │ () │
00:05:40 #6841 [verbose] > │ │
00:05:40 #6842 [verbose] > │ │
00:05:40 #6843 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:40 #6844 [verbose] >
00:05:40 #6845 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:40 #6846 [verbose] > // // test
00:05:40 #6847 [verbose] >
00:05:40 #6848 [verbose] > am.init 3i32 ((*) 2)
00:05:40 #6849 [verbose] > |> indexed
00:05:40 #6850 [verbose] > |> _assert_eq (a ;[[0i32, 0; 1, 2; 2, 4]] : a i32 _)
00:05:40 #6851 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\805e27981bf57e65e418f570f640ce1b615a4d74340b18ccd147f60c9fa396f3\main.spi
00:05:40 #6852 [verbose] >
00:05:40 #6853 [verbose] > ╭─[ 521.95ms - stdout ]────────────────────────────────────────────────────────╮
00:05:40 #6854 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:05:40 #6855 [verbose] > │ and UH0 = │
00:05:40 #6856 [verbose] > │ | UH0_0 │
00:05:40 #6857 [verbose] > │ | UH0_1 of int32 * int32 * UH0 │
00:05:40 #6858 [verbose] > │ and Mut1 = {mutable l0 : int32; mutable l1 : UH0; mutable l2 : int32} │
00:05:40 #6859 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:05:40 #6860 [verbose] > │ let v1 : int32 = v0.l0 │
00:05:40 #6861 [verbose] > │ let v2 : bool = v1 < 3 │
00:05:40 #6862 [verbose] > │ v2 │
00:05:40 #6863 [verbose] > │ and method2 (v0 : int32, v1 : Mut1) : bool = │
00:05:40 #6864 [verbose] > │ let v2 : int32 = v1.l0 │
00:05:40 #6865 [verbose] > │ let v3 : bool = v2 < v0 │
00:05:40 #6866 [verbose] > │ v3 │
00:05:40 #6867 [verbose] > │ and method3 (v0 : UH0, v1 : UH0) : UH0 = │
00:05:40 #6868 [verbose] > │ match v0 with │
00:05:40 #6869 [verbose] > │ | UH0_1(v2, v3, v4) -> (* Cons *) │
00:05:40 #6870 [verbose] > │ let v5 : UH0 = UH0_1(v2, v3, v1) │
00:05:40 #6871 [verbose] > │ method3(v4, v5) │
00:05:40 #6872 [verbose] > │ | UH0_0 -> (* Nil *) │
00:05:40 #6873 [verbose] > │ v1 │
00:05:40 #6874 [verbose] > │ and method5 (v0 : UH0, v1 : int32) : int32 = │
00:05:40 #6875 [verbose] > │ match v0 with │
00:05:40 #6876 [verbose] > │ | UH0_1(v2, v3, v4) -> (* Cons *) │
00:05:40 #6877 [verbose] > │ let v5 : int32 = v1 + 1 │
00:05:40 #6878 [verbose] > │ method5(v4, v5) │
00:05:40 #6879 [verbose] > │ | UH0_0 -> (* Nil *) │
00:05:40 #6880 [verbose] > │ v1 │
00:05:40 #6881 [verbose] > │ and method6 (v0 : (struct (int32 * int32) []), v1 : UH0, v2 : int32) : int32 │
00:05:40 #6882 [verbose] > │ = │
00:05:40 #6883 [verbose] > │ match v1 with │
00:05:40 #6884 [verbose] > │ | UH0_1(v3, v4, v5) -> (* Cons *) │
00:05:40 #6885 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:05:40 #6886 [verbose] > │ let v6 : int32 = v2 + 1 │
00:05:40 #6887 [verbose] > │ method6(v0, v5, v6) │
00:05:40 #6888 [verbose] > │ | UH0_0 -> (* Nil *) │
00:05:40 #6889 [verbose] > │ v2 │
00:05:40 #6890 [verbose] > │ and method4 (v0 : UH0) : (struct (int32 * int32) []) = │
00:05:40 #6891 [verbose] > │ let v1 : int32 = 0 │
00:05:40 #6892 [verbose] > │ let v2 : int32 = method5(v0, v1) │
00:05:40 #6893 [verbose] > │ let v3 : (struct (int32 * int32) []) = Array.zeroCreate<struct (int32 * │
00:05:40 #6894 [verbose] > │ int32)> (v2) │
00:05:40 #6895 [verbose] > │ let v4 : int32 = 0 │
00:05:40 #6896 [verbose] > │ let v5 : int32 = method6(v3, v0, v4) │
00:05:40 #6897 [verbose] > │ v3 │
00:05:40 #6898 [verbose] > │ and method7 (v0 : (struct (int32 * int32) []), v1 : (struct (int32 * int32) │
00:05:40 #6899 [verbose] > │ []), v2 : int32) : bool = │
00:05:40 #6900 [verbose] > │ let v3 : int32 = v0.Length │
00:05:40 #6901 [verbose] > │ let v4 : bool = v2 < v3 │
00:05:40 #6902 [verbose] > │ if v4 then │
00:05:40 #6903 [verbose] > │ let struct (v5 : int32, v6 : int32) = v0.[int v2] │
00:05:40 #6904 [verbose] > │ let struct (v7 : int32, v8 : int32) = v1.[int v2] │
00:05:40 #6905 [verbose] > │ let v9 : bool = v5 = v7 │
00:05:40 #6906 [verbose] > │ let v11 : bool = │
00:05:40 #6907 [verbose] > │ if v9 then │
00:05:40 #6908 [verbose] > │ let v10 : bool = v6 = v8 │
00:05:40 #6909 [verbose] > │ v10 │
00:05:40 #6910 [verbose] > │ else │
00:05:40 #6911 [verbose] > │ false │
00:05:40 #6912 [verbose] > │ if v11 then │
00:05:40 #6913 [verbose] > │ let v12 : int32 = v2 + 1 │
00:05:40 #6914 [verbose] > │ method7(v0, v1, v12) │
00:05:40 #6915 [verbose] > │ else │
00:05:40 #6916 [verbose] > │ false │
00:05:40 #6917 [verbose] > │ else │
00:05:40 #6918 [verbose] > │ true │
00:05:40 #6919 [verbose] > │ and method8 (v0 : bool) : bool = │
00:05:40 #6920 [verbose] > │ v0 │
00:05:40 #6921 [verbose] > │ and method0 () : unit = │
00:05:40 #6922 [verbose] > │ let v0 : (int32 []) = Array.zeroCreate<int32> (3) │
00:05:40 #6923 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:05:40 #6924 [verbose] > │ while method1(v1) do │
00:05:40 #6925 [verbose] > │ let v3 : int32 = v1.l0 │
00:05:40 #6926 [verbose] > │ let v4 : int32 = 2 * v3 │
00:05:40 #6927 [verbose] > │ v0.[int v3] <- v4 │
00:05:40 #6928 [verbose] > │ let v5 : int32 = v3 + 1 │
00:05:40 #6929 [verbose] > │ v1.l0 <- v5 │
00:05:40 #6930 [verbose] > │ () │
00:05:40 #6931 [verbose] > │ let v6 : int32 = v0.Length │
00:05:40 #6932 [verbose] > │ let v7 : UH0 = UH0_0 │
00:05:40 #6933 [verbose] > │ let v8 : Mut1 = {l0 = 0; l1 = v7; l2 = 0} : Mut1 │
00:05:40 #6934 [verbose] > │ while method2(v6, v8) do │
00:05:40 #6935 [verbose] > │ let v10 : int32 = v8.l0 │
00:05:40 #6936 [verbose] > │ let struct (v11 : UH0, v12 : int32) = v8.l1, v8.l2 │
00:05:40 #6937 [verbose] > │ let v13 : int32 = v0.[int v10] │
00:05:40 #6938 [verbose] > │ let v14 : int32 = v12 + 1 │
00:05:40 #6939 [verbose] > │ let v15 : int32 = v10 + 1 │
00:05:40 #6940 [verbose] > │ let v16 : UH0 = UH0_1(v12, v13, v11) │
00:05:40 #6941 [verbose] > │ v8.l0 <- v15 │
00:05:40 #6942 [verbose] > │ v8.l1 <- v16 │
00:05:40 #6943 [verbose] > │ v8.l2 <- v14 │
00:05:40 #6944 [verbose] > │ () │
00:05:40 #6945 [verbose] > │ let struct (v17 : UH0, v18 : int32) = v8.l1, v8.l2 │
00:05:40 #6946 [verbose] > │ let v19 : UH0 = UH0_0 │
00:05:40 #6947 [verbose] > │ let v20 : UH0 = method3(v17, v19) │
00:05:40 #6948 [verbose] > │ let v21 : (struct (int32 * int32) []) = method4(v20) │
00:05:40 #6949 [verbose] > │ let v22 : (struct (int32 * int32) []) = [|struct (0, 0); struct (1, 2); │
00:05:40 #6950 [verbose] > │ struct (2, 4)|] │
00:05:40 #6951 [verbose] > │ let v23 : string = $"%A{v21}" │
00:05:40 #6952 [verbose] > │ System.Console.WriteLine v23 │
00:05:40 #6953 [verbose] > │ let v24 : int32 = v21.Length │
00:05:40 #6954 [verbose] > │ let v25 : int32 = v22.Length │
00:05:40 #6955 [verbose] > │ let v26 : bool = v24 = v25 │
00:05:40 #6956 [verbose] > │ let v27 : bool = v26 <> true │
00:05:40 #6957 [verbose] > │ let v30 : bool = │
00:05:40 #6958 [verbose] > │ if v27 then │
00:05:40 #6959 [verbose] > │ false │
00:05:40 #6960 [verbose] > │ else │
00:05:40 #6961 [verbose] > │ let v28 : int32 = 0 │
00:05:40 #6962 [verbose] > │ method7(v21, v22, v28) │
00:05:40 #6963 [verbose] > │ let v32 : bool = │
00:05:40 #6964 [verbose] > │ if v30 then │
00:05:40 #6965 [verbose] > │ true │
00:05:40 #6966 [verbose] > │ else │
00:05:40 #6967 [verbose] > │ method8(v30) │
00:05:40 #6968 [verbose] > │ let v33 : string = $"__expect / actual: %A{v21} / expected: %A{v22}" │
00:05:40 #6969 [verbose] > │ let v34 : bool = v32 = false │
00:05:40 #6970 [verbose] > │ if v34 then │
00:05:40 #6971 [verbose] > │ failwith<unit> v33 │
00:05:40 #6972 [verbose] > │ method0() │
00:05:40 #6973 [verbose] > │ │
00:05:40 #6974 [verbose] > │ [|struct (0, 0); struct (1, 2); struct (2, 4)|] │
00:05:40 #6975 [verbose] > │ │
00:05:40 #6976 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:40 #6977 [verbose] >
00:05:40 #6978 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:40 #6979 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:40 #6980 [verbose] > │ ## vec │
00:05:40 #6981 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:40 #6982 [verbose] >
00:05:40 #6983 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:40 #6984 [verbose] > nominal vec t = $"Vec<`t>"
00:05:40 #6985 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a0c2487c7f05279aef8279a00aef23d3e35b10abf74d6bd5783888f97c290ce2\main.spi
00:05:41 #6986 [verbose] >
00:05:41 #6987 [verbose] > ╭─[ 408.28ms - stdout ]────────────────────────────────────────────────────────╮
00:05:41 #6988 [verbose] > │ () │
00:05:41 #6989 [verbose] > │ │
00:05:41 #6990 [verbose] > │ │
00:05:41 #6991 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:41 #6992 [verbose] >
00:05:41 #6993 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:41 #6994 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:41 #6995 [verbose] > │ ## from_vec │
00:05:41 #6996 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:41 #6997 [verbose] >
00:05:41 #6998 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:41 #6999 [verbose] > inl from_vec forall dim el. (vec : vec el) : a dim el =
00:05:41 #7000 [verbose] > !\\(vec, $'"fable_library_rust::NativeArray_::array_from($0)"')
00:05:41 #7001 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e84916c36bcb98492bb25123dd27a3e87ae80a1548957debe5c731d10fb814a4\main.spi
00:05:41 #7002 [verbose] >
00:05:41 #7003 [verbose] > ╭─[ 283.22ms - stdout ]────────────────────────────────────────────────────────╮
00:05:41 #7004 [verbose] > │ () │
00:05:41 #7005 [verbose] > │ │
00:05:41 #7006 [verbose] > │ │
00:05:41 #7007 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:41 #7008 [verbose] >
00:05:41 #7009 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:41 #7010 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:41 #7011 [verbose] > │ ## to_vec │
00:05:41 #7012 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:41 #7013 [verbose] >
00:05:41 #7014 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:41 #7015 [verbose] > inl to_vec forall t. (ab : array_base t) : vec t =
00:05:41 #7016 [verbose] > !\\(ab, $'"$0.to_vec()"')
00:05:41 #7017 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\27531565de1f2f6e9ef542503f704d6153079c4d8599fbf079b491847b138a8b\main.spi
00:05:41 #7018 [verbose] >
00:05:41 #7019 [verbose] > ╭─[ 313.98ms - stdout ]────────────────────────────────────────────────────────╮
00:05:41 #7020 [verbose] > │ () │
00:05:41 #7021 [verbose] > │ │
00:05:41 #7022 [verbose] > │ │
00:05:41 #7023 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:41 #7024 [verbose] >
00:05:41 #7025 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:41 #7026 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:41 #7027 [verbose] > │ ## vec_push │
00:05:41 #7028 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:41 #7029 [verbose] >
00:05:41 #7030 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:41 #7031 [verbose] > inl vec_push forall el. (el : el) (vec : vec el) : vec el =
00:05:41 #7032 [verbose] > inl el = join el
00:05:41 #7033 [verbose] > inl vec = join vec
00:05:41 #7034 [verbose] > !\($'"let mut !vec = !vec"')
00:05:41 #7035 [verbose] > // inl vec = vec |> rust.to_mut
00:05:41 #7036 [verbose] > !\($'"!vec.push(!el)"')
00:05:41 #7037 [verbose] > !\($'"!vec"')
00:05:41 #7038 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e6120ff9468d063320085eff13abacbf3d0f497820b40c60c5e764cc143e233b\main.spi
00:05:42 #7039 [verbose] >
00:05:42 #7040 [verbose] > ╭─[ 356.76ms - stdout ]────────────────────────────────────────────────────────╮
00:05:42 #7041 [verbose] > │ () │
00:05:42 #7042 [verbose] > │ │
00:05:42 #7043 [verbose] > │ │
00:05:42 #7044 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:42 #7045 [verbose] >
00:05:42 #7046 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:42 #7047 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:42 #7048 [verbose] > │ ## vec_reverse │
00:05:42 #7049 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:42 #7050 [verbose] >
00:05:42 #7051 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:42 #7052 [verbose] > inl vec_reverse forall el. (vec : vec el) : vec el =
00:05:42 #7053 [verbose] > inl vec = join vec
00:05:42 #7054 [verbose] > !\($'"let mut !vec = !vec"')
00:05:42 #7055 [verbose] > !\($'"!vec.reverse()"')
00:05:42 #7056 [verbose] > !\($'"!vec"')
00:05:42 #7057 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\64cdd3e8fb790bffb2457da426826c04a83d2edeb8201306020ba579be4792e4\main.spi
00:05:42 #7058 [verbose] >
00:05:42 #7059 [verbose] > ╭─[ 336.85ms - stdout ]────────────────────────────────────────────────────────╮
00:05:42 #7060 [verbose] > │ () │
00:05:42 #7061 [verbose] > │ │
00:05:42 #7062 [verbose] > │ │
00:05:42 #7063 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:42 #7064 [verbose] >
00:05:42 #7065 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:42 #7066 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:42 #7067 [verbose] > │ ## vec_retain │
00:05:42 #7068 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:42 #7069 [verbose] >
00:05:42 #7070 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:42 #7071 [verbose] > inl vec_retain forall el. (fn : el -> bool) (vec : vec el) : vec el =
00:05:42 #7072 [verbose] > inl vec = join vec
00:05:42 #7073 [verbose] > inl fn = join fn
00:05:42 #7074 [verbose] > !\($'"let mut !vec = !vec"')
00:05:42 #7075 [verbose] > // inl vec = vec |> rust.to_mut
00:05:42 #7076 [verbose] > !\($'"!vec.retain(|x| !fn(x.clone()))"')
00:05:42 #7077 [verbose] > !\($'"!vec"')
00:05:42 #7078 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b2b77b0134c1485e0a028f234219294fa1b9f391a2989c56e18d814758021d38\main.spi
00:05:42 #7079 [verbose] >
00:05:42 #7080 [verbose] > ╭─[ 316.24ms - stdout ]────────────────────────────────────────────────────────╮
00:05:42 #7081 [verbose] > │ () │
00:05:42 #7082 [verbose] > │ │
00:05:42 #7083 [verbose] > │ │
00:05:42 #7084 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:42 #7085 [verbose] >
00:05:42 #7086 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:42 #7087 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:42 #7088 [verbose] > │ ## vec_sort_by_key │
00:05:42 #7089 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:42 #7090 [verbose] >
00:05:42 #7091 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:42 #7092 [verbose] > inl vec_sort_by_key forall el t. (fn : el -> t) (vec : vec el) : vec el =
00:05:42 #7093 [verbose] > inl vec = join vec
00:05:42 #7094 [verbose] > inl fn = join fn
00:05:42 #7095 [verbose] > !\($'"let mut !vec = !vec"')
00:05:42 #7096 [verbose] > // inl vec = vec |> rust.to_mut
00:05:42 #7097 [verbose] > !\($'"!vec.sort_by_key(|x| !fn(x.clone()))"')
00:05:42 #7098 [verbose] > !\($'"!vec"')
00:05:42 #7099 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2ccd227557cbf66d72c89125fdcd675228fcfe277f066ef888dd893ae1da24e7\main.spi
00:05:43 #7100 [verbose] >
00:05:43 #7101 [verbose] > ╭─[ 314.86ms - stdout ]────────────────────────────────────────────────────────╮
00:05:43 #7102 [verbose] > │ () │
00:05:43 #7103 [verbose] > │ │
00:05:43 #7104 [verbose] > │ │
00:05:43 #7105 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:43 #7106 [verbose] >
00:05:43 #7107 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:43 #7108 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:43 #7109 [verbose] > │ ## vec_extend │
00:05:43 #7110 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:43 #7111 [verbose] >
00:05:43 #7112 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:43 #7113 [verbose] > inl vec_extend forall el. (el : vec el) (vec : vec el) : vec el =
00:05:43 #7114 [verbose] > inl el = join el
00:05:43 #7115 [verbose] > inl vec = join vec
00:05:43 #7116 [verbose] > !\($'"let mut !vec = !vec"')
00:05:43 #7117 [verbose] > // inl vec = vec |> rust.to_mut
00:05:43 #7118 [verbose] > !\($'"!vec.extend(!el)"')
00:05:43 #7119 [verbose] > !\($'"!vec"')
00:05:43 #7120 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\85672f34966e652f35c5e200e581944e8ffc6370ae684ebce395ee57b70d2b26\main.spi
00:05:43 #7121 [verbose] >
00:05:43 #7122 [verbose] > ╭─[ 371.39ms - stdout ]────────────────────────────────────────────────────────╮
00:05:43 #7123 [verbose] > │ () │
00:05:43 #7124 [verbose] > │ │
00:05:43 #7125 [verbose] > │ │
00:05:43 #7126 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:43 #7127 [verbose] >
00:05:43 #7128 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:43 #7129 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:43 #7130 [verbose] > │ ## vec_collect │
00:05:43 #7131 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:43 #7132 [verbose] >
00:05:43 #7133 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:43 #7134 [verbose] > inl vec_collect fn vec =
00:05:43 #7135 [verbose] > ((;[[]] |> to_vec), (vec |> from_vec : _ i32 _))
00:05:43 #7136 [verbose] > ||> am.fold fun acc x =>
00:05:43 #7137 [verbose] > acc |> vec_extend (fn x)
00:05:43 #7138 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a3f07fd84a7fd0cd4d0bf5321ebc75e02c0780d3fa9bbe2f300362572b7e5c39\main.spi
00:05:43 #7139 [verbose] >
00:05:43 #7140 [verbose] > ╭─[ 300.62ms - stdout ]────────────────────────────────────────────────────────╮
00:05:43 #7141 [verbose] > │ () │
00:05:43 #7142 [verbose] > │ │
00:05:43 #7143 [verbose] > │ │
00:05:43 #7144 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:43 #7145 [verbose] >
00:05:43 #7146 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:43 #7147 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:43 #7148 [verbose] > │ ## vec_collect_option │
00:05:43 #7149 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:43 #7150 [verbose] >
00:05:43 #7151 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:43 #7152 [verbose] > inl vec_collect_option vec =
00:05:43 #7153 [verbose] > ((;[[]] |> to_vec |> Ok), (vec |> from_vec : _ i32 _))
00:05:43 #7154 [verbose] > ||> am.fold fun acc x =>
00:05:43 #7155 [verbose] > x
00:05:43 #7156 [verbose] > |> resultm.unbox
00:05:43 #7157 [verbose] > |> fun x =>
00:05:43 #7158 [verbose] > match acc, x |> resultm.map optionm'.unbox with
00:05:43 #7159 [verbose] > | Ok acc, Ok (Some x) => acc |> vec_extend x |> Ok
00:05:43 #7160 [verbose] > | _, Error error => error |> Error
00:05:43 #7161 [verbose] > | _ => acc
00:05:43 #7162 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8d3dc277b5bc35bd5deb67b699c7eb6f8b602bd0f34ef83f9cdb19474f2f1091\main.spi
00:05:44 #7163 [verbose] >
00:05:44 #7164 [verbose] > ╭─[ 385.01ms - stdout ]────────────────────────────────────────────────────────╮
00:05:44 #7165 [verbose] > │ () │
00:05:44 #7166 [verbose] > │ │
00:05:44 #7167 [verbose] > │ │
00:05:44 #7168 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:44 #7169 [verbose] >
00:05:44 #7170 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:44 #7171 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:44 #7172 [verbose] > │ ## vec_collect_into │
00:05:44 #7173 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:44 #7174 [verbose] >
00:05:44 #7175 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:44 #7176 [verbose] > inl vec_collect_into forall (c : * -> * -> *) t e.
00:05:44 #7177 [verbose] > (x : vec (c t e))
00:05:44 #7178 [verbose] > : c (vec t) e
00:05:44 #7179 [verbose] > =
00:05:44 #7180 [verbose] > !\($'"!x.into_iter().collect()"')
00:05:44 #7181 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5d492dae10c609dc9ff237c88f0c1461f361db291400466b81a396fdcd254ec0\main.spi
00:05:44 #7182 [verbose] >
00:05:44 #7183 [verbose] > ╭─[ 264.49ms - stdout ]────────────────────────────────────────────────────────╮
00:05:44 #7184 [verbose] > │ () │
00:05:44 #7185 [verbose] > │ │
00:05:44 #7186 [verbose] > │ │
00:05:44 #7187 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:44 #7188 [verbose] >
00:05:44 #7189 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:44 #7190 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:44 #7191 [verbose] > │ ## vec_mapi │
00:05:44 #7192 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:44 #7193 [verbose] >
00:05:44 #7194 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:44 #7195 [verbose] > inl vec_mapi forall dim t u. (fn : dim -> t -> u) (ar : vec t) : vec u =
00:05:44 #7196 [verbose] > inl fn = join fn
00:05:44 #7197 [verbose] > inl ar = join ar
00:05:44 #7198 [verbose] > !\($'"!ar.iter().enumerate().map(|(i, x)|
00:05:44 #7199 [verbose] > !fn(i.try_into().unwrap())(x.clone())).collect()"')
00:05:44 #7200 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5e2105317a6c289f3a577edecbce3873a87352c8d1cf8c28fce0ac9d5ad627d0\main.spi
00:05:44 #7201 [verbose] >
00:05:44 #7202 [verbose] > ╭─[ 294.79ms - stdout ]────────────────────────────────────────────────────────╮
00:05:44 #7203 [verbose] > │ () │
00:05:44 #7204 [verbose] > │ │
00:05:44 #7205 [verbose] > │ │
00:05:44 #7206 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:44 #7207 [verbose] >
00:05:44 #7208 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:44 #7209 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:44 #7210 [verbose] > │ ## vec_map │
00:05:44 #7211 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:44 #7212 [verbose] >
00:05:44 #7213 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:44 #7214 [verbose] > inl vec_map forall t u. (fn : t -> u) (ar : vec t) : vec u =
00:05:44 #7215 [verbose] > !\\((ar, fn), $'"$0.iter().map(|x| $1(x.clone())).collect()"')
00:05:44 #7216 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f3ca3004dd94dece15e57f2d794c3913c4364d6ba30cbdb92f7abb8d482fe331\main.spi
00:05:45 #7217 [verbose] >
00:05:45 #7218 [verbose] > ╭─[ 399.68ms - stdout ]────────────────────────────────────────────────────────╮
00:05:45 #7219 [verbose] > │ () │
00:05:45 #7220 [verbose] > │ │
00:05:45 #7221 [verbose] > │ │
00:05:45 #7222 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:45 #7223 [verbose] >
00:05:45 #7224 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:45 #7225 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:45 #7226 [verbose] > │ ## vec_filter │
00:05:45 #7227 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:45 #7228 [verbose] >
00:05:45 #7229 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:45 #7230 [verbose] > inl vec_filter forall t. (fn : t -> bool) (ar : vec t) : vec t =
00:05:45 #7231 [verbose] > inl fn = join fn
00:05:45 #7232 [verbose] > inl ar = join ar
00:05:45 #7233 [verbose] > !\($'"!ar.into_iter().filter(|x| !fn(x.clone().clone())).collect()"')
00:05:45 #7234 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8a0aa8fe9dc2c6a648988c0ba0eb8f4e875f51d7ea610a012c8841999479c05e\main.spi
00:05:45 #7235 [verbose] >
00:05:45 #7236 [verbose] > ╭─[ 277.48ms - stdout ]────────────────────────────────────────────────────────╮
00:05:45 #7237 [verbose] > │ () │
00:05:45 #7238 [verbose] > │ │
00:05:45 #7239 [verbose] > │ │
00:05:45 #7240 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:45 #7241 [verbose] >
00:05:45 #7242 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:45 #7243 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:45 #7244 [verbose] > │ ## slice │
00:05:45 #7245 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:45 #7246 [verbose] >
00:05:45 #7247 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:45 #7248 [verbose] > nominal slice t = $"Slice<`t>"
00:05:45 #7249 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f30e0ff1e62e14ad98c3d742d8eaa2e23e914c091c898bf7d875094d449e6ba8\main.spi
00:05:45 #7250 [verbose] >
00:05:45 #7251 [verbose] > ╭─[ 349.85ms - stdout ]────────────────────────────────────────────────────────╮
00:05:45 #7252 [verbose] > │ () │
00:05:45 #7253 [verbose] > │ │
00:05:45 #7254 [verbose] > │ │
00:05:45 #7255 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:45 #7256 [verbose] >
00:05:45 #7257 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:45 #7258 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:45 #7259 [verbose] > │ ## slice' │
00:05:45 #7260 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:45 #7261 [verbose] >
00:05:45 #7262 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:45 #7263 [verbose] > nominal slice' t u = $"Slice'<`t, `u>"
00:05:45 #7264 [verbose] >
00:05:45 #7265 [verbose] > inl slice' forall dim el. (x : option el) : slice' el dim =
00:05:45 #7266 [verbose] > match x with
00:05:45 #7267 [verbose] > | Some x => !\($'"[[!x]]"')
00:05:45 #7268 [verbose] > | None =>
00:05:45 #7269 [verbose] > !\($'"[[\\\"\\\".to_string()]]"') : slice' el dim
00:05:45 #7270 [verbose] > // emit_expr `(()) `(slice' el dim) () ($'"[[@dim]]"' : string) :
00:05:45 #7271 [verbose] > slice' el 10
00:05:45 #7272 [verbose] > // !\( : string) : slice' el i32 // !\($'"[[]]"')
00:05:45 #7273 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\4eb18b6738bde595a489f354e702dd9017d6d2ac1ce7a655974d8c99a4e0e7dc\main.spi
00:05:46 #7274 [verbose] >
00:05:46 #7275 [verbose] > ╭─[ 282.05ms - stdout ]────────────────────────────────────────────────────────╮
00:05:46 #7276 [verbose] > │ () │
00:05:46 #7277 [verbose] > │ │
00:05:46 #7278 [verbose] > │ │
00:05:46 #7279 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:46 #7280 [verbose] >
00:05:46 #7281 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:05:46 #7282 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:05:46 #7283 [verbose] > │ ## as_slice │
00:05:46 #7284 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:46 #7285 [verbose] >
00:05:46 #7286 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:05:46 #7287 [verbose] > inl as_slice forall t. (x : array_base t) : rust.ref' (slice t) =
00:05:46 #7288 [verbose] > inl x = x |> to_vec
00:05:46 #7289 [verbose] > !\($'"!x.as_slice()"')
00:05:46 #7290 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c733c680b664f037db12f85af383459ca87e2e1c051ecbd2521a735194ce0941\main.spi
00:05:46 #7291 [verbose] >
00:05:46 #7292 [verbose] > ╭─[ 330.46ms - stdout ]────────────────────────────────────────────────────────╮
00:05:46 #7293 [verbose] > │ () │
00:05:46 #7294 [verbose] > │ │
00:05:46 #7295 [verbose] > │ │
00:05:46 #7296 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:05:52 #7297 [verbose] > [NbConvertApp] Converting notebook am'.dib.ipynb to html
00:05:52 #7298 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:05:52 #7299 [verbose] > validate(nb)
00:05:54 #7300 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:05:54 #7301 [verbose] > return _pygments_highlight(
00:05:54 #7302 [verbose] > [NbConvertApp] Writing 395921 bytes to am'.dib.html
00:05:56 #7303 [debug] executeAsync / exitCode: 0 / output.Length: 93538
00:05:56 #7304 [debug] main / executeCommand / exitCode: 0
00:05:56 #7305 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 \"sm'.dib\" -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:06:01 #7306 [verbose] >
00:06:01 #7307 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:01 #7308 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:01 #7309 [verbose] > │ # sm' │
00:06:01 #7310 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:01 #7311 [verbose] >
00:06:01 #7312 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:01 #7313 [verbose] > // // test
00:06:01 #7314 [verbose] >
00:06:01 #7315 [verbose] > open testing
00:06:06 #7316 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:06:08 #7317 [verbose] >
00:06:08 #7318 [verbose] > ╭─[ 6.70s - stdout ]───────────────────────────────────────────────────────────╮
00:06:08 #7319 [verbose] > │ () │
00:06:08 #7320 [verbose] > │ │
00:06:08 #7321 [verbose] > │ │
00:06:08 #7322 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:08 #7323 [verbose] >
00:06:08 #7324 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:08 #7325 [verbose] > open rust_operators
00:06:08 #7326 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b9bafaa9190fd8b92f96dcaf4c2d6855aa7c524558dd349c71163ab7065188b0\main.spi
00:06:08 #7327 [verbose] >
00:06:08 #7328 [verbose] > ╭─[ 275.65ms - stdout ]────────────────────────────────────────────────────────╮
00:06:08 #7329 [verbose] > │ () │
00:06:08 #7330 [verbose] > │ │
00:06:08 #7331 [verbose] > │ │
00:06:08 #7332 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:08 #7333 [verbose] >
00:06:08 #7334 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:08 #7335 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:08 #7336 [verbose] > │ ## types │
00:06:08 #7337 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:08 #7338 [verbose] >
00:06:08 #7339 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:08 #7340 [verbose] > inl types () =
00:06:08 #7341 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"str\")>]] type Str = class
00:06:08 #7342 [verbose] > end"
00:06:08 #7343 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"base64::DecodeError\")>]]
00:06:08 #7344 [verbose] > type base64_DecodeError = class end"
00:06:08 #7345 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"borsh::io::Error\")>]] type
00:06:08 #7346 [verbose] > borsh_io_Error = class end"
00:06:08 #7347 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"js_sys::JsString\")>]] type
00:06:08 #7348 [verbose] > js_sys_JsString = class end"
00:06:08 #7349 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"serde_json::Error\")>]] type
00:06:08 #7350 [verbose] > serde_json_Error = class end"
00:06:08 #7351 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"serde_json::Value\")>]] type
00:06:08 #7352 [verbose] > serde_json_Value = class end"
00:06:08 #7353 [verbose] > global "[[<Fable.Core.Erase;
00:06:08 #7354 [verbose] > Fable.Core.Emit(\"serde_wasm_bindgen::Error\")>]] type serde_wasm_bindgen_Error
00:06:08 #7355 [verbose] > = class end"
00:06:08 #7356 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::ffi::OsStr\")>]] type
00:06:08 #7357 [verbose] > std_ffi_OsStr = class end"
00:06:08 #7358 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::ffi::OsString\")>]] type
00:06:08 #7359 [verbose] > std_ffi_OsString = class end"
00:06:08 #7360 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::str::Utf8Error\")>]]
00:06:08 #7361 [verbose] > type std_str_Utf8Error = class end"
00:06:08 #7362 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::string::String\")>]]
00:06:08 #7363 [verbose] > type std_string_String = class end"
00:06:09 #7364 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3b923c18fdf8789e140ac4bda437e92dedbc9cfe0ce81448be66c6330896bc24\main.spi
00:06:09 #7365 [verbose] >
00:06:09 #7366 [verbose] > ╭─[ 422.86ms - stdout ]────────────────────────────────────────────────────────╮
00:06:09 #7367 [verbose] > │ () │
00:06:09 #7368 [verbose] > │ │
00:06:09 #7369 [verbose] > │ │
00:06:09 #7370 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:09 #7371 [verbose] >
00:06:09 #7372 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:09 #7373 [verbose] > // // test
00:06:09 #7374 [verbose] >
00:06:09 #7375 [verbose] > inl types () =
00:06:09 #7376 [verbose] > rust.types ()
00:06:09 #7377 [verbose] > types ()
00:06:09 #7378 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\eaeb4a5036b9671649a99437c6ece1e888f3d058817c9d15682c137e0d8c924a\main.spi
00:06:09 #7379 [verbose] >
00:06:09 #7380 [verbose] > ╭─[ 303.62ms - stdout ]────────────────────────────────────────────────────────╮
00:06:09 #7381 [verbose] > │ () │
00:06:09 #7382 [verbose] > │ │
00:06:09 #7383 [verbose] > │ │
00:06:09 #7384 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:09 #7385 [verbose] >
00:06:09 #7386 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:09 #7387 [verbose] > nominal base64_decode_error = $"base64_DecodeError"
00:06:09 #7388 [verbose] > nominal borsh_io_error = $"borsh_io_Error"
00:06:09 #7389 [verbose] > nominal utf8_error = $"std_str_Utf8Error"
00:06:09 #7390 [verbose] > nominal json_value = $"serde_json_Value"
00:06:09 #7391 [verbose] > nominal json_error = $"serde_json_Error"
00:06:09 #7392 [verbose] > nominal serde_wasm_bindgen_error = $"serde_wasm_bindgen_Error"
00:06:09 #7393 [verbose] > nominal js_string = $"js_sys_JsString"
00:06:09 #7394 [verbose] > nominal str = $"Str"
00:06:09 #7395 [verbose] > nominal os_str = $"std_ffi_OsStr"
00:06:09 #7396 [verbose] > nominal os_string = $"std_ffi_OsString"
00:06:09 #7397 [verbose] > nominal std_string = $"std_string_String"
00:06:09 #7398 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9fd6a53a38f2a1656dc059a6c777420a1d6fae7fdbc8478610bb0ab2447f886f\main.spi
00:06:09 #7399 [verbose] >
00:06:09 #7400 [verbose] > ╭─[ 323.49ms - stdout ]────────────────────────────────────────────────────────╮
00:06:09 #7401 [verbose] > │ () │
00:06:09 #7402 [verbose] > │ │
00:06:09 #7403 [verbose] > │ │
00:06:09 #7404 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:09 #7405 [verbose] >
00:06:09 #7406 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:09 #7407 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:09 #7408 [verbose] > │ ## contains │
00:06:09 #7409 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:09 #7410 [verbose] >
00:06:09 #7411 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:09 #7412 [verbose] > inl contains (value : string) (s : string) : bool =
00:06:09 #7413 [verbose] > $"!s.Contains !value"
00:06:10 #7414 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0e76eb046d0d7c2475b4220a6e9b756c61849742a1ad42325bfc104b58808c74\main.spi
00:06:10 #7415 [verbose] >
00:06:10 #7416 [verbose] > ╭─[ 388.95ms - stdout ]────────────────────────────────────────────────────────╮
00:06:10 #7417 [verbose] > │ () │
00:06:10 #7418 [verbose] > │ │
00:06:10 #7419 [verbose] > │ │
00:06:10 #7420 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:10 #7421 [verbose] >
00:06:10 #7422 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:10 #7423 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:10 #7424 [verbose] > │ ## ends_with │
00:06:10 #7425 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:10 #7426 [verbose] >
00:06:10 #7427 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:10 #7428 [verbose] > inl ends_with (value : string) (s : string) : bool =
00:06:10 #7429 [verbose] > $"!s.EndsWith !value"
00:06:10 #7430 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\22494880b37832d34864f39ab014e8b8638778ff64ad1abe4c927ef1a751f0f7\main.spi
00:06:10 #7431 [verbose] >
00:06:10 #7432 [verbose] > ╭─[ 283.34ms - stdout ]────────────────────────────────────────────────────────╮
00:06:10 #7433 [verbose] > │ () │
00:06:10 #7434 [verbose] > │ │
00:06:10 #7435 [verbose] > │ │
00:06:10 #7436 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:10 #7437 [verbose] >
00:06:10 #7438 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:10 #7439 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:10 #7440 [verbose] > │ ## pad_left │
00:06:10 #7441 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:10 #7442 [verbose] >
00:06:10 #7443 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:10 #7444 [verbose] > inl pad_left (total_width : i32) (padding_char : char) (s : string) : string =
00:06:10 #7445 [verbose] > $"!s.PadLeft (!total_width, !padding_char)"
00:06:10 #7446 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\26c11e35390d086e5e2977546fd44771ad0c8d55c7814e351f5edbc38491907c\main.spi
00:06:10 #7447 [verbose] >
00:06:10 #7448 [verbose] > ╭─[ 297.06ms - stdout ]────────────────────────────────────────────────────────╮
00:06:10 #7449 [verbose] > │ () │
00:06:10 #7450 [verbose] > │ │
00:06:10 #7451 [verbose] > │ │
00:06:10 #7452 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:10 #7453 [verbose] >
00:06:10 #7454 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:10 #7455 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:10 #7456 [verbose] > │ ## pad_right │
00:06:10 #7457 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:10 #7458 [verbose] >
00:06:10 #7459 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:10 #7460 [verbose] > inl pad_right (pad : i32) (s : string) : string =
00:06:10 #7461 [verbose] > $"!s.PadRight !pad"
00:06:11 #7462 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\016fd839336a9d2045388d14ed8a3ef8a67fa670df7b115b1d4332f6d4ff2d12\main.spi
00:06:11 #7463 [verbose] >
00:06:11 #7464 [verbose] > ╭─[ 293.00ms - stdout ]────────────────────────────────────────────────────────╮
00:06:11 #7465 [verbose] > │ () │
00:06:11 #7466 [verbose] > │ │
00:06:11 #7467 [verbose] > │ │
00:06:11 #7468 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:11 #7469 [verbose] >
00:06:11 #7470 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:11 #7471 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:11 #7472 [verbose] > │ ## replace │
00:06:11 #7473 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:11 #7474 [verbose] >
00:06:11 #7475 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:11 #7476 [verbose] > inl replace (old_value : string) (new_value : string) (s : string) : string =
00:06:11 #7477 [verbose] > $"!s.Replace (!old_value, !new_value)"
00:06:11 #7478 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a9dc0676a29f811c3488b9002ab88806a4cc27724a463454edd5ae5752d24900\main.spi
00:06:11 #7479 [verbose] >
00:06:11 #7480 [verbose] > ╭─[ 356.97ms - stdout ]────────────────────────────────────────────────────────╮
00:06:11 #7481 [verbose] > │ () │
00:06:11 #7482 [verbose] > │ │
00:06:11 #7483 [verbose] > │ │
00:06:11 #7484 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:11 #7485 [verbose] >
00:06:11 #7486 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:11 #7487 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:11 #7488 [verbose] > │ ## starts_with │
00:06:11 #7489 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:11 #7490 [verbose] >
00:06:11 #7491 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:11 #7492 [verbose] > inl starts_with (value : string) (s : string) : bool =
00:06:11 #7493 [verbose] > $"!s.StartsWith !value"
00:06:11 #7494 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3f1752b9436b6ab9eb8015244d0cf3263de962ba0084b3ccbb9ad24800085d16\main.spi
00:06:11 #7495 [verbose] >
00:06:11 #7496 [verbose] > ╭─[ 317.58ms - stdout ]────────────────────────────────────────────────────────╮
00:06:11 #7497 [verbose] > │ () │
00:06:11 #7498 [verbose] > │ │
00:06:11 #7499 [verbose] > │ │
00:06:11 #7500 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:11 #7501 [verbose] >
00:06:11 #7502 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:11 #7503 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:11 #7504 [verbose] > │ ## substring │
00:06:11 #7505 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:11 #7506 [verbose] >
00:06:11 #7507 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:11 #7508 [verbose] > inl substring (start : i32) (len : i32) (str : string) : string =
00:06:11 #7509 [verbose] > $"!str.Substring (!start, !len)"
00:06:12 #7510 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\35cf0ce09f55aa8f0492a4a3ded69cef1446530a1f6f295ca7ced4b8de698315\main.spi
00:06:12 #7511 [verbose] >
00:06:12 #7512 [verbose] > ╭─[ 340.72ms - stdout ]────────────────────────────────────────────────────────╮
00:06:12 #7513 [verbose] > │ () │
00:06:12 #7514 [verbose] > │ │
00:06:12 #7515 [verbose] > │ │
00:06:12 #7516 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:12 #7517 [verbose] >
00:06:12 #7518 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:12 #7519 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:12 #7520 [verbose] > │ ## to_lower │
00:06:12 #7521 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:12 #7522 [verbose] >
00:06:12 #7523 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:12 #7524 [verbose] > inl to_lower (input : string) : string =
00:06:12 #7525 [verbose] > $"!input.ToLower ()"
00:06:12 #7526 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2567ca395a90d555f517ba8f16071e917841b77124c0f0c789671c9169240a46\main.spi
00:06:12 #7527 [verbose] >
00:06:12 #7528 [verbose] > ╭─[ 393.02ms - stdout ]────────────────────────────────────────────────────────╮
00:06:12 #7529 [verbose] > │ () │
00:06:12 #7530 [verbose] > │ │
00:06:12 #7531 [verbose] > │ │
00:06:12 #7532 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:12 #7533 [verbose] >
00:06:12 #7534 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:12 #7535 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:12 #7536 [verbose] > │ ## to_upper │
00:06:12 #7537 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:12 #7538 [verbose] >
00:06:12 #7539 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:12 #7540 [verbose] > inl to_upper (input : string) : string =
00:06:12 #7541 [verbose] > $"!input.ToUpper ()"
00:06:12 #7542 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1a50c454501b30ab747cf787fbf78358ecb9a7abf26bd84ce2878fb309928082\main.spi
00:06:12 #7543 [verbose] >
00:06:12 #7544 [verbose] > ╭─[ 293.04ms - stdout ]────────────────────────────────────────────────────────╮
00:06:12 #7545 [verbose] > │ () │
00:06:12 #7546 [verbose] > │ │
00:06:12 #7547 [verbose] > │ │
00:06:12 #7548 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:12 #7549 [verbose] >
00:06:12 #7550 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:12 #7551 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:12 #7552 [verbose] > │ ## trim │
00:06:12 #7553 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:12 #7554 [verbose] >
00:06:12 #7555 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:12 #7556 [verbose] > inl trim (input : string) : string =
00:06:12 #7557 [verbose] > $"!input.Trim ()"
00:06:13 #7558 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\bb26cc1ee7a036efcb8209ea3813bb048cda62c8e43877183049089be2c507ef\main.spi
00:06:13 #7559 [verbose] >
00:06:13 #7560 [verbose] > ╭─[ 340.17ms - stdout ]────────────────────────────────────────────────────────╮
00:06:13 #7561 [verbose] > │ () │
00:06:13 #7562 [verbose] > │ │
00:06:13 #7563 [verbose] > │ │
00:06:13 #7564 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:13 #7565 [verbose] >
00:06:13 #7566 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:13 #7567 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:13 #7568 [verbose] > │ ## trim_end │
00:06:13 #7569 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:13 #7570 [verbose] >
00:06:13 #7571 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:13 #7572 [verbose] > inl trim_end (trim_chars : array_base char) (input : string) : string =
00:06:13 #7573 [verbose] > $"!input.TrimEnd !trim_chars"
00:06:13 #7574 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\87b1179f0d15d85c91268a2caad03ecdf4183b6d42bd7442e8e1edf206599073\main.spi
00:06:13 #7575 [verbose] >
00:06:13 #7576 [verbose] > ╭─[ 369.44ms - stdout ]────────────────────────────────────────────────────────╮
00:06:13 #7577 [verbose] > │ () │
00:06:13 #7578 [verbose] > │ │
00:06:13 #7579 [verbose] > │ │
00:06:13 #7580 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:13 #7581 [verbose] >
00:06:13 #7582 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:13 #7583 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:13 #7584 [verbose] > │ ## trim_start │
00:06:13 #7585 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:13 #7586 [verbose] >
00:06:13 #7587 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:13 #7588 [verbose] > inl trim_start (trim_chars : array_base char) (input : string) : string =
00:06:13 #7589 [verbose] > $"!input.TrimStart !trim_chars"
00:06:14 #7590 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\21d14611b7c29a5df901d192717f2fbbd802863c614c629220eb7d1c60478ac0\main.spi
00:06:14 #7591 [verbose] >
00:06:14 #7592 [verbose] > ╭─[ 542.11ms - stdout ]────────────────────────────────────────────────────────╮
00:06:14 #7593 [verbose] > │ () │
00:06:14 #7594 [verbose] > │ │
00:06:14 #7595 [verbose] > │ │
00:06:14 #7596 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:14 #7597 [verbose] >
00:06:14 #7598 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:14 #7599 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:14 #7600 [verbose] > │ ## slice │
00:06:14 #7601 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:14 #7602 [verbose] >
00:06:14 #7603 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:14 #7604 [verbose] > inl slice from to s : string =
00:06:14 #7605 [verbose] > sm.slice s { from to }
00:06:14 #7606 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1a8b4e6d24335db1d9752523f1e1c0af4eedb2e8c9766c2a217c68ca4580fad8\main.spi
00:06:14 #7607 [verbose] >
00:06:14 #7608 [verbose] > ╭─[ 251.80ms - stdout ]────────────────────────────────────────────────────────╮
00:06:14 #7609 [verbose] > │ () │
00:06:14 #7610 [verbose] > │ │
00:06:14 #7611 [verbose] > │ │
00:06:14 #7612 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:14 #7613 [verbose] >
00:06:14 #7614 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:14 #7615 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:14 #7616 [verbose] > │ ## raw_string_literal │
00:06:14 #7617 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:14 #7618 [verbose] >
00:06:14 #7619 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:14 #7620 [verbose] > inl raw_string_literal (s : string) : rust.ref' str =
00:06:14 #7621 [verbose] > !\($"\"r#\\\"\" + !s + \"\\\"#\"")
00:06:14 #7622 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c462a6ce4d9c58cec1426bb478e253d6d809435b9e8cacd7d8793444eacb953d\main.spi
00:06:14 #7623 [verbose] >
00:06:14 #7624 [verbose] > ╭─[ 476.82ms - stdout ]────────────────────────────────────────────────────────╮
00:06:14 #7625 [verbose] > │ () │
00:06:14 #7626 [verbose] > │ │
00:06:14 #7627 [verbose] > │ │
00:06:14 #7628 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:14 #7629 [verbose] >
00:06:14 #7630 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:14 #7631 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:14 #7632 [verbose] > │ ## raw_string_literal_static │
00:06:14 #7633 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:14 #7634 [verbose] >
00:06:14 #7635 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:14 #7636 [verbose] > inl raw_string_literal_static (s : string) : rust.static_ref' str =
00:06:14 #7637 [verbose] > !\($"\"r#\\\"\" + !s + \"\\\"#\"")
00:06:15 #7638 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8c743b15e092a434e5164f1402572eaf533d289cd79f856ab376b1b1b4b0c59c\main.spi
00:06:15 #7639 [verbose] >
00:06:15 #7640 [verbose] > ╭─[ 392.05ms - stdout ]────────────────────────────────────────────────────────╮
00:06:15 #7641 [verbose] > │ () │
00:06:15 #7642 [verbose] > │ │
00:06:15 #7643 [verbose] > │ │
00:06:15 #7644 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:15 #7645 [verbose] >
00:06:15 #7646 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:15 #7647 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:15 #7648 [verbose] > │ ## include_str │
00:06:15 #7649 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:15 #7650 [verbose] >
00:06:15 #7651 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:15 #7652 [verbose] > inl include_str (path : string) : rust.ref' str =
00:06:15 #7653 [verbose] > !\($'"include_str\!(\\\"" + !path + "\\\")"')
00:06:15 #7654 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\24d28215aa5cc5624955ef9aeea93c055ece271333c87297af651deff50037f8\main.spi
00:06:15 #7655 [verbose] >
00:06:15 #7656 [verbose] > ╭─[ 299.17ms - stdout ]────────────────────────────────────────────────────────╮
00:06:15 #7657 [verbose] > │ () │
00:06:15 #7658 [verbose] > │ │
00:06:15 #7659 [verbose] > │ │
00:06:15 #7660 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:15 #7661 [verbose] >
00:06:15 #7662 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:15 #7663 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:15 #7664 [verbose] > │ ## as_str │
00:06:15 #7665 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:15 #7666 [verbose] >
00:06:15 #7667 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:15 #7668 [verbose] > inl as_str (s : string) : rust.ref' str =
00:06:15 #7669 [verbose] > !\\(s, $'"fable_library_rust::String_::LrcStr::as_str(&$0)"')
00:06:15 #7670 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\82877c7a6cb9acbc3c69363a603aead20a2883eac10dec5bf531ba8ac6c879a8\main.spi
00:06:16 #7671 [verbose] >
00:06:16 #7672 [verbose] > ╭─[ 377.51ms - stdout ]────────────────────────────────────────────────────────╮
00:06:16 #7673 [verbose] > │ () │
00:06:16 #7674 [verbose] > │ │
00:06:16 #7675 [verbose] > │ │
00:06:16 #7676 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:16 #7677 [verbose] >
00:06:16 #7678 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:16 #7679 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:16 #7680 [verbose] > │ ## as_os_ref │
00:06:16 #7681 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:16 #7682 [verbose] >
00:06:16 #7683 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:16 #7684 [verbose] > inl as_os_ref (s : os_string) : rust.ref' os_str =
00:06:16 #7685 [verbose] > !\\(s, $'"$0.as_ref()"')
00:06:16 #7686 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\91f0604c39d66c6a5fa5fab3699de9905fdc86c9566a37486d9be3c45fcb520f\main.spi
00:06:16 #7687 [verbose] >
00:06:16 #7688 [verbose] > ╭─[ 286.69ms - stdout ]────────────────────────────────────────────────────────╮
00:06:16 #7689 [verbose] > │ () │
00:06:16 #7690 [verbose] > │ │
00:06:16 #7691 [verbose] > │ │
00:06:16 #7692 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:16 #7693 [verbose] >
00:06:16 #7694 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:16 #7695 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:16 #7696 [verbose] > │ ## to_os_string │
00:06:16 #7697 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:16 #7698 [verbose] >
00:06:16 #7699 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:16 #7700 [verbose] > inl to_os_string (s : rust.ref' os_str) : os_string =
00:06:16 #7701 [verbose] > !\\(s, $'"$0.to_os_string()"')
00:06:16 #7702 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2e98d02eab7bd7a2165a98d5d55f8529cab473f0959a02889cb64b1df87ad921\main.spi
00:06:16 #7703 [verbose] >
00:06:16 #7704 [verbose] > ╭─[ 328.90ms - stdout ]────────────────────────────────────────────────────────╮
00:06:16 #7705 [verbose] > │ () │
00:06:16 #7706 [verbose] > │ │
00:06:16 #7707 [verbose] > │ │
00:06:16 #7708 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:16 #7709 [verbose] >
00:06:16 #7710 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:16 #7711 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:16 #7712 [verbose] > │ ## os_to_str │
00:06:16 #7713 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:16 #7714 [verbose] >
00:06:16 #7715 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:16 #7716 [verbose] > inl os_to_str (s : os_string) : optionm'.option' (rust.ref' str) =
00:06:16 #7717 [verbose] > !\\(s, $'"$0.to_str()"')
00:06:16 #7718 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b0047ffdc5857d5799795bf49528303f7288d6c0984064b245cd2114a01d1628\main.spi
00:06:17 #7719 [verbose] >
00:06:17 #7720 [verbose] > ╭─[ 383.97ms - stdout ]────────────────────────────────────────────────────────╮
00:06:17 #7721 [verbose] > │ () │
00:06:17 #7722 [verbose] > │ │
00:06:17 #7723 [verbose] > │ │
00:06:17 #7724 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:17 #7725 [verbose] >
00:06:17 #7726 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:17 #7727 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:17 #7728 [verbose] > │ ## from_std_string │
00:06:17 #7729 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:17 #7730 [verbose] >
00:06:17 #7731 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:17 #7732 [verbose] > inl from_std_string (str : std_string) : string =
00:06:17 #7733 [verbose] > !\\(str, $'"fable_library_rust::String_::fromString($0)"')
00:06:17 #7734 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\90e10d371112167211ebbcd8c609d313a7eddf4b6a2e60fae926bde6711c0675\main.spi
00:06:17 #7735 [verbose] >
00:06:17 #7736 [verbose] > ╭─[ 327.37ms - stdout ]────────────────────────────────────────────────────────╮
00:06:17 #7737 [verbose] > │ () │
00:06:17 #7738 [verbose] > │ │
00:06:17 #7739 [verbose] > │ │
00:06:17 #7740 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:17 #7741 [verbose] >
00:06:17 #7742 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:17 #7743 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:17 #7744 [verbose] > │ ## ref_to_std_string │
00:06:17 #7745 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:17 #7746 [verbose] >
00:06:17 #7747 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:17 #7748 [verbose] > inl ref_to_std_string (str : rust.ref' str) : std_string =
00:06:17 #7749 [verbose] > !\\(str, $'"String::from($0)"')
00:06:17 #7750 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ad5feec77f8dae019dd4123f2fafeb2d07825753d34930694bfff4cd21d57883\main.spi
00:06:17 #7751 [verbose] >
00:06:17 #7752 [verbose] > ╭─[ 288.08ms - stdout ]────────────────────────────────────────────────────────╮
00:06:17 #7753 [verbose] > │ () │
00:06:17 #7754 [verbose] > │ │
00:06:17 #7755 [verbose] > │ │
00:06:17 #7756 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:17 #7757 [verbose] >
00:06:17 #7758 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:17 #7759 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:17 #7760 [verbose] > │ ## to_std_string │
00:06:17 #7761 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:17 #7762 [verbose] >
00:06:17 #7763 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:17 #7764 [verbose] > inl to_std_string (s : string) : std_string =
00:06:17 #7765 [verbose] > inl s = join s
00:06:17 #7766 [verbose] > s |> as_str |> ref_to_std_string
00:06:17 #7767 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a0e4879b9415be46bc12783771e09b2ff33829fbb82b2e1579bee54ae498f3f1\main.spi
00:06:18 #7768 [verbose] >
00:06:18 #7769 [verbose] > ╭─[ 378.95ms - stdout ]────────────────────────────────────────────────────────╮
00:06:18 #7770 [verbose] > │ () │
00:06:18 #7771 [verbose] > │ │
00:06:18 #7772 [verbose] > │ │
00:06:18 #7773 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:18 #7774 [verbose] >
00:06:18 #7775 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:18 #7776 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:18 #7777 [verbose] > │ ## as_str_std │
00:06:18 #7778 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:18 #7779 [verbose] >
00:06:18 #7780 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:18 #7781 [verbose] > inl as_str_std (s : std_string) : rust.ref' str =
00:06:18 #7782 [verbose] > inl s = join s
00:06:18 #7783 [verbose] > !\($'"!s.as_str()"')
00:06:18 #7784 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\05fe9f4ff35bda48bc066c435caed26f645bc4d0b37c908a06af736bf4da0a5b\main.spi
00:06:18 #7785 [verbose] >
00:06:18 #7786 [verbose] > ╭─[ 279.03ms - stdout ]────────────────────────────────────────────────────────╮
00:06:18 #7787 [verbose] > │ () │
00:06:18 #7788 [verbose] > │ │
00:06:18 #7789 [verbose] > │ │
00:06:18 #7790 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:18 #7791 [verbose] >
00:06:18 #7792 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:18 #7793 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:18 #7794 [verbose] > │ ## into_boxed_str │
00:06:18 #7795 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:18 #7796 [verbose] >
00:06:18 #7797 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:18 #7798 [verbose] > inl into_boxed_str (s : std_string) : rust.box str =
00:06:18 #7799 [verbose] > !\($'"!s.into_boxed_str()"')
00:06:18 #7800 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2cae40a55a0d6d5652bb680f433d5699e9939ef0a477e232b00b345d29fd9c8a\main.spi
00:06:18 #7801 [verbose] >
00:06:18 #7802 [verbose] > ╭─[ 382.21ms - stdout ]────────────────────────────────────────────────────────╮
00:06:18 #7803 [verbose] > │ () │
00:06:18 #7804 [verbose] > │ │
00:06:18 #7805 [verbose] > │ │
00:06:18 #7806 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:18 #7807 [verbose] >
00:06:18 #7808 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:18 #7809 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:18 #7810 [verbose] > │ ## format' │
00:06:18 #7811 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:18 #7812 [verbose] >
00:06:18 #7813 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:18 #7814 [verbose] > inl format' x : std_string =
00:06:18 #7815 [verbose] > !\\(x, $'@@$"format\!(""{{}}"", $0)"')
00:06:18 #7816 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\52bbb4e50596d288957974098a7e93727167b1a4d215510cd9158237b1cafe03\main.spi
00:06:19 #7817 [verbose] >
00:06:19 #7818 [verbose] > ╭─[ 381.90ms - stdout ]────────────────────────────────────────────────────────╮
00:06:19 #7819 [verbose] > │ () │
00:06:19 #7820 [verbose] > │ │
00:06:19 #7821 [verbose] > │ │
00:06:19 #7822 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:19 #7823 [verbose] >
00:06:19 #7824 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:19 #7825 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:19 #7826 [verbose] > │ ## format_debug │
00:06:19 #7827 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:19 #7828 [verbose] >
00:06:19 #7829 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:19 #7830 [verbose] > inl format_debug x : string =
00:06:19 #7831 [verbose] > $'$"%A{!x}"'
00:06:19 #7832 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ecdbb057564d09c1cf0c7f86b6338b883cbbfd744a92f6f319ce0d4b7133d006\main.spi
00:06:19 #7833 [verbose] >
00:06:19 #7834 [verbose] > ╭─[ 439.46ms - stdout ]────────────────────────────────────────────────────────╮
00:06:19 #7835 [verbose] > │ () │
00:06:19 #7836 [verbose] > │ │
00:06:19 #7837 [verbose] > │ │
00:06:19 #7838 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:19 #7839 [verbose] >
00:06:19 #7840 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:19 #7841 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:19 #7842 [verbose] > │ ## format_debug' │
00:06:19 #7843 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:19 #7844 [verbose] >
00:06:19 #7845 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:19 #7846 [verbose] > inl format_debug' x : std_string =
00:06:19 #7847 [verbose] > !\\(x, $'@@$"format\!(""{{:?}}"", $0)"')
00:06:19 #7848 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\6386583745f72ff636a322c186aa0693b3fa7e0f4a1d2b1461c271219e3935eb\main.spi
00:06:19 #7849 [verbose] >
00:06:19 #7850 [verbose] > ╭─[ 321.57ms - stdout ]────────────────────────────────────────────────────────╮
00:06:19 #7851 [verbose] > │ () │
00:06:19 #7852 [verbose] > │ │
00:06:19 #7853 [verbose] > │ │
00:06:19 #7854 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:19 #7855 [verbose] >
00:06:19 #7856 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:19 #7857 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:19 #7858 [verbose] > │ ## format_pretty' │
00:06:19 #7859 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:19 #7860 [verbose] >
00:06:19 #7861 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:19 #7862 [verbose] > inl format_pretty' x : std_string =
00:06:19 #7863 [verbose] > !\\(x, $'@@$"format\!(""{{:#?}}"", $0)"')
00:06:20 #7864 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\15b59bf80259a517fc536f2e614d8db51cf4916969d0cb69b2a3d74500c956ef\main.spi
00:06:20 #7865 [verbose] >
00:06:20 #7866 [verbose] > ╭─[ 362.04ms - stdout ]────────────────────────────────────────────────────────╮
00:06:20 #7867 [verbose] > │ () │
00:06:20 #7868 [verbose] > │ │
00:06:20 #7869 [verbose] > │ │
00:06:20 #7870 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:20 #7871 [verbose] >
00:06:20 #7872 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:20 #7873 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:20 #7874 [verbose] > │ ## format_exception │
00:06:20 #7875 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:20 #7876 [verbose] >
00:06:20 #7877 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:20 #7878 [verbose] > inl format_exception (ex : exn) : string =
00:06:20 #7879 [verbose] > run_target function
00:06:20 #7880 [verbose] > | Fsharp (Native) => fun () => $'$"{!ex.GetType ()}: {!ex.Message}"'
00:06:20 #7881 [verbose] > | _ => fun () => ex |> format_debug
00:06:20 #7882 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a204692ac6842e6ee979312f24021717fe4701ff912e1dfdb2eb6bb3200f93ef\main.spi
00:06:20 #7883 [verbose] >
00:06:20 #7884 [verbose] > ╭─[ 290.30ms - stdout ]────────────────────────────────────────────────────────╮
00:06:20 #7885 [verbose] > │ () │
00:06:20 #7886 [verbose] > │ │
00:06:20 #7887 [verbose] > │ │
00:06:20 #7888 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:20 #7889 [verbose] >
00:06:20 #7890 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:20 #7891 [verbose] > // // test
00:06:20 #7892 [verbose] >
00:06:20 #7893 [verbose] > fun () => failwith "test"
00:06:20 #7894 [verbose] > |> _throws
00:06:20 #7895 [verbose] > |> optionm.map sm'.format_exception
00:06:20 #7896 [verbose] > |> _assert_eq (Some "System.Exception: test")
00:06:20 #7897 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ff03c78b3555ff843f6c90fdc41b3b1c54d1236aa939ef465e01b342dcfd6d3d\main.spi
00:06:23 #7898 [verbose] >
00:06:23 #7899 [verbose] > ╭─[ 2.72s - stdout ]───────────────────────────────────────────────────────────╮
00:06:23 #7900 [verbose] > │ type [<Struct>] US0 = │
00:06:23 #7901 [verbose] > │ | US0_0 of f0_0 : exn │
00:06:23 #7902 [verbose] > │ | US0_1 │
00:06:23 #7903 [verbose] > │ and [<Struct>] US1 = │
00:06:23 #7904 [verbose] > │ | US1_0 of f0_0 : string │
00:06:23 #7905 [verbose] > │ | US1_1 │
00:06:23 #7906 [verbose] > │ let rec closure0 () () : unit = │
00:06:23 #7907 [verbose] > │ failwith<unit> "test" │
00:06:23 #7908 [verbose] > │ and closure1 () (v0 : exn) : US0 = │
00:06:23 #7909 [verbose] > │ US0_0(v0) │
00:06:23 #7910 [verbose] > │ and method1 (v0 : bool) : bool = │
00:06:23 #7911 [verbose] > │ v0 │
00:06:23 #7912 [verbose] > │ and method0 () : unit = │
00:06:23 #7913 [verbose] > │ let v0 : (unit -> unit) = closure0() │
00:06:23 #7914 [verbose] > │ let v1 : US0 = US0_1 │
00:06:23 #7915 [verbose] > │ let v2 : (exn -> US0) = closure1() │
00:06:23 #7916 [verbose] > │ let v3 : US0 = try v0 (); v1 with ex -> ex |> v2 │
00:06:23 #7917 [verbose] > │ let v15 : US1 = │
00:06:23 #7918 [verbose] > │ match v3 with │
00:06:23 #7919 [verbose] > │ | US0_1 -> (* None *) │
00:06:23 #7920 [verbose] > │ US1_1 │
00:06:23 #7921 [verbose] > │ | US0_0(v4) -> (* Some *) │
00:06:23 #7922 [verbose] > │ let v5 : string option = None │
00:06:23 #7923 [verbose] > │ let mutable _v5 = v5 │
00:06:23 #7924 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:06:23 #7925 [verbose] > │ let v6 : string = $"%A{v4}" │
00:06:23 #7926 [verbose] > │ v6 │
00:06:23 #7927 [verbose] > │ #endif │
00:06:23 #7928 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:06:23 #7929 [verbose] > │ let v7 : string = $"%A{v4}" │
00:06:23 #7930 [verbose] > │ v7 │
00:06:23 #7931 [verbose] > │ #endif │
00:06:23 #7932 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:06:23 #7933 [verbose] > │ let v8 : string = $"%A{v4}" │
00:06:23 #7934 [verbose] > │ v8 │
00:06:23 #7935 [verbose] > │ #endif │
00:06:23 #7936 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:06:23 #7937 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:06:23 #7938 [verbose] > │ let v9 : string = $"{v4.GetType ()}: {v4.Message}" │
00:06:23 #7939 [verbose] > │ v9 │
00:06:23 #7940 [verbose] > │ #endif │
00:06:23 #7941 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:06:23 #7942 [verbose] > │ let v10 : string = $"%A{v4}" │
00:06:23 #7943 [verbose] > │ v10 │
00:06:23 #7944 [verbose] > │ #endif │
00:06:23 #7945 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:06:23 #7946 [verbose] > │ FABLE_COMPILER_DART │
00:06:23 #7947 [verbose] > │ Unchecked.defaultof<string> │
00:06:23 #7948 [verbose] > │ #endif │
00:06:23 #7949 [verbose] > │ |> fun x -> _v5 <- Some x │
00:06:23 #7950 [verbose] > │ let v11 : string = _v5.Value │
00:06:23 #7951 [verbose] > │ US1_0(v11) │
00:06:23 #7952 [verbose] > │ let v16 : string = $"%A{v15}" │
00:06:23 #7953 [verbose] > │ System.Console.WriteLine v16 │
00:06:23 #7954 [verbose] > │ let v21 : bool = │
00:06:23 #7955 [verbose] > │ match v15 with │
00:06:23 #7956 [verbose] > │ | US1_0(v19) -> (* Some *) │
00:06:23 #7957 [verbose] > │ let v20 : bool = v19 = "System.Exception: test" │
00:06:23 #7958 [verbose] > │ v20 │
00:06:23 #7959 [verbose] > │ | _ -> │
00:06:23 #7960 [verbose] > │ false │
00:06:23 #7961 [verbose] > │ let v23 : bool = │
00:06:23 #7962 [verbose] > │ if v21 then │
00:06:23 #7963 [verbose] > │ true │
00:06:23 #7964 [verbose] > │ else │
00:06:23 #7965 [verbose] > │ method1(v21) │
00:06:23 #7966 [verbose] > │ let v24 : string = "System.Exception: test" │
00:06:23 #7967 [verbose] > │ let v25 : US1 = US1_0(v24) │
00:06:23 #7968 [verbose] > │ let v26 : string = $"__expect / actual: %A{v15} / expected: %A{v25}" │
00:06:23 #7969 [verbose] > │ let v27 : bool = v23 = false │
00:06:23 #7970 [verbose] > │ if v27 then │
00:06:23 #7971 [verbose] > │ failwith<unit> v26 │
00:06:23 #7972 [verbose] > │ method0() │
00:06:23 #7973 [verbose] > │ │
00:06:23 #7974 [verbose] > │ US1_0 "System.Exception: test" │
00:06:23 #7975 [verbose] > │ │
00:06:23 #7976 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:23 #7977 [verbose] >
00:06:23 #7978 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:23 #7979 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:23 #7980 [verbose] > │ ## obj_to_string │
00:06:23 #7981 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:23 #7982 [verbose] >
00:06:23 #7983 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:23 #7984 [verbose] > inl obj_to_string x : string =
00:06:23 #7985 [verbose] > x |> $'_.ToString()'
00:06:23 #7986 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1d40f6babd2246a4f347ef0de2160d318bdbbe5610d8b4ae3834981008d3612e\main.spi
00:06:23 #7987 [verbose] >
00:06:23 #7988 [verbose] > ╭─[ 372.50ms - stdout ]────────────────────────────────────────────────────────╮
00:06:23 #7989 [verbose] > │ () │
00:06:23 #7990 [verbose] > │ │
00:06:23 #7991 [verbose] > │ │
00:06:23 #7992 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:23 #7993 [verbose] >
00:06:23 #7994 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:23 #7995 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:23 #7996 [verbose] > │ ## to_string any │
00:06:23 #7997 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:23 #7998 [verbose] >
00:06:23 #7999 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:23 #8000 [verbose] > instance to_string any =
00:06:23 #8001 [verbose] > obj_to_string
00:06:24 #8002 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\eee856275dcff3353b5a99d4c09d017ff02889fc198b182d261f21ce67415cc4\main.spi
00:06:24 #8003 [verbose] >
00:06:24 #8004 [verbose] > ╭─[ 328.50ms - stdout ]────────────────────────────────────────────────────────╮
00:06:24 #8005 [verbose] > │ () │
00:06:24 #8006 [verbose] > │ │
00:06:24 #8007 [verbose] > │ │
00:06:24 #8008 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:24 #8009 [verbose] >
00:06:24 #8010 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:24 #8011 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:24 #8012 [verbose] > │ ## to_string result t u │
00:06:24 #8013 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:24 #8014 [verbose] >
00:06:24 #8015 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:24 #8016 [verbose] > instance to_string result t u = fun x =>
00:06:24 #8017 [verbose] > real
00:06:24 #8018 [verbose] > open rust
00:06:24 #8019 [verbose] > typecase (t * u) with
00:06:24 #8020 [verbose] > | string * string =>
00:06:24 #8021 [verbose] > match x with
00:06:24 #8022 [verbose] > | Ok x => x
00:06:24 #8023 [verbose] > | Error x => $'"Error: " + !x + ""' : string
00:06:24 #8024 [verbose] > | std_string * std_string =>
00:06:24 #8025 [verbose] > match x with
00:06:24 #8026 [verbose] > | Ok x => from_std_string x
00:06:24 #8027 [verbose] > | Error x => $'"Error: " + string !x + ""' : string
00:06:24 #8028 [verbose] > | _ => obj_to_string `u x
00:06:24 #8029 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\60dff7d1efec23883f40634f2ece2388a5bf144b288b9236f76978dd763423a9\main.spi
00:06:24 #8030 [verbose] >
00:06:24 #8031 [verbose] > ╭─[ 348.01ms - stdout ]────────────────────────────────────────────────────────╮
00:06:24 #8032 [verbose] > │ () │
00:06:24 #8033 [verbose] > │ │
00:06:24 #8034 [verbose] > │ │
00:06:24 #8035 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:24 #8036 [verbose] >
00:06:24 #8037 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:24 #8038 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:24 #8039 [verbose] > │ ## serialize │
00:06:24 #8040 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:24 #8041 [verbose] >
00:06:24 #8042 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:24 #8043 [verbose] > inl serialize forall t. (x : t) : resultm.result' std_string json_error =
00:06:24 #8044 [verbose] > !\($'"serde_json::to_string(&!x)"')
00:06:24 #8045 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a929a8baa41c764897aa78de16a51338c7a4f923b910bdf9c3c15d12ba1b7a74\main.spi
00:06:24 #8046 [verbose] >
00:06:24 #8047 [verbose] > ╭─[ 321.69ms - stdout ]────────────────────────────────────────────────────────╮
00:06:24 #8048 [verbose] > │ () │
00:06:24 #8049 [verbose] > │ │
00:06:24 #8050 [verbose] > │ │
00:06:24 #8051 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:24 #8052 [verbose] >
00:06:24 #8053 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:24 #8054 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:24 #8055 [verbose] > │ ## deserialize │
00:06:24 #8056 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:24 #8057 [verbose] >
00:06:24 #8058 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:24 #8059 [verbose] > inl deserialize forall t. (json : string) : resultm.result' t std_string =
00:06:24 #8060 [verbose] > inl json = join json
00:06:24 #8061 [verbose] > inl json = json |> as_str
00:06:24 #8062 [verbose] > !\($'"serde_json::from_str(&!json)"')
00:06:24 #8063 [verbose] > |> resultm.map_error' fun (x : json_error) => x |> format'
00:06:25 #8064 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\746c0fd294eb60d005e6a1342a3db3f185921a277103b0dc815d339d22af1234\main.spi
00:06:25 #8065 [verbose] >
00:06:25 #8066 [verbose] > ╭─[ 302.43ms - stdout ]────────────────────────────────────────────────────────╮
00:06:25 #8067 [verbose] > │ () │
00:06:25 #8068 [verbose] > │ │
00:06:25 #8069 [verbose] > │ │
00:06:25 #8070 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:25 #8071 [verbose] >
00:06:25 #8072 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:25 #8073 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:25 #8074 [verbose] > │ ## borsh_deserialize │
00:06:25 #8075 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:25 #8076 [verbose] >
00:06:25 #8077 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:25 #8078 [verbose] > inl borsh_deserialize forall t. (data : array_base u8) : resultm.result' t
00:06:25 #8079 [verbose] > std_string =
00:06:25 #8080 [verbose] > inl data = data |> am'.as_slice
00:06:25 #8081 [verbose] > !\($'"let mut !data = !data"')
00:06:25 #8082 [verbose] > inl result = !\($'"borsh::BorshDeserialize::deserialize(&mut !data)"')
00:06:25 #8083 [verbose] > result
00:06:25 #8084 [verbose] > |> resultm.map_error' fun (x : borsh_io_error) => x |> format'
00:06:25 #8085 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\da2443aadc80392f73e4c8f02e3ed75c5af79fe443c196ee63ce20b5af0c06fb\main.spi
00:06:25 #8086 [verbose] >
00:06:25 #8087 [verbose] > ╭─[ 393.51ms - stdout ]────────────────────────────────────────────────────────╮
00:06:25 #8088 [verbose] > │ () │
00:06:25 #8089 [verbose] > │ │
00:06:25 #8090 [verbose] > │ │
00:06:25 #8091 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:25 #8092 [verbose] >
00:06:25 #8093 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:25 #8094 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:25 #8095 [verbose] > │ ## deserialize_vec │
00:06:25 #8096 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:25 #8097 [verbose] >
00:06:25 #8098 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:25 #8099 [verbose] > inl deserialize_vec (value : json_value) : resultm.result' (am'.vec u8)
00:06:25 #8100 [verbose] > std_string =
00:06:25 #8101 [verbose] > inl value = join value
00:06:25 #8102 [verbose] > !\($'"serde_json::from_value(!value)"')
00:06:25 #8103 [verbose] > |> resultm.map_error' fun (x : json_error) => x |> format'
00:06:25 #8104 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b19c8ac08f10b1125cf22be0daa3d720a7116e103fff120db7f4af82fdf03b70\main.spi
00:06:25 #8105 [verbose] >
00:06:25 #8106 [verbose] > ╭─[ 324.62ms - stdout ]────────────────────────────────────────────────────────╮
00:06:25 #8107 [verbose] > │ () │
00:06:25 #8108 [verbose] > │ │
00:06:25 #8109 [verbose] > │ │
00:06:25 #8110 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:25 #8111 [verbose] >
00:06:25 #8112 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:25 #8113 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:25 #8114 [verbose] > │ ## encode_uri_component │
00:06:25 #8115 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:25 #8116 [verbose] >
00:06:25 #8117 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:25 #8118 [verbose] > inl encode_uri_component (s : std_string) : js_string =
00:06:25 #8119 [verbose] > !\($'"js_sys::encode_uri_component(&!s)"')
00:06:26 #8120 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\15aa02801bef8af420ad7637663ae1a2d3aacdb8b51e7e5439ac028ad5db277f\main.spi
00:06:26 #8121 [verbose] >
00:06:26 #8122 [verbose] > ╭─[ 314.96ms - stdout ]────────────────────────────────────────────────────────╮
00:06:26 #8123 [verbose] > │ () │
00:06:26 #8124 [verbose] > │ │
00:06:26 #8125 [verbose] > │ │
00:06:26 #8126 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:26 #8127 [verbose] >
00:06:26 #8128 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:26 #8129 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:26 #8130 [verbose] > │ ## strip_prefix │
00:06:26 #8131 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:26 #8132 [verbose] >
00:06:26 #8133 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:26 #8134 [verbose] > inl strip_prefix (prefix : char) (s : std_string) : optionm'.option' (rust.ref'
00:06:26 #8135 [verbose] > str) =
00:06:26 #8136 [verbose] > inl s = join s
00:06:26 #8137 [verbose] > !\($'"!s.strip_prefix(!prefix)"')
00:06:26 #8138 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3a031ed96bbf6201e0500b39740e526ab79fc637afd3ca1d8f4b6696d7d560ea\main.spi
00:06:26 #8139 [verbose] >
00:06:26 #8140 [verbose] > ╭─[ 406.48ms - stdout ]────────────────────────────────────────────────────────╮
00:06:26 #8141 [verbose] > │ () │
00:06:26 #8142 [verbose] > │ │
00:06:26 #8143 [verbose] > │ │
00:06:26 #8144 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:26 #8145 [verbose] >
00:06:26 #8146 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:26 #8147 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:26 #8148 [verbose] > │ ## base64_decode │
00:06:26 #8149 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:26 #8150 [verbose] >
00:06:26 #8151 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:26 #8152 [verbose] > inl base64_decode (s : std_string) : result std_string std_string =
00:06:26 #8153 [verbose] > fun () =>
00:06:26 #8154 [verbose] > inl s = join s
00:06:26 #8155 [verbose] > inl bytes : resultm.result' (am'.vec u8) base64_decode_error =
00:06:26 #8156 [verbose] >
00:06:26 #8157 [verbose] > !\($'"base64::Engine::decode(&base64::engine::general_purpose::STANDARD, !s)"')
00:06:26 #8158 [verbose] > inl bytes =
00:06:26 #8159 [verbose] > bytes
00:06:26 #8160 [verbose] > |> resultm.map_error' format'
00:06:26 #8161 [verbose] > |> resultm.try'
00:06:26 #8162 [verbose] > inl result : resultm.result' std_string utf8_error =
00:06:26 #8163 [verbose] > !\($'"std::str::from_utf8(&!bytes).map(String::from)"')
00:06:26 #8164 [verbose] > result
00:06:26 #8165 [verbose] > |> resultm.map_error' format'
00:06:26 #8166 [verbose] > |> fun x =>
00:06:26 #8167 [verbose] > join x ()
00:06:26 #8168 [verbose] > |> resultm.unbox
00:06:26 #8169 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f630e8a784e106b66c71546ff2c4a5e8bac60c93da8e6760921ceb24424fed3d\main.spi
00:06:26 #8170 [verbose] >
00:06:26 #8171 [verbose] > ╭─[ 283.66ms - stdout ]────────────────────────────────────────────────────────╮
00:06:26 #8172 [verbose] > │ () │
00:06:26 #8173 [verbose] > │ │
00:06:26 #8174 [verbose] > │ │
00:06:26 #8175 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:26 #8176 [verbose] >
00:06:26 #8177 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:26 #8178 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:26 #8179 [verbose] > │ ## concat_array_trailing │
00:06:26 #8180 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:26 #8181 [verbose] >
00:06:26 #8182 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:26 #8183 [verbose] > inl concat_array_trailing (separator : string) (input : a i32 string) =
00:06:26 #8184 [verbose] > ("", input)
00:06:26 #8185 [verbose] > ||> am.fold fun acc (x : string) =>
00:06:26 #8186 [verbose] > $'!acc + !x + !separator + ""'
00:06:27 #8187 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\de84f091db17d992aec03f62297e2f905d98aa9914fc0cebc1cf43f5efb2a5c1\main.spi
00:06:27 #8188 [verbose] >
00:06:27 #8189 [verbose] > ╭─[ 379.51ms - stdout ]────────────────────────────────────────────────────────╮
00:06:27 #8190 [verbose] > │ () │
00:06:27 #8191 [verbose] > │ │
00:06:27 #8192 [verbose] > │ │
00:06:27 #8193 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:27 #8194 [verbose] >
00:06:27 #8195 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:27 #8196 [verbose] > // // test
00:06:27 #8197 [verbose] > // // rust=
00:06:27 #8198 [verbose] >
00:06:27 #8199 [verbose] > ;[[
00:06:27 #8200 [verbose] > "1"
00:06:27 #8201 [verbose] > "2"
00:06:27 #8202 [verbose] > "3"
00:06:27 #8203 [verbose] > ]]
00:06:27 #8204 [verbose] > |> fun x =>
00:06:27 #8205 [verbose] > inl code = (a x : _ i32 _) |> concat_array_trailing "\n"
00:06:27 #8206 [verbose] > code
00:06:27 #8207 [verbose] > |> _assert_eq "1\n2\n3\n"
00:06:27 #8208 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\02160c95342d4f91c26842568b0f5d466bb88cee56802338ae6f035d9f208e32\main.spi
00:06:38 #8209 [verbose] >
00:06:38 #8210 [verbose] > ╭─[ 11.34s - return value ]────────────────────────────────────────────────────╮
00:06:38 #8211 [verbose] > │ .rs output: │
00:06:38 #8212 [verbose] > │ "1 │
00:06:38 #8213 [verbose] > │ 2 │
00:06:38 #8214 [verbose] > │ 3 │
00:06:38 #8215 [verbose] > │ " │
00:06:38 #8216 [verbose] > │ │
00:06:38 #8217 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:38 #8218 [verbose] >
00:06:38 #8219 [verbose] > ╭─[ 11.36s - stdout ]──────────────────────────────────────────────────────────╮
00:06:38 #8220 [verbose] > │ │
00:06:38 #8221 [verbose] > │ .fsx: │
00:06:38 #8222 [verbose] > │ type Mut0 = {mutable l0 : int32; mutable l1 : string} │
00:06:38 #8223 [verbose] > │ let rec method1 (v0 : int32, v1 : Mut0) : bool = │
00:06:38 #8224 [verbose] > │ let v2 : int32 = v1.l0 │
00:06:38 #8225 [verbose] > │ let v3 : bool = v2 < v0 │
00:06:38 #8226 [verbose] > │ v3 │
00:06:38 #8227 [verbose] > │ and method2 (v0 : bool) : bool = │
00:06:38 #8228 [verbose] > │ v0 │
00:06:38 #8229 [verbose] > │ and method0 () : unit = │
00:06:38 #8230 [verbose] > │ let v0 : string = "1" │
00:06:38 #8231 [verbose] > │ let v1 : string = "2" │
00:06:38 #8232 [verbose] > │ let v2 : string = "3" │
00:06:38 #8233 [verbose] > │ let v3 : (string []) = [|v0; v1; v2|] │
00:06:38 #8234 [verbose] > │ let v4 : int32 = v3.Length │
00:06:38 #8235 [verbose] > │ let v5 : string = "" │
00:06:38 #8236 [verbose] > │ let v6 : Mut0 = {l0 = 0; l1 = v5} : Mut0 │
00:06:38 #8237 [verbose] > │ while method1(v4, v6) do │
00:06:38 #8238 [verbose] > │ let v8 : int32 = v6.l0 │
00:06:38 #8239 [verbose] > │ let v9 : string = v6.l1 │
00:06:38 #8240 [verbose] > │ let v10 : string = v3.[int v8] │
00:06:38 #8241 [verbose] > │ let v11 : string = "\n" │
00:06:38 #8242 [verbose] > │ let v12 : string = v9 + v10 + v11 + "" │
00:06:38 #8243 [verbose] > │ let v13 : int32 = v8 + 1 │
00:06:38 #8244 [verbose] > │ v6.l0 <- v13 │
00:06:38 #8245 [verbose] > │ v6.l1 <- v12 │
00:06:38 #8246 [verbose] > │ () │
00:06:38 #8247 [verbose] > │ let v14 : string = v6.l1 │
00:06:38 #8248 [verbose] > │ let v15 : string = $"%A{v14}" │
00:06:38 #8249 [verbose] > │ System.Console.WriteLine v15 │
00:06:38 #8250 [verbose] > │ let v17 : bool = v14 = "1\n2\n3\n" │
00:06:38 #8251 [verbose] > │ let v19 : bool = │
00:06:38 #8252 [verbose] > │ if v17 then │
00:06:38 #8253 [verbose] > │ true │
00:06:38 #8254 [verbose] > │ else │
00:06:38 #8255 [verbose] > │ method2(v17) │
00:06:38 #8256 [verbose] > │ let v20 : string = "1\n2\n3\n" │
00:06:38 #8257 [verbose] > │ let v21 : string = $"__expect / actual: %A{v14} / expected: %A{v20}" │
00:06:38 #8258 [verbose] > │ let v22 : bool = v19 = false │
00:06:38 #8259 [verbose] > │ if v22 then │
00:06:38 #8260 [verbose] > │ failwith<unit> v21 │
00:06:38 #8261 [verbose] > │ method0() │
00:06:38 #8262 [verbose] > │ │
00:06:38 #8263 [verbose] > │ │
00:06:38 #8264 [verbose] > │ .rs: │
00:06:38 #8265 [verbose] > │ #![allow(dead_code,)] │
00:06:38 #8266 [verbose] > │ #![allow(non_camel_case_types,)] │
00:06:38 #8267 [verbose] > │ #![allow(non_snake_case,)] │
00:06:38 #8268 [verbose] > │ #![allow(non_upper_case_globals,)] │
00:06:38 #8269 [verbose] > │ #![allow(unreachable_code,)] │
00:06:38 #8270 [verbose] > │ #![allow(unused_attributes,)] │
00:06:38 #8271 [verbose] > │ #![allow(unused_imports,)] │
00:06:38 #8272 [verbose] > │ #![allow(unused_macros,)] │
00:06:38 #8273 [verbose] > │ #![allow(unused_parens,)] │
00:06:38 #8274 [verbose] > │ #![allow(unused_variables,)] │
00:06:38 #8275 [verbose] > │ mod module_ccfa04bf { │
00:06:38 #8276 [verbose] > │ pub mod Spiral_eval { │
00:06:38 #8277 [verbose] > │ use super::*; │
00:06:38 #8278 [verbose] > │ use fable_library_rust::Native_::LrcPtr; │
00:06:38 #8279 [verbose] > │ use fable_library_rust::Native_::MutCell; │
00:06:38 #8280 [verbose] > │ use fable_library_rust::Native_::on_startup; │
00:06:38 #8281 [verbose] > │ use fable_library_rust::NativeArray_::Array; │
00:06:38 #8282 [verbose] > │ use fable_library_rust::NativeArray_::count; │
00:06:38 #8283 [verbose] > │ use fable_library_rust::NativeArray_::new_array; │
00:06:38 #8284 [verbose] > │ use fable_library_rust::String_::append; │
00:06:38 #8285 [verbose] > │ use fable_library_rust::String_::printfn; │
00:06:38 #8286 [verbose] > │ use fable_library_rust::String_::sprintf; │
00:06:38 #8287 [verbose] > │ use fable_library_rust::String_::string; │
00:06:38 #8288 [verbose] > │ #[derive(Clone, Debug, Default, PartialEq, PartialOrd, Hash, Eq,)] │
00:06:38 #8289 [verbose] > │ pub struct Mut0 { │
00:06:38 #8290 [verbose] > │ pub l0: MutCell<i32>, │
00:06:38 #8291 [verbose] > │ pub l1: MutCell<string>, │
00:06:38 #8292 [verbose] > │ } │
00:06:38 #8293 [verbose] > │ impl core::fmt::Display for Spiral_eval::Mut0 { │
00:06:38 #8294 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:06:38 #8295 [verbose] > │ { │
00:06:38 #8296 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:06:38 #8297 [verbose] > │ } │
00:06:38 #8298 [verbose] > │ } │
00:06:38 #8299 [verbose] > │ pub fn method1(v0: i32, v1: LrcPtr<Spiral_eval::Mut0>) -> bool { │
00:06:38 #8300 [verbose] > │ v1.l0.get().clone() < v0 │
00:06:38 #8301 [verbose] > │ } │
00:06:38 #8302 [verbose] > │ pub fn method2(v0: bool) -> bool { v0 } │
00:06:38 #8303 [verbose] > │ pub fn method0() { │
00:06:38 #8304 [verbose] > │ let v3: Array<string> = │
00:06:38 #8305 [verbose] > │ new_array(&[string("1"), string("2"), string("3")]); │
00:06:38 #8306 [verbose] > │ let v4: i32 = count(v3.clone()); │
00:06:38 #8307 [verbose] > │ let v6: LrcPtr<Spiral_eval::Mut0> = │
00:06:38 #8308 [verbose] > │ LrcPtr::new(Spiral_eval::Mut0{l0: MutCell::new(0_i32), │
00:06:38 #8309 [verbose] > │ l1: │
00:06:38 #8310 [verbose] > │ MutCell::new(string("")),}); │
00:06:38 #8311 [verbose] > │ while Spiral_eval::method1(v4, v6.clone()) { │
00:06:38 #8312 [verbose] > │ let v8: i32 = v6.l0.get().clone(); │
00:06:38 #8313 [verbose] > │ let v12: string = │
00:06:38 #8314 [verbose] > │ append(append(append(v6.l1.get().clone(), v3[ │
00:06:38 #8315 [verbose] > │ v8].clone()), │
00:06:38 #8316 [verbose] > │ string("\n")), string("")); │
00:06:38 #8317 [verbose] > │ let v13: i32 = v8 + 1_i32; │
00:06:38 #8318 [verbose] > │ v6.l0.set(v13); │
00:06:38 #8319 [verbose] > │ v6.l1.set(v12); │
00:06:38 #8320 [verbose] > │ () │
00:06:38 #8321 [verbose] > │ } │
00:06:38 #8322 [verbose] > │ { │
00:06:38 #8323 [verbose] > │ let v14: string = v6.l1.get().clone(); │
00:06:38 #8324 [verbose] > │ let v15: string = sprintf!("{:?}", v14.clone()); │
00:06:38 #8325 [verbose] > │ printfn!("{0}", v15); │
00:06:38 #8326 [verbose] > │ { │
00:06:38 #8327 [verbose] > │ let v17: bool = v14.clone() == string("1\n2\n3\n"); │
00:06:38 #8328 [verbose] > │ if (if v17 { true } else { Spiral_eval::method2(v17) }) │
00:06:38 #8329 [verbose] > │ == │
00:06:38 #8330 [verbose] > │ false { │
00:06:38 #8331 [verbose] > │ panic!("{}", │
00:06:38 #8332 [verbose] > │ sprintf!("__expect / actual: {:?} / expected: │
00:06:38 #8333 [verbose] > │ {:?}", v14, string("1\n2\n3\n"))); │
00:06:38 #8334 [verbose] > │ } │
00:06:38 #8335 [verbose] > │ } │
00:06:38 #8336 [verbose] > │ } │
00:06:38 #8337 [verbose] > │ } │
00:06:38 #8338 [verbose] > │ on_startup!(Spiral_eval::method0()); │
00:06:38 #8339 [verbose] > │ } │
00:06:38 #8340 [verbose] > │ } │
00:06:38 #8341 [verbose] > │ pub use module_ccfa04bf::*; │
00:06:38 #8342 [verbose] > │ │
00:06:38 #8343 [verbose] > │ │
00:06:38 #8344 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:38 #8345 [verbose] >
00:06:38 #8346 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:38 #8347 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:38 #8348 [verbose] > │ ## concat_list_trailing │
00:06:38 #8349 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:38 #8350 [verbose] >
00:06:38 #8351 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:38 #8352 [verbose] > inl concat_list_trailing separator input =
00:06:38 #8353 [verbose] > ("", input)
00:06:38 #8354 [verbose] > ||> listm.fold fun acc (x : string) =>
00:06:38 #8355 [verbose] > $'!acc + !x + !separator + ""'
00:06:38 #8356 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\83d15e91cf09fa3541c4d214d5940d2c546408f23b168e6560f817400d175814\main.spi
00:06:39 #8357 [verbose] >
00:06:39 #8358 [verbose] > ╭─[ 328.92ms - stdout ]────────────────────────────────────────────────────────╮
00:06:39 #8359 [verbose] > │ () │
00:06:39 #8360 [verbose] > │ │
00:06:39 #8361 [verbose] > │ │
00:06:39 #8362 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:39 #8363 [verbose] >
00:06:39 #8364 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:39 #8365 [verbose] > // // test
00:06:39 #8366 [verbose] > // // rust=
00:06:39 #8367 [verbose] >
00:06:39 #8368 [verbose] > [[
00:06:39 #8369 [verbose] > "1"
00:06:39 #8370 [verbose] > "2"
00:06:39 #8371 [verbose] > "3"
00:06:39 #8372 [verbose] > ]]
00:06:39 #8373 [verbose] > |> fun x =>
00:06:39 #8374 [verbose] > inl code = (x : _) |> concat_list_trailing "\n"
00:06:39 #8375 [verbose] > code
00:06:39 #8376 [verbose] > |> _assert_eq "1\n2\n3\n"
00:06:39 #8377 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d7e7c6df51bea7a01200e086afa25e00182836f769ccc93aebb69357309db5db\main.spi
00:06:47 #8378 [verbose] >
00:06:47 #8379 [verbose] > ╭─[ 8.03s - return value ]─────────────────────────────────────────────────────╮
00:06:47 #8380 [verbose] > │ .rs output: │
00:06:47 #8381 [verbose] > │ "1 │
00:06:47 #8382 [verbose] > │ 2 │
00:06:47 #8383 [verbose] > │ 3 │
00:06:47 #8384 [verbose] > │ " │
00:06:47 #8385 [verbose] > │ │
00:06:47 #8386 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:47 #8387 [verbose] >
00:06:47 #8388 [verbose] > ╭─[ 8.04s - stdout ]───────────────────────────────────────────────────────────╮
00:06:47 #8389 [verbose] > │ │
00:06:47 #8390 [verbose] > │ .fsx: │
00:06:47 #8391 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:06:47 #8392 [verbose] > │ v0 │
00:06:47 #8393 [verbose] > │ and method0 () : unit = │
00:06:47 #8394 [verbose] > │ let v0 : string = "" │
00:06:47 #8395 [verbose] > │ let v1 : string = "1" │
00:06:47 #8396 [verbose] > │ let v2 : string = "\n" │
00:06:47 #8397 [verbose] > │ let v3 : string = v0 + v1 + v2 + "" │
00:06:47 #8398 [verbose] > │ let v4 : string = "2" │
00:06:47 #8399 [verbose] > │ let v5 : string = v3 + v4 + v2 + "" │
00:06:47 #8400 [verbose] > │ let v6 : string = "3" │
00:06:47 #8401 [verbose] > │ let v7 : string = v5 + v6 + v2 + "" │
00:06:47 #8402 [verbose] > │ let v8 : string = $"%A{v7}" │
00:06:47 #8403 [verbose] > │ System.Console.WriteLine v8 │
00:06:47 #8404 [verbose] > │ let v10 : bool = v7 = "1\n2\n3\n" │
00:06:47 #8405 [verbose] > │ let v12 : bool = │
00:06:47 #8406 [verbose] > │ if v10 then │
00:06:47 #8407 [verbose] > │ true │
00:06:47 #8408 [verbose] > │ else │
00:06:47 #8409 [verbose] > │ method1(v10) │
00:06:47 #8410 [verbose] > │ let v13 : string = "1\n2\n3\n" │
00:06:47 #8411 [verbose] > │ let v14 : string = $"__expect / actual: %A{v7} / expected: %A{v13}" │
00:06:47 #8412 [verbose] > │ let v15 : bool = v12 = false │
00:06:47 #8413 [verbose] > │ if v15 then │
00:06:47 #8414 [verbose] > │ failwith<unit> v14 │
00:06:47 #8415 [verbose] > │ method0() │
00:06:47 #8416 [verbose] > │ │
00:06:47 #8417 [verbose] > │ │
00:06:47 #8418 [verbose] > │ .rs: │
00:06:47 #8419 [verbose] > │ #![allow(dead_code,)] │
00:06:47 #8420 [verbose] > │ #![allow(non_camel_case_types,)] │
00:06:47 #8421 [verbose] > │ #![allow(non_snake_case,)] │
00:06:47 #8422 [verbose] > │ #![allow(non_upper_case_globals,)] │
00:06:47 #8423 [verbose] > │ #![allow(unreachable_code,)] │
00:06:47 #8424 [verbose] > │ #![allow(unused_attributes,)] │
00:06:47 #8425 [verbose] > │ #![allow(unused_imports,)] │
00:06:47 #8426 [verbose] > │ #![allow(unused_macros,)] │
00:06:47 #8427 [verbose] > │ #![allow(unused_parens,)] │
00:06:47 #8428 [verbose] > │ #![allow(unused_variables,)] │
00:06:47 #8429 [verbose] > │ mod module_ccfa04bf { │
00:06:47 #8430 [verbose] > │ pub mod Spiral_eval { │
00:06:47 #8431 [verbose] > │ use super::*; │
00:06:47 #8432 [verbose] > │ use fable_library_rust::Native_::on_startup; │
00:06:47 #8433 [verbose] > │ use fable_library_rust::String_::printfn; │
00:06:47 #8434 [verbose] > │ use fable_library_rust::String_::sprintf; │
00:06:47 #8435 [verbose] > │ use fable_library_rust::String_::string; │
00:06:47 #8436 [verbose] > │ pub fn method1(v0: bool) -> bool { v0 } │
00:06:47 #8437 [verbose] > │ pub fn method0() { │
00:06:47 #8438 [verbose] > │ let v7: string = string("1\n2\n3\n"); │
00:06:47 #8439 [verbose] > │ let v8: string = sprintf!("{:?}", v7.clone()); │
00:06:47 #8440 [verbose] > │ printfn!("{0}", v8); │
00:06:47 #8441 [verbose] > │ { │
00:06:47 #8442 [verbose] > │ let v10: bool = v7.clone() == string("1\n2\n3\n"); │
00:06:47 #8443 [verbose] > │ if (if v10 { true } else { Spiral_eval::method1(v10) }) == │
00:06:47 #8444 [verbose] > │ false { │
00:06:47 #8445 [verbose] > │ panic!("{}", │
00:06:47 #8446 [verbose] > │ sprintf!("__expect / actual: {:?} / expected: │
00:06:47 #8447 [verbose] > │ {:?}", v7, string("1\n2\n3\n"))); │
00:06:47 #8448 [verbose] > │ } │
00:06:47 #8449 [verbose] > │ } │
00:06:47 #8450 [verbose] > │ } │
00:06:47 #8451 [verbose] > │ on_startup!(Spiral_eval::method0()); │
00:06:47 #8452 [verbose] > │ } │
00:06:47 #8453 [verbose] > │ } │
00:06:47 #8454 [verbose] > │ pub use module_ccfa04bf::*; │
00:06:47 #8455 [verbose] > │ │
00:06:47 #8456 [verbose] > │ │
00:06:47 #8457 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:47 #8458 [verbose] >
00:06:47 #8459 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:47 #8460 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:47 #8461 [verbose] > │ ## concat_list_heap_trailing │
00:06:47 #8462 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:47 #8463 [verbose] >
00:06:47 #8464 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:47 #8465 [verbose] > inl concat_list_heap_trailing separator input =
00:06:47 #8466 [verbose] > inl separator = join separator
00:06:47 #8467 [verbose] > inl separator = separator |> as_str
00:06:47 #8468 [verbose] > ("", input)
00:06:47 #8469 [verbose] > ||> listm.fold fun acc (x : string) =>
00:06:47 #8470 [verbose] > inl acc = acc |> to_std_string
00:06:47 #8471 [verbose] > inl x = x |> as_str
00:06:47 #8472 [verbose] > $'$"{!acc}{!x}{!separator}"'
00:06:47 #8473 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\93a23a8d578a689acab2c4e4fcc367f4f79c49e3c38df32c7b332cd3d8677f96\main.spi
00:06:47 #8474 [verbose] >
00:06:47 #8475 [verbose] > ╭─[ 268.59ms - stdout ]────────────────────────────────────────────────────────╮
00:06:47 #8476 [verbose] > │ () │
00:06:47 #8477 [verbose] > │ │
00:06:47 #8478 [verbose] > │ │
00:06:47 #8479 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:47 #8480 [verbose] >
00:06:47 #8481 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:47 #8482 [verbose] > // // test
00:06:47 #8483 [verbose] > // // rust=
00:06:47 #8484 [verbose] >
00:06:47 #8485 [verbose] > types ()
00:06:47 #8486 [verbose] >
00:06:47 #8487 [verbose] > [[
00:06:47 #8488 [verbose] > "1"
00:06:47 #8489 [verbose] > "2"
00:06:47 #8490 [verbose] > "3"
00:06:47 #8491 [verbose] > ]]
00:06:47 #8492 [verbose] > |> fun x =>
00:06:47 #8493 [verbose] > inl code = (x : _) |> concat_list_heap_trailing "\n"
00:06:47 #8494 [verbose] > code
00:06:47 #8495 [verbose] > |> _assert_eq "1\n2\n3\n"
00:06:47 #8496 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\43b4f092c1e8dfcf404d21963190af24dc841a7f452d6097da2d62ad18808e5c\main.spi
00:06:56 #8497 [verbose] >
00:06:56 #8498 [verbose] > ╭─[ 8.77s - return value ]─────────────────────────────────────────────────────╮
00:06:56 #8499 [verbose] > │ .rs output: │
00:06:56 #8500 [verbose] > │ "1 │
00:06:56 #8501 [verbose] > │ 2 │
00:06:56 #8502 [verbose] > │ 3 │
00:06:56 #8503 [verbose] > │ " │
00:06:56 #8504 [verbose] > │ │
00:06:56 #8505 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:56 #8506 [verbose] >
00:06:56 #8507 [verbose] > ╭─[ 8.78s - stdout ]───────────────────────────────────────────────────────────╮
00:06:56 #8508 [verbose] > │ │
00:06:56 #8509 [verbose] > │ .fsx: │
00:06:56 #8510 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Func0<$0>")>] type Func0<'T> = class │
00:06:56 #8511 [verbose] > │ end │
00:06:56 #8512 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Func1<$0, $1>")>] type Func0<'T, 'U> = │
00:06:56 #8513 [verbose] > │ class end │
00:06:56 #8514 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Box<$0>")>] type Box<'T> = class end │
00:06:56 #8515 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("dyn $0")>] type Dyn<'T> = class end │
00:06:56 #8516 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Fn() -> $0")>] type Fn<'T> = class end │
00:06:56 #8517 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Fn()")>] type FnUnit = class end │
00:06:56 #8518 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("FnOnce() -> $0")>] type FnOnce<'T> = │
00:06:56 #8519 [verbose] > │ class end │
00:06:56 #8520 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Fn($0, $1)")>] type ActionFn2<'T, 'U> = │
00:06:56 #8521 [verbose] > │ class end │
00:06:56 #8522 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("impl $0")>] type Impl<'T> = class end │
00:06:56 #8523 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("mut $0")>] type Mut<'T> = class end │
00:06:56 #8524 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("&$0")>] type Ref<'T> = class end │
00:06:56 #8525 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("&'static $0")>] type StaticRef<'T> = │
00:06:56 #8526 [verbose] > │ class end │
00:06:56 #8527 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("MutCell<$0>")>] type MutCell<'T> = │
00:06:56 #8528 [verbose] > │ class end │
00:06:56 #8529 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::any::Any")>] type std_any_Any = │
00:06:56 #8530 [verbose] > │ class end │
00:06:56 #8531 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::cell::RefCell<$0>")>] type │
00:06:56 #8532 [verbose] > │ std_cell_RefCell<'T> = class end │
00:06:56 #8533 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::pin::Pin<$0>")>] type │
00:06:56 #8534 [verbose] > │ std_pin_Pin<'T> = class end │
00:06:56 #8535 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::rc::Rc<$0>")>] type std_rc_Rc<'T> │
00:06:56 #8536 [verbose] > │ = class end │
00:06:56 #8537 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::rc::Weak<$0>")>] type │
00:06:56 #8538 [verbose] > │ std_rc_Weak<'T> = class end │
00:06:56 #8539 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::sync::Arc<$0>")>] type │
00:06:56 #8540 [verbose] > │ std_sync_Arc<'T> = class end │
00:06:56 #8541 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("str")>] type Str = class end │
00:06:56 #8542 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>] type │
00:06:56 #8543 [verbose] > │ base64_DecodeError = class end │
00:06:56 #8544 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>] type │
00:06:56 #8545 [verbose] > │ borsh_io_Error = class end │
00:06:56 #8546 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>] type │
00:06:56 #8547 [verbose] > │ js_sys_JsString = class end │
00:06:56 #8548 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>] type │
00:06:56 #8549 [verbose] > │ serde_json_Error = class end │
00:06:56 #8550 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>] type │
00:06:56 #8551 [verbose] > │ serde_json_Value = class end │
00:06:56 #8552 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>] type │
00:06:56 #8553 [verbose] > │ serde_wasm_bindgen_Error = class end │
00:06:56 #8554 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>] type std_ffi_OsStr │
00:06:56 #8555 [verbose] > │ = class end │
00:06:56 #8556 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsString")>] type │
00:06:56 #8557 [verbose] > │ std_ffi_OsString = class end │
00:06:56 #8558 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::str::Utf8Error")>] type │
00:06:56 #8559 [verbose] > │ std_str_Utf8Error = class end │
00:06:56 #8560 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::string::String")>] type │
00:06:56 #8561 [verbose] > │ std_string_String = class end │
00:06:56 #8562 [verbose] > │ let rec method1 () : string = │
00:06:56 #8563 [verbose] > │ let v0 : string = "\n" │
00:06:56 #8564 [verbose] > │ v0 │
00:06:56 #8565 [verbose] > │ and method2 () : string = │
00:06:56 #8566 [verbose] > │ let v0 : string = "" │
00:06:56 #8567 [verbose] > │ v0 │
00:06:56 #8568 [verbose] > │ and method3 (v0 : string) : string = │
00:06:56 #8569 [verbose] > │ v0 │
00:06:56 #8570 [verbose] > │ and method4 (v0 : bool) : bool = │
00:06:56 #8571 [verbose] > │ v0 │
00:06:56 #8572 [verbose] > │ and method0 () : unit = │
00:06:56 #8573 [verbose] > │ let v0 : string = method1() │
00:06:56 #8574 [verbose] > │ let v1 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:06:56 #8575 [verbose] > │ let v2 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v0 v1 │
00:06:56 #8576 [verbose] > │ let v3 : string = method2() │
00:06:56 #8577 [verbose] > │ let v4 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:06:56 #8578 [verbose] > │ let v5 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v3 v4 │
00:06:56 #8579 [verbose] > │ let v6 : string = "String::from($0)" │
00:06:56 #8580 [verbose] > │ let v7 : std_string_String = Fable.Core.RustInterop.emitRustExpr v5 v6 │
00:06:56 #8581 [verbose] > │ let v8 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:06:56 #8582 [verbose] > │ let v9 : string = "1" │
00:06:56 #8583 [verbose] > │ let v10 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v9 v8 │
00:06:56 #8584 [verbose] > │ let v11 : string = $"{v7}{v10}{v2}" │
00:06:56 #8585 [verbose] > │ let v12 : string = method3(v11) │
00:06:56 #8586 [verbose] > │ let v13 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:06:56 #8587 [verbose] > │ let v14 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v12 v13 │
00:06:56 #8588 [verbose] > │ let v15 : string = "String::from($0)" │
00:06:56 #8589 [verbose] > │ let v16 : std_string_String = Fable.Core.RustInterop.emitRustExpr v14 │
00:06:56 #8590 [verbose] > │ v15 │
00:06:56 #8591 [verbose] > │ let v17 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:06:56 #8592 [verbose] > │ let v18 : string = "2" │
00:06:56 #8593 [verbose] > │ let v19 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v18 v17 │
00:06:56 #8594 [verbose] > │ let v20 : string = $"{v16}{v19}{v2}" │
00:06:56 #8595 [verbose] > │ let v21 : string = method3(v20) │
00:06:56 #8596 [verbose] > │ let v22 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:06:56 #8597 [verbose] > │ let v23 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v21 v22 │
00:06:56 #8598 [verbose] > │ let v24 : string = "String::from($0)" │
00:06:56 #8599 [verbose] > │ let v25 : std_string_String = Fable.Core.RustInterop.emitRustExpr v23 │
00:06:56 #8600 [verbose] > │ v24 │
00:06:56 #8601 [verbose] > │ let v26 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:06:56 #8602 [verbose] > │ let v27 : string = "3" │
00:06:56 #8603 [verbose] > │ let v28 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v27 v26 │
00:06:56 #8604 [verbose] > │ let v29 : string = $"{v25}{v28}{v2}" │
00:06:56 #8605 [verbose] > │ let v30 : string = $"%A{v29}" │
00:06:56 #8606 [verbose] > │ System.Console.WriteLine v30 │
00:06:56 #8607 [verbose] > │ let v32 : bool = v29 = "1\n2\n3\n" │
00:06:56 #8608 [verbose] > │ let v34 : bool = │
00:06:56 #8609 [verbose] > │ if v32 then │
00:06:56 #8610 [verbose] > │ true │
00:06:56 #8611 [verbose] > │ else │
00:06:56 #8612 [verbose] > │ method4(v32) │
00:06:56 #8613 [verbose] > │ let v35 : string = "1\n2\n3\n" │
00:06:56 #8614 [verbose] > │ let v36 : string = $"__expect / actual: %A{v29} / expected: %A{v35}" │
00:06:56 #8615 [verbose] > │ let v37 : bool = v34 = false │
00:06:56 #8616 [verbose] > │ if v37 then │
00:06:56 #8617 [verbose] > │ failwith<unit> v36 │
00:06:56 #8618 [verbose] > │ method0() │
00:06:56 #8619 [verbose] > │ │
00:06:56 #8620 [verbose] > │ │
00:06:56 #8621 [verbose] > │ .rs: │
00:06:56 #8622 [verbose] > │ #![allow(dead_code,)] │
00:06:56 #8623 [verbose] > │ #![allow(non_camel_case_types,)] │
00:06:56 #8624 [verbose] > │ #![allow(non_snake_case,)] │
00:06:56 #8625 [verbose] > │ #![allow(non_upper_case_globals,)] │
00:06:56 #8626 [verbose] > │ #![allow(unreachable_code,)] │
00:06:56 #8627 [verbose] > │ #![allow(unused_attributes,)] │
00:06:56 #8628 [verbose] > │ #![allow(unused_imports,)] │
00:06:56 #8629 [verbose] > │ #![allow(unused_macros,)] │
00:06:56 #8630 [verbose] > │ #![allow(unused_parens,)] │
00:06:56 #8631 [verbose] > │ #![allow(unused_variables,)] │
00:06:56 #8632 [verbose] > │ mod module_ccfa04bf { │
00:06:56 #8633 [verbose] > │ pub mod Spiral_eval { │
00:06:56 #8634 [verbose] > │ use super::*; │
00:06:56 #8635 [verbose] > │ use fable_library_rust::Native_::on_startup; │
00:06:56 #8636 [verbose] > │ use fable_library_rust::String_::printfn; │
00:06:56 #8637 [verbose] > │ use fable_library_rust::String_::sprintf; │
00:06:56 #8638 [verbose] > │ use fable_library_rust::String_::string; │
00:06:56 #8639 [verbose] > │ pub fn method1() -> string { string("\n") } │
00:06:56 #8640 [verbose] > │ pub fn method2() -> string { string("") } │
00:06:56 #8641 [verbose] > │ pub fn method3(v0: string) -> string { v0 } │
00:06:56 #8642 [verbose] > │ pub fn method4(v0: bool) -> bool { v0 } │
00:06:56 #8643 [verbose] > │ pub fn method0() { │
00:06:56 #8644 [verbose] > │ let v0: string = Spiral_eval::method1(); │
00:06:56 #8645 [verbose] > │ let v2: &str = fable_library_rust::String_::LrcStr::as_str(&v0); │
00:06:56 #8646 [verbose] > │ let v3: string = Spiral_eval::method2(); │
00:06:56 #8647 [verbose] > │ let v5: &str = fable_library_rust::String_::LrcStr::as_str(&v3); │
00:06:56 #8648 [verbose] > │ let v12: string = │
00:06:56 #8649 [verbose] > │ Spiral_eval::method3(sprintf!("{}{}{}", String::from(v5), │
00:06:56 #8650 [verbose] > │ │
00:06:56 #8651 [verbose] > │ fable_library_rust::String_::LrcStr::as_str(&string("1")), │
00:06:56 #8652 [verbose] > │ v2.clone())); │
00:06:56 #8653 [verbose] > │ let v14: &str = │
00:06:56 #8654 [verbose] > │ fable_library_rust::String_::LrcStr::as_str(&v12); │
00:06:56 #8655 [verbose] > │ let v21: string = │
00:06:56 #8656 [verbose] > │ Spiral_eval::method3(sprintf!("{}{}{}", String::from(v14), │
00:06:56 #8657 [verbose] > │ │
00:06:56 #8658 [verbose] > │ fable_library_rust::String_::LrcStr::as_str(&string("2")), │
00:06:56 #8659 [verbose] > │ v2.clone())); │
00:06:56 #8660 [verbose] > │ let v23: &str = │
00:06:56 #8661 [verbose] > │ fable_library_rust::String_::LrcStr::as_str(&v21); │
00:06:56 #8662 [verbose] > │ let v29: string = │
00:06:56 #8663 [verbose] > │ sprintf!("{}{}{}", String::from(v23), │
00:06:56 #8664 [verbose] > │ │
00:06:56 #8665 [verbose] > │ fable_library_rust::String_::LrcStr::as_str(&string("3")), │
00:06:56 #8666 [verbose] > │ v2); │
00:06:56 #8667 [verbose] > │ let v30: string = sprintf!("{:?}", v29.clone()); │
00:06:56 #8668 [verbose] > │ printfn!("{0}", v30); │
00:06:56 #8669 [verbose] > │ { │
00:06:56 #8670 [verbose] > │ let v32: bool = v29.clone() == string("1\n2\n3\n"); │
00:06:56 #8671 [verbose] > │ if (if v32 { true } else { Spiral_eval::method4(v32) }) == │
00:06:56 #8672 [verbose] > │ false { │
00:06:56 #8673 [verbose] > │ panic!("{}", │
00:06:56 #8674 [verbose] > │ sprintf!("__expect / actual: {:?} / expected: │
00:06:56 #8675 [verbose] > │ {:?}", v29, string("1\n2\n3\n"))); │
00:06:56 #8676 [verbose] > │ } │
00:06:56 #8677 [verbose] > │ } │
00:06:56 #8678 [verbose] > │ } │
00:06:56 #8679 [verbose] > │ on_startup!(Spiral_eval::method0()); │
00:06:56 #8680 [verbose] > │ } │
00:06:56 #8681 [verbose] > │ } │
00:06:56 #8682 [verbose] > │ pub use module_ccfa04bf::*; │
00:06:56 #8683 [verbose] > │ │
00:06:56 #8684 [verbose] > │ │
00:06:56 #8685 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:56 #8686 [verbose] >
00:06:56 #8687 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:56 #8688 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:56 #8689 [verbose] > │ ## concat │
00:06:56 #8690 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:56 #8691 [verbose] >
00:06:56 #8692 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:56 #8693 [verbose] > inl concat (a : string) (b : seq.seq' _) : string =
00:06:56 #8694 [verbose] > $"!b |> String.concat !a"
00:06:56 #8695 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\13056513481cd5459ab9c634f3fca222e84a40eba6a68f7ac9561969f1ce9a7b\main.spi
00:06:56 #8696 [verbose] >
00:06:56 #8697 [verbose] > ╭─[ 430.17ms - stdout ]────────────────────────────────────────────────────────╮
00:06:56 #8698 [verbose] > │ () │
00:06:56 #8699 [verbose] > │ │
00:06:56 #8700 [verbose] > │ │
00:06:56 #8701 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:56 #8702 [verbose] >
00:06:56 #8703 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:56 #8704 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:56 #8705 [verbose] > │ ## ellipsis │
00:06:56 #8706 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:56 #8707 [verbose] >
00:06:56 #8708 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:56 #8709 [verbose] > inl ellipsis (max : i32) (s : string) =
00:06:56 #8710 [verbose] > if sm.length s <= max
00:06:56 #8711 [verbose] > then s
00:06:56 #8712 [verbose] > else s |> slice 0 (max - 1) |> fun x => $'!x + "..."'
00:06:57 #8713 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\14ada51507977098a448895dac6c3c11909ba2ab79175dd30d3c7530d71af1eb\main.spi
00:06:57 #8714 [verbose] >
00:06:57 #8715 [verbose] > ╭─[ 451.34ms - stdout ]────────────────────────────────────────────────────────╮
00:06:57 #8716 [verbose] > │ () │
00:06:57 #8717 [verbose] > │ │
00:06:57 #8718 [verbose] > │ │
00:06:57 #8719 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:57 #8720 [verbose] >
00:06:57 #8721 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:57 #8722 [verbose] > // // test
00:06:57 #8723 [verbose] >
00:06:57 #8724 [verbose] > "12345"
00:06:57 #8725 [verbose] > |> ellipsis 2
00:06:57 #8726 [verbose] > |> _assert_eq "12..."
00:06:57 #8727 [verbose] >
00:06:57 #8728 [verbose] > "12345"
00:06:57 #8729 [verbose] > |> ellipsis 4
00:06:57 #8730 [verbose] > |> _assert_eq "1234..."
00:06:57 #8731 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\061e91b21794e9e6b8adb596ca93f7af857fcafd1a161eabb92ef27c733d68a2\main.spi
00:06:58 #8732 [verbose] >
00:06:58 #8733 [verbose] > ╭─[ 772.63ms - stdout ]────────────────────────────────────────────────────────╮
00:06:58 #8734 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:06:58 #8735 [verbose] > │ v0 │
00:06:58 #8736 [verbose] > │ and method0 () : unit = │
00:06:58 #8737 [verbose] > │ let v0 : string = "12" │
00:06:58 #8738 [verbose] > │ let v1 : string = v0 + "..." │
00:06:58 #8739 [verbose] > │ let v2 : string = $"%A{v1}" │
00:06:58 #8740 [verbose] > │ System.Console.WriteLine v2 │
00:06:58 #8741 [verbose] > │ let v4 : bool = v1 = "12..." │
00:06:58 #8742 [verbose] > │ let v6 : bool = │
00:06:58 #8743 [verbose] > │ if v4 then │
00:06:58 #8744 [verbose] > │ true │
00:06:58 #8745 [verbose] > │ else │
00:06:58 #8746 [verbose] > │ method1(v4) │
00:06:58 #8747 [verbose] > │ let v7 : string = "12..." │
00:06:58 #8748 [verbose] > │ let v8 : string = $"__expect / actual: %A{v1} / expected: %A{v7}" │
00:06:58 #8749 [verbose] > │ let v9 : bool = v6 = false │
00:06:58 #8750 [verbose] > │ if v9 then │
00:06:58 #8751 [verbose] > │ failwith<unit> v8 │
00:06:58 #8752 [verbose] > │ let v10 : string = "1234" │
00:06:58 #8753 [verbose] > │ let v11 : string = v10 + "..." │
00:06:58 #8754 [verbose] > │ let v12 : string = $"%A{v11}" │
00:06:58 #8755 [verbose] > │ System.Console.WriteLine v12 │
00:06:58 #8756 [verbose] > │ let v14 : bool = v11 = "1234..." │
00:06:58 #8757 [verbose] > │ let v16 : bool = │
00:06:58 #8758 [verbose] > │ if v14 then │
00:06:58 #8759 [verbose] > │ true │
00:06:58 #8760 [verbose] > │ else │
00:06:58 #8761 [verbose] > │ method1(v14) │
00:06:58 #8762 [verbose] > │ let v17 : string = "1234..." │
00:06:58 #8763 [verbose] > │ let v18 : string = $"__expect / actual: %A{v11} / expected: %A{v17}" │
00:06:58 #8764 [verbose] > │ let v19 : bool = v16 = false │
00:06:58 #8765 [verbose] > │ if v19 then │
00:06:58 #8766 [verbose] > │ failwith<unit> v18 │
00:06:58 #8767 [verbose] > │ method0() │
00:06:58 #8768 [verbose] > │ │
00:06:58 #8769 [verbose] > │ "12..." │
00:06:58 #8770 [verbose] > │ "1234..." │
00:06:58 #8771 [verbose] > │ │
00:06:58 #8772 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:58 #8773 [verbose] >
00:06:58 #8774 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:58 #8775 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:58 #8776 [verbose] > │ ## ellipsis_end │
00:06:58 #8777 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:58 #8778 [verbose] >
00:06:58 #8779 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:58 #8780 [verbose] > inl ellipsis_end (max : i64) (s : string) =
00:06:58 #8781 [verbose] > inl len = sm.length s
00:06:58 #8782 [verbose] > if len <= max
00:06:58 #8783 [verbose] > then s
00:06:58 #8784 [verbose] > else
00:06:58 #8785 [verbose] > inl half = f64 max / 2
00:06:58 #8786 [verbose] > inl start_half = half |> math.ceil |> i64
00:06:58 #8787 [verbose] > inl end_half = half |> math.floor |> i64
00:06:58 #8788 [verbose] > inl start = s |> slice 0 (start_half - 1)
00:06:58 #8789 [verbose] > inl end = s |> slice (len - end_half) (len - 1)
00:06:58 #8790 [verbose] > (a ;[[start; "..."; end]] : _ i32 _)
00:06:58 #8791 [verbose] > |> seq.of_array
00:06:58 #8792 [verbose] > |> concat ""
00:06:58 #8793 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8accfd0f5c0917fd57b90c9e50dd0a2da98021f209c5e460b3d62b4077a9788c\main.spi
00:06:58 #8794 [verbose] >
00:06:58 #8795 [verbose] > ╭─[ 442.32ms - stdout ]────────────────────────────────────────────────────────╮
00:06:58 #8796 [verbose] > │ () │
00:06:58 #8797 [verbose] > │ │
00:06:58 #8798 [verbose] > │ │
00:06:58 #8799 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:58 #8800 [verbose] >
00:06:58 #8801 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:58 #8802 [verbose] > // // test
00:06:58 #8803 [verbose] >
00:06:58 #8804 [verbose] > "12345"
00:06:58 #8805 [verbose] > |> ellipsis_end 2
00:06:58 #8806 [verbose] > |> _assert_eq "1...5"
00:06:58 #8807 [verbose] >
00:06:58 #8808 [verbose] > "12345"
00:06:58 #8809 [verbose] > |> ellipsis_end 3
00:06:58 #8810 [verbose] > |> _assert_eq "12...5"
00:06:58 #8811 [verbose] >
00:06:58 #8812 [verbose] > "1234567"
00:06:58 #8813 [verbose] > |> ellipsis_end 4
00:06:58 #8814 [verbose] > |> _assert_eq "12...67"
00:06:58 #8815 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8214501130e0307a14b4a0287a85dcba1c0d01faa5715fe81df4a018f269dc5f\main.spi
00:06:59 #8816 [verbose] >
00:06:59 #8817 [verbose] > ╭─[ 854.15ms - stdout ]────────────────────────────────────────────────────────╮
00:06:59 #8818 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:06:59 #8819 [verbose] > │ v0 │
00:06:59 #8820 [verbose] > │ and method0 () : unit = │
00:06:59 #8821 [verbose] > │ let v0 : float = float 2L │
00:06:59 #8822 [verbose] > │ let v1 : float = v0 / 2.0 │
00:06:59 #8823 [verbose] > │ let v2 : (float -> float) = ceil │
00:06:59 #8824 [verbose] > │ let v3 : float = v2 v1 │
00:06:59 #8825 [verbose] > │ let v4 : int64 = int64 v3 │
00:06:59 #8826 [verbose] > │ let v5 : (float -> float) = floor │
00:06:59 #8827 [verbose] > │ let v6 : float = v5 v1 │
00:06:59 #8828 [verbose] > │ let v7 : int64 = int64 v6 │
00:06:59 #8829 [verbose] > │ let v8 : int64 = v4 - 1L │
00:06:59 #8830 [verbose] > │ let v9 : string = "12345".[int 0L..int v8] │
00:06:59 #8831 [verbose] > │ let v10 : int64 = 5L - v7 │
00:06:59 #8832 [verbose] > │ let v11 : string = "12345".[int v10..int 4L] │
00:06:59 #8833 [verbose] > │ let v12 : string = "..." │
00:06:59 #8834 [verbose] > │ let v13 : (string []) = [|v9; v12; v11|] │
00:06:59 #8835 [verbose] > │ let v14 : ((string []) -> string seq) = Seq.ofArray │
00:06:59 #8836 [verbose] > │ let v15 : string seq = v14 v13 │
00:06:59 #8837 [verbose] > │ let v16 : string = "" │
00:06:59 #8838 [verbose] > │ let v17 : string = v15 |> String.concat v16 │
00:06:59 #8839 [verbose] > │ let v18 : string = $"%A{v17}" │
00:06:59 #8840 [verbose] > │ System.Console.WriteLine v18 │
00:06:59 #8841 [verbose] > │ let v20 : bool = v17 = "1...5" │
00:06:59 #8842 [verbose] > │ let v22 : bool = │
00:06:59 #8843 [verbose] > │ if v20 then │
00:06:59 #8844 [verbose] > │ true │
00:06:59 #8845 [verbose] > │ else │
00:06:59 #8846 [verbose] > │ method1(v20) │
00:06:59 #8847 [verbose] > │ let v23 : string = "1...5" │
00:06:59 #8848 [verbose] > │ let v24 : string = $"__expect / actual: %A{v17} / expected: %A{v23}" │
00:06:59 #8849 [verbose] > │ let v25 : bool = v22 = false │
00:06:59 #8850 [verbose] > │ if v25 then │
00:06:59 #8851 [verbose] > │ failwith<unit> v24 │
00:06:59 #8852 [verbose] > │ let v26 : float = float 3L │
00:06:59 #8853 [verbose] > │ let v27 : float = v26 / 2.0 │
00:06:59 #8854 [verbose] > │ let v28 : (float -> float) = ceil │
00:06:59 #8855 [verbose] > │ let v29 : float = v28 v27 │
00:06:59 #8856 [verbose] > │ let v30 : int64 = int64 v29 │
00:06:59 #8857 [verbose] > │ let v31 : (float -> float) = floor │
00:06:59 #8858 [verbose] > │ let v32 : float = v31 v27 │
00:06:59 #8859 [verbose] > │ let v33 : int64 = int64 v32 │
00:06:59 #8860 [verbose] > │ let v34 : int64 = v30 - 1L │
00:06:59 #8861 [verbose] > │ let v35 : string = "12345".[int 0L..int v34] │
00:06:59 #8862 [verbose] > │ let v36 : int64 = 5L - v33 │
00:06:59 #8863 [verbose] > │ let v37 : string = "12345".[int v36..int 4L] │
00:06:59 #8864 [verbose] > │ let v38 : (string []) = [|v35; v12; v37|] │
00:06:59 #8865 [verbose] > │ let v39 : ((string []) -> string seq) = Seq.ofArray │
00:06:59 #8866 [verbose] > │ let v40 : string seq = v39 v38 │
00:06:59 #8867 [verbose] > │ let v41 : string = v40 |> String.concat v16 │
00:06:59 #8868 [verbose] > │ let v42 : string = $"%A{v41}" │
00:06:59 #8869 [verbose] > │ System.Console.WriteLine v42 │
00:06:59 #8870 [verbose] > │ let v44 : bool = v41 = "12...5" │
00:06:59 #8871 [verbose] > │ let v46 : bool = │
00:06:59 #8872 [verbose] > │ if v44 then │
00:06:59 #8873 [verbose] > │ true │
00:06:59 #8874 [verbose] > │ else │
00:06:59 #8875 [verbose] > │ method1(v44) │
00:06:59 #8876 [verbose] > │ let v47 : string = "12...5" │
00:06:59 #8877 [verbose] > │ let v48 : string = $"__expect / actual: %A{v41} / expected: %A{v47}" │
00:06:59 #8878 [verbose] > │ let v49 : bool = v46 = false │
00:06:59 #8879 [verbose] > │ if v49 then │
00:06:59 #8880 [verbose] > │ failwith<unit> v48 │
00:06:59 #8881 [verbose] > │ let v50 : float = float 4L │
00:06:59 #8882 [verbose] > │ let v51 : float = v50 / 2.0 │
00:06:59 #8883 [verbose] > │ let v52 : (float -> float) = ceil │
00:06:59 #8884 [verbose] > │ let v53 : float = v52 v51 │
00:06:59 #8885 [verbose] > │ let v54 : int64 = int64 v53 │
00:06:59 #8886 [verbose] > │ let v55 : (float -> float) = floor │
00:06:59 #8887 [verbose] > │ let v56 : float = v55 v51 │
00:06:59 #8888 [verbose] > │ let v57 : int64 = int64 v56 │
00:06:59 #8889 [verbose] > │ let v58 : int64 = v54 - 1L │
00:06:59 #8890 [verbose] > │ let v59 : string = "1234567".[int 0L..int v58] │
00:06:59 #8891 [verbose] > │ let v60 : int64 = 7L - v57 │
00:06:59 #8892 [verbose] > │ let v61 : string = "1234567".[int v60..int 6L] │
00:06:59 #8893 [verbose] > │ let v62 : (string []) = [|v59; v12; v61|] │
00:06:59 #8894 [verbose] > │ let v63 : ((string []) -> string seq) = Seq.ofArray │
00:06:59 #8895 [verbose] > │ let v64 : string seq = v63 v62 │
00:06:59 #8896 [verbose] > │ let v65 : string = v64 |> String.concat v16 │
00:06:59 #8897 [verbose] > │ let v66 : string = $"%A{v65}" │
00:06:59 #8898 [verbose] > │ System.Console.WriteLine v66 │
00:06:59 #8899 [verbose] > │ let v68 : bool = v65 = "12...67" │
00:06:59 #8900 [verbose] > │ let v70 : bool = │
00:06:59 #8901 [verbose] > │ if v68 then │
00:06:59 #8902 [verbose] > │ true │
00:06:59 #8903 [verbose] > │ else │
00:06:59 #8904 [verbose] > │ method1(v68) │
00:06:59 #8905 [verbose] > │ let v71 : string = "12...67" │
00:06:59 #8906 [verbose] > │ let v72 : string = $"__expect / actual: %A{v65} / expected: %A{v71}" │
00:06:59 #8907 [verbose] > │ let v73 : bool = v70 = false │
00:06:59 #8908 [verbose] > │ if v73 then │
00:06:59 #8909 [verbose] > │ failwith<unit> v72 │
00:06:59 #8910 [verbose] > │ method0() │
00:06:59 #8911 [verbose] > │ │
00:06:59 #8912 [verbose] > │ "1...5" │
00:06:59 #8913 [verbose] > │ "12...5" │
00:06:59 #8914 [verbose] > │ "12...67" │
00:06:59 #8915 [verbose] > │ │
00:06:59 #8916 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:59 #8917 [verbose] >
00:06:59 #8918 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:06:59 #8919 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:06:59 #8920 [verbose] > │ ## format_ellipsis │
00:06:59 #8921 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:06:59 #8922 [verbose] >
00:06:59 #8923 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:06:59 #8924 [verbose] > inl format_ellipsis s =
00:06:59 #8925 [verbose] > s
00:06:59 #8926 [verbose] > |> format_debug
00:06:59 #8927 [verbose] > |> ellipsis_end 400
00:06:59 #8928 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\7e7127b97472128cf31fb8e9e0debb22852aab2623078e93410f27aac91e8d6a\main.spi
00:07:00 #8929 [verbose] >
00:07:00 #8930 [verbose] > ╭─[ 482.12ms - stdout ]────────────────────────────────────────────────────────╮
00:07:00 #8931 [verbose] > │ () │
00:07:00 #8932 [verbose] > │ │
00:07:00 #8933 [verbose] > │ │
00:07:00 #8934 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:00 #8935 [verbose] >
00:07:00 #8936 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:00 #8937 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:00 #8938 [verbose] > │ ## split │
00:07:00 #8939 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:00 #8940 [verbose] >
00:07:00 #8941 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:00 #8942 [verbose] > inl split (separator : string) (str : string) : array_base string =
00:07:00 #8943 [verbose] > $"!str.Split !separator"
00:07:00 #8944 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9990d88453e1638f979b1d6e247b244c3e177218ef050c01da5dc0127a6df917\main.spi
00:07:00 #8945 [verbose] >
00:07:00 #8946 [verbose] > ╭─[ 470.80ms - stdout ]────────────────────────────────────────────────────────╮
00:07:00 #8947 [verbose] > │ () │
00:07:00 #8948 [verbose] > │ │
00:07:00 #8949 [verbose] > │ │
00:07:00 #8950 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:00 #8951 [verbose] >
00:07:00 #8952 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:00 #8953 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:00 #8954 [verbose] > │ ## split_string │
00:07:00 #8955 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:00 #8956 [verbose] >
00:07:00 #8957 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:00 #8958 [verbose] > inl split_string (separator : array_base string) (str : string) : array_base
00:07:00 #8959 [verbose] > string =
00:07:00 #8960 [verbose] > run_target function
00:07:00 #8961 [verbose] > | Fsharp (Native) => fun () => $"!str.Split (!separator,
00:07:00 #8962 [verbose] > System.StringSplitOptions.None)"
00:07:00 #8963 [verbose] > | _ => fun () => str |> split ((a separator : _ i32 _) |> seq.of_array
00:07:00 #8964 [verbose] > |> concat (join ""))
00:07:00 #8965 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\79670e1fa72247bcf2dcaa5726490d51e9de81d98798922961cbfcbfcdf63f1b\main.spi
00:07:01 #8966 [verbose] >
00:07:01 #8967 [verbose] > ╭─[ 465.59ms - stdout ]────────────────────────────────────────────────────────╮
00:07:01 #8968 [verbose] > │ () │
00:07:01 #8969 [verbose] > │ │
00:07:01 #8970 [verbose] > │ │
00:07:01 #8971 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:01 #8972 [verbose] >
00:07:01 #8973 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:01 #8974 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:01 #8975 [verbose] > │ ## join' │
00:07:01 #8976 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:01 #8977 [verbose] >
00:07:01 #8978 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:01 #8979 [verbose] > inl join' (concat : string) (s : a i32 string) : string =
00:07:01 #8980 [verbose] > $"System.String.Join (!concat, !s)"
00:07:01 #8981 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\98fd00609ed3027e973c5047639139238b9c1303df3a760aa9a3c0e0adf4c561\main.spi
00:07:01 #8982 [verbose] >
00:07:01 #8983 [verbose] > ╭─[ 654.65ms - stdout ]────────────────────────────────────────────────────────╮
00:07:01 #8984 [verbose] > │ () │
00:07:01 #8985 [verbose] > │ │
00:07:01 #8986 [verbose] > │ │
00:07:01 #8987 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:01 #8988 [verbose] >
00:07:01 #8989 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:01 #8990 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:01 #8991 [verbose] > │ ## to_char_array │
00:07:01 #8992 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:01 #8993 [verbose] >
00:07:01 #8994 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:01 #8995 [verbose] > inl to_char_array (str : string) : a i32 char =
00:07:01 #8996 [verbose] > am.init (str |> sm.length) (fun i => sm.index str i)
00:07:01 #8997 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ece054a73c9c8a9d9630b411aa97120f1a73ca7eaad195412ce31ea54eb659fc\main.spi
00:07:02 #8998 [verbose] >
00:07:02 #8999 [verbose] > ╭─[ 472.00ms - stdout ]────────────────────────────────────────────────────────╮
00:07:02 #9000 [verbose] > │ () │
00:07:02 #9001 [verbose] > │ │
00:07:02 #9002 [verbose] > │ │
00:07:02 #9003 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:02 #9004 [verbose] >
00:07:02 #9005 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:02 #9006 [verbose] > // // test
00:07:02 #9007 [verbose] >
00:07:02 #9008 [verbose] > "abc"
00:07:02 #9009 [verbose] > |> to_char_array
00:07:02 #9010 [verbose] > |> _assert_eq (a ;[['a'; 'b'; 'c']])
00:07:02 #9011 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3453ac365ebd92214fde3ef7a813bb9a4ddc2902cc7855b7efbc9f32adfab97b\main.spi
00:07:02 #9012 [verbose] >
00:07:02 #9013 [verbose] > ╭─[ 589.09ms - stdout ]────────────────────────────────────────────────────────╮
00:07:02 #9014 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:07:02 #9015 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:07:02 #9016 [verbose] > │ let v1 : int32 = v0.l0 │
00:07:02 #9017 [verbose] > │ let v2 : bool = v1 < 3 │
00:07:02 #9018 [verbose] > │ v2 │
00:07:02 #9019 [verbose] > │ and method2 (v0 : (char []), v1 : (char []), v2 : int32) : bool = │
00:07:02 #9020 [verbose] > │ let v3 : int32 = v0.Length │
00:07:02 #9021 [verbose] > │ let v4 : bool = v2 < v3 │
00:07:02 #9022 [verbose] > │ if v4 then │
00:07:02 #9023 [verbose] > │ let v5 : char = v0.[int v2] │
00:07:02 #9024 [verbose] > │ let v6 : char = v1.[int v2] │
00:07:02 #9025 [verbose] > │ let v7 : bool = v5 = v6 │
00:07:02 #9026 [verbose] > │ if v7 then │
00:07:02 #9027 [verbose] > │ let v8 : int32 = v2 + 1 │
00:07:02 #9028 [verbose] > │ method2(v0, v1, v8) │
00:07:02 #9029 [verbose] > │ else │
00:07:02 #9030 [verbose] > │ false │
00:07:02 #9031 [verbose] > │ else │
00:07:02 #9032 [verbose] > │ true │
00:07:02 #9033 [verbose] > │ and method3 (v0 : bool) : bool = │
00:07:02 #9034 [verbose] > │ v0 │
00:07:02 #9035 [verbose] > │ and method0 () : unit = │
00:07:02 #9036 [verbose] > │ let v0 : (char []) = Array.zeroCreate<char> (3) │
00:07:02 #9037 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:07:02 #9038 [verbose] > │ while method1(v1) do │
00:07:02 #9039 [verbose] > │ let v3 : int32 = v1.l0 │
00:07:02 #9040 [verbose] > │ let v4 : char = "abc".[int v3] │
00:07:02 #9041 [verbose] > │ v0.[int v3] <- v4 │
00:07:02 #9042 [verbose] > │ let v5 : int32 = v3 + 1 │
00:07:02 #9043 [verbose] > │ v1.l0 <- v5 │
00:07:02 #9044 [verbose] > │ () │
00:07:02 #9045 [verbose] > │ let v6 : (char []) = [|'a'; 'b'; 'c'|] │
00:07:02 #9046 [verbose] > │ let v7 : string = $"%A{v0}" │
00:07:02 #9047 [verbose] > │ System.Console.WriteLine v7 │
00:07:02 #9048 [verbose] > │ let v8 : int32 = v0.Length │
00:07:02 #9049 [verbose] > │ let v9 : int32 = v6.Length │
00:07:02 #9050 [verbose] > │ let v10 : bool = v8 = v9 │
00:07:02 #9051 [verbose] > │ let v11 : bool = v10 <> true │
00:07:02 #9052 [verbose] > │ let v14 : bool = │
00:07:02 #9053 [verbose] > │ if v11 then │
00:07:02 #9054 [verbose] > │ false │
00:07:02 #9055 [verbose] > │ else │
00:07:02 #9056 [verbose] > │ let v12 : int32 = 0 │
00:07:02 #9057 [verbose] > │ method2(v0, v6, v12) │
00:07:02 #9058 [verbose] > │ let v16 : bool = │
00:07:02 #9059 [verbose] > │ if v14 then │
00:07:02 #9060 [verbose] > │ true │
00:07:02 #9061 [verbose] > │ else │
00:07:02 #9062 [verbose] > │ method3(v14) │
00:07:02 #9063 [verbose] > │ let v17 : string = $"__expect / actual: %A{v0} / expected: %A{v6}" │
00:07:02 #9064 [verbose] > │ let v18 : bool = v16 = false │
00:07:02 #9065 [verbose] > │ if v18 then │
00:07:02 #9066 [verbose] > │ failwith<unit> v17 │
00:07:02 #9067 [verbose] > │ method0() │
00:07:02 #9068 [verbose] > │ │
00:07:02 #9069 [verbose] > │ [|'a'; 'b'; 'c'|] │
00:07:02 #9070 [verbose] > │ │
00:07:02 #9071 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:02 #9072 [verbose] >
00:07:02 #9073 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:02 #9074 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:02 #9075 [verbose] > │ ## to_char_list │
00:07:02 #9076 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:02 #9077 [verbose] >
00:07:02 #9078 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:02 #9079 [verbose] > inl to_char_list (str : string) : list char =
00:07:02 #9080 [verbose] > listm.init (str |> sm.length) (fun (i : i64) => sm.index str i)
00:07:02 #9081 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3f3e71c66449eb7dce939e249266a855b0a9425ad8dd9455af1a7725b74d134d\main.spi
00:07:03 #9082 [verbose] >
00:07:03 #9083 [verbose] > ╭─[ 319.27ms - stdout ]────────────────────────────────────────────────────────╮
00:07:03 #9084 [verbose] > │ () │
00:07:03 #9085 [verbose] > │ │
00:07:03 #9086 [verbose] > │ │
00:07:03 #9087 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:03 #9088 [verbose] >
00:07:03 #9089 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:03 #9090 [verbose] > // // test
00:07:03 #9091 [verbose] >
00:07:03 #9092 [verbose] > "abc"
00:07:03 #9093 [verbose] > |> to_char_list
00:07:03 #9094 [verbose] > |> _assert_eq [['a'; 'b'; 'c']]
00:07:03 #9095 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b19ae48f1acd136bb8a61461920b6a5669d2eb0216570cee1c5a8966eecbedb2\main.spi
00:07:03 #9096 [verbose] >
00:07:03 #9097 [verbose] > ╭─[ 360.01ms - stdout ]────────────────────────────────────────────────────────╮
00:07:03 #9098 [verbose] > │ type UH0 = │
00:07:03 #9099 [verbose] > │ | UH0_0 │
00:07:03 #9100 [verbose] > │ | UH0_1 of char * UH0 │
00:07:03 #9101 [verbose] > │ let rec method0 () : unit = │
00:07:03 #9102 [verbose] > │ let v0 : UH0 = UH0_0 │
00:07:03 #9103 [verbose] > │ let v1 : UH0 = UH0_1('c', v0) │
00:07:03 #9104 [verbose] > │ let v2 : UH0 = UH0_1('b', v1) │
00:07:03 #9105 [verbose] > │ let v3 : UH0 = UH0_1('a', v2) │
00:07:03 #9106 [verbose] > │ let v4 : string = $"%A{v3}" │
00:07:03 #9107 [verbose] > │ System.Console.WriteLine v4 │
00:07:03 #9108 [verbose] > │ let v23 : UH0 = UH0_0 │
00:07:03 #9109 [verbose] > │ let v24 : UH0 = UH0_1('c', v23) │
00:07:03 #9110 [verbose] > │ let v25 : UH0 = UH0_1('b', v24) │
00:07:03 #9111 [verbose] > │ let v26 : UH0 = UH0_1('a', v25) │
00:07:03 #9112 [verbose] > │ let v27 : UH0 = UH0_0 │
00:07:03 #9113 [verbose] > │ let v28 : UH0 = UH0_1('c', v27) │
00:07:03 #9114 [verbose] > │ let v29 : UH0 = UH0_1('b', v28) │
00:07:03 #9115 [verbose] > │ let v30 : UH0 = UH0_1('a', v29) │
00:07:03 #9116 [verbose] > │ let v31 : string = $"__expect / actual: %A{v26} / expected: %A{v30}" │
00:07:03 #9117 [verbose] > │ () │
00:07:03 #9118 [verbose] > │ method0() │
00:07:03 #9119 [verbose] > │ │
00:07:03 #9120 [verbose] > │ UH0_1 ('a', UH0_1 ('b', UH0_1 ('c', UH0_0))) │
00:07:03 #9121 [verbose] > │ │
00:07:03 #9122 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:03 #9123 [verbose] >
00:07:03 #9124 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:03 #9125 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:03 #9126 [verbose] > │ ## to_string std_string │
00:07:03 #9127 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:03 #9128 [verbose] >
00:07:03 #9129 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:03 #9130 [verbose] > open rust
00:07:03 #9131 [verbose] > instance to_string std_string = from_std_string
00:07:03 #9132 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a9ec16ab1992b6ad548373490dbbb8d949be602050f530e914b866148a1cefe7\main.spi
00:07:03 #9133 [verbose] >
00:07:03 #9134 [verbose] > ╭─[ 224.75ms - stdout ]────────────────────────────────────────────────────────╮
00:07:03 #9135 [verbose] > │ () │
00:07:03 #9136 [verbose] > │ │
00:07:03 #9137 [verbose] > │ │
00:07:03 #9138 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:03 #9139 [verbose] >
00:07:03 #9140 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:03 #9141 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:03 #9142 [verbose] > │ ## main │
00:07:03 #9143 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:03 #9144 [verbose] >
00:07:03 #9145 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:03 #9146 [verbose] > inl main () =
00:07:03 #9147 [verbose] > $"let contains x = !contains x" : ()
00:07:03 #9148 [verbose] > $"let ends_with x = !ends_with x" : ()
00:07:03 #9149 [verbose] > $"let pad_left x = !pad_left x" : ()
00:07:03 #9150 [verbose] > $"let pad_right x = !pad_right x" : ()
00:07:03 #9151 [verbose] > $"let replace x = !replace x" : ()
00:07:03 #9152 [verbose] > inl slice (a : i32) (b : i32) c = slice a b c
00:07:03 #9153 [verbose] > $"let slice x = !slice x" : ()
00:07:03 #9154 [verbose] > $"let split x = !split x" : ()
00:07:03 #9155 [verbose] > $"let split_string x = !split_string x" : ()
00:07:03 #9156 [verbose] > $"let starts_with x = !starts_with x" : ()
00:07:03 #9157 [verbose] > $"let substring x = !substring x" : ()
00:07:03 #9158 [verbose] > $"let to_lower x = !to_lower x" : ()
00:07:03 #9159 [verbose] > $"let to_upper x = !to_upper x" : ()
00:07:03 #9160 [verbose] > $"let trim x = !trim x" : ()
00:07:03 #9161 [verbose] > $"let trim_end x = !trim_end x" : ()
00:07:03 #9162 [verbose] > $"let trim_start x = !trim_start x" : ()
00:07:03 #9163 [verbose] > $"let ellipsis x = !ellipsis x" : ()
00:07:03 #9164 [verbose] > $"let ellipsis_end x = !ellipsis_end x" : ()
00:07:03 #9165 [verbose] > $"let format_exception x = !format_exception x" : ()
00:07:03 #9166 [verbose] > $"let concat_array_trailing x = !concat_array_trailing x" : ()
00:07:03 #9167 [verbose] > inl concat a (b : seq.seq' string) = concat a b
00:07:03 #9168 [verbose] > $"let concat x = !concat x" : ()
00:07:03 #9169 [verbose] > $"let join' x = !join' x" : ()
00:07:03 #9170 [verbose] > $"let to_char_array x = !to_char_array x" : ()
00:07:03 #9171 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d88c69485c36679dcf8b4f99e4ad6f62719551bd2719ceca62cad338bea2fd76\main.spi
00:07:04 #9172 [verbose] >
00:07:04 #9173 [verbose] > ╭─[ 696.10ms - stdout ]────────────────────────────────────────────────────────╮
00:07:04 #9174 [verbose] > │ type Mut0 = {mutable l0 : int32; mutable l1 : string} │
00:07:04 #9175 [verbose] > │ and Mut1 = {mutable l0 : int32} │
00:07:04 #9176 [verbose] > │ let rec closure1 (v0 : string) (v1 : string) : bool = │
00:07:04 #9177 [verbose] > │ let v2 : bool = v1.Contains v0 │
00:07:04 #9178 [verbose] > │ v2 │
00:07:04 #9179 [verbose] > │ and closure0 () (v0 : string) : (string -> bool) = │
00:07:04 #9180 [verbose] > │ closure1(v0) │
00:07:04 #9181 [verbose] > │ and closure3 (v0 : string) (v1 : string) : bool = │
00:07:04 #9182 [verbose] > │ let v2 : bool = v1.EndsWith v0 │
00:07:04 #9183 [verbose] > │ v2 │
00:07:04 #9184 [verbose] > │ and closure2 () (v0 : string) : (string -> bool) = │
00:07:04 #9185 [verbose] > │ closure3(v0) │
00:07:04 #9186 [verbose] > │ and closure6 (v0 : int32, v1 : char) (v2 : string) : string = │
00:07:04 #9187 [verbose] > │ let v3 : string = v2.PadLeft (v0, v1) │
00:07:04 #9188 [verbose] > │ v3 │
00:07:04 #9189 [verbose] > │ and closure5 (v0 : int32) (v1 : char) : (string -> string) = │
00:07:04 #9190 [verbose] > │ closure6(v0, v1) │
00:07:04 #9191 [verbose] > │ and closure4 () (v0 : int32) : (char -> (string -> string)) = │
00:07:04 #9192 [verbose] > │ closure5(v0) │
00:07:04 #9193 [verbose] > │ and closure8 (v0 : int32) (v1 : string) : string = │
00:07:04 #9194 [verbose] > │ let v2 : string = v1.PadRight v0 │
00:07:04 #9195 [verbose] > │ v2 │
00:07:04 #9196 [verbose] > │ and closure7 () (v0 : int32) : (string -> string) = │
00:07:04 #9197 [verbose] > │ closure8(v0) │
00:07:04 #9198 [verbose] > │ and closure11 (v0 : string, v1 : string) (v2 : string) : string = │
00:07:04 #9199 [verbose] > │ let v3 : string = v2.Replace (v0, v1) │
00:07:04 #9200 [verbose] > │ v3 │
00:07:04 #9201 [verbose] > │ and closure10 (v0 : string) (v1 : string) : (string -> string) = │
00:07:04 #9202 [verbose] > │ closure11(v0, v1) │
00:07:04 #9203 [verbose] > │ and closure9 () (v0 : string) : (string -> (string -> string)) = │
00:07:04 #9204 [verbose] > │ closure10(v0) │
00:07:04 #9205 [verbose] > │ and closure14 (v0 : int32, v1 : int32) (v2 : string) : string = │
00:07:04 #9206 [verbose] > │ let v3 : string = v2.[int v0..int v1] │
00:07:04 #9207 [verbose] > │ v3 │
00:07:04 #9208 [verbose] > │ and closure13 (v0 : int32) (v1 : int32) : (string -> string) = │
00:07:04 #9209 [verbose] > │ closure14(v0, v1) │
00:07:04 #9210 [verbose] > │ and closure12 () (v0 : int32) : (int32 -> (string -> string)) = │
00:07:04 #9211 [verbose] > │ closure13(v0) │
00:07:04 #9212 [verbose] > │ and closure16 (v0 : string) (v1 : string) : (string []) = │
00:07:04 #9213 [verbose] > │ let v2 : (string []) = v1.Split v0 │
00:07:04 #9214 [verbose] > │ v2 │
00:07:04 #9215 [verbose] > │ and closure15 () (v0 : string) : (string -> (string [])) = │
00:07:04 #9216 [verbose] > │ closure16(v0) │
00:07:04 #9217 [verbose] > │ and method0 () : string = │
00:07:04 #9218 [verbose] > │ let v0 : string = "" │
00:07:04 #9219 [verbose] > │ v0 │
00:07:04 #9220 [verbose] > │ and closure18 (v0 : (string [])) (v1 : string) : (string []) = │
00:07:04 #9221 [verbose] > │ let v2 : (string []) option = None │
00:07:04 #9222 [verbose] > │ let mutable _v2 = v2 │
00:07:04 #9223 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:07:04 #9224 [verbose] > │ let v3 : ((string []) -> string seq) = Seq.ofArray │
00:07:04 #9225 [verbose] > │ let v4 : string seq = v3 v0 │
00:07:04 #9226 [verbose] > │ let v5 : string = method0() │
00:07:04 #9227 [verbose] > │ let v6 : string = v4 |> String.concat v5 │
00:07:04 #9228 [verbose] > │ let v7 : (string []) = v1.Split v6 │
00:07:04 #9229 [verbose] > │ v7 │
00:07:04 #9230 [verbose] > │ #endif │
00:07:04 #9231 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:07:04 #9232 [verbose] > │ let v8 : ((string []) -> string seq) = Seq.ofArray │
00:07:04 #9233 [verbose] > │ let v9 : string seq = v8 v0 │
00:07:04 #9234 [verbose] > │ let v10 : string = method0() │
00:07:04 #9235 [verbose] > │ let v11 : string = v9 |> String.concat v10 │
00:07:04 #9236 [verbose] > │ let v12 : (string []) = v1.Split v11 │
00:07:04 #9237 [verbose] > │ v12 │
00:07:04 #9238 [verbose] > │ #endif │
00:07:04 #9239 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:07:04 #9240 [verbose] > │ let v13 : ((string []) -> string seq) = Seq.ofArray │
00:07:04 #9241 [verbose] > │ let v14 : string seq = v13 v0 │
00:07:04 #9242 [verbose] > │ let v15 : string = method0() │
00:07:04 #9243 [verbose] > │ let v16 : string = v14 |> String.concat v15 │
00:07:04 #9244 [verbose] > │ let v17 : (string []) = v1.Split v16 │
00:07:04 #9245 [verbose] > │ v17 │
00:07:04 #9246 [verbose] > │ #endif │
00:07:04 #9247 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:07:04 #9248 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:07:04 #9249 [verbose] > │ let v18 : (string []) = v1.Split (v0, System.StringSplitOptions.None) │
00:07:04 #9250 [verbose] > │ v18 │
00:07:04 #9251 [verbose] > │ #endif │
00:07:04 #9252 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:07:04 #9253 [verbose] > │ let v19 : ((string []) -> string seq) = Seq.ofArray │
00:07:04 #9254 [verbose] > │ let v20 : string seq = v19 v0 │
00:07:04 #9255 [verbose] > │ let v21 : string = method0() │
00:07:04 #9256 [verbose] > │ let v22 : string = v20 |> String.concat v21 │
00:07:04 #9257 [verbose] > │ let v23 : (string []) = v1.Split v22 │
00:07:04 #9258 [verbose] > │ v23 │
00:07:04 #9259 [verbose] > │ #endif │
00:07:04 #9260 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:07:04 #9261 [verbose] > │ Unchecked.defaultof<(string [])> │
00:07:04 #9262 [verbose] > │ #endif │
00:07:04 #9263 [verbose] > │ |> fun x -> _v2 <- Some x │
00:07:04 #9264 [verbose] > │ let v24 : (string []) = _v2.Value │
00:07:04 #9265 [verbose] > │ v24 │
00:07:04 #9266 [verbose] > │ and closure17 () (v0 : (string [])) : (string -> (string [])) = │
00:07:04 #9267 [verbose] > │ closure18(v0) │
00:07:04 #9268 [verbose] > │ and closure20 (v0 : string) (v1 : string) : bool = │
00:07:04 #9269 [verbose] > │ let v2 : bool = v1.StartsWith v0 │
00:07:04 #9270 [verbose] > │ v2 │
00:07:04 #9271 [verbose] > │ and closure19 () (v0 : string) : (string -> bool) = │
00:07:04 #9272 [verbose] > │ closure20(v0) │
00:07:04 #9273 [verbose] > │ and closure23 (v0 : int32, v1 : int32) (v2 : string) : string = │
00:07:04 #9274 [verbose] > │ let v3 : string = v2.Substring (v0, v1) │
00:07:04 #9275 [verbose] > │ v3 │
00:07:04 #9276 [verbose] > │ and closure22 (v0 : int32) (v1 : int32) : (string -> string) = │
00:07:04 #9277 [verbose] > │ closure23(v0, v1) │
00:07:04 #9278 [verbose] > │ and closure21 () (v0 : int32) : (int32 -> (string -> string)) = │
00:07:04 #9279 [verbose] > │ closure22(v0) │
00:07:04 #9280 [verbose] > │ and closure24 () (v0 : string) : string = │
00:07:04 #9281 [verbose] > │ let v1 : string = v0.ToLower () │
00:07:04 #9282 [verbose] > │ v1 │
00:07:04 #9283 [verbose] > │ and closure25 () (v0 : string) : string = │
00:07:04 #9284 [verbose] > │ let v1 : string = v0.ToUpper () │
00:07:04 #9285 [verbose] > │ v1 │
00:07:04 #9286 [verbose] > │ and closure26 () (v0 : string) : string = │
00:07:04 #9287 [verbose] > │ let v1 : string = v0.Trim () │
00:07:04 #9288 [verbose] > │ v1 │
00:07:04 #9289 [verbose] > │ and closure28 (v0 : (char [])) (v1 : string) : string = │
00:07:04 #9290 [verbose] > │ let v2 : string = v1.TrimEnd v0 │
00:07:04 #9291 [verbose] > │ v2 │
00:07:04 #9292 [verbose] > │ and closure27 () (v0 : (char [])) : (string -> string) = │
00:07:04 #9293 [verbose] > │ closure28(v0) │
00:07:04 #9294 [verbose] > │ and closure30 (v0 : (char [])) (v1 : string) : string = │
00:07:04 #9295 [verbose] > │ let v2 : string = v1.TrimStart v0 │
00:07:04 #9296 [verbose] > │ v2 │
00:07:04 #9297 [verbose] > │ and closure29 () (v0 : (char [])) : (string -> string) = │
00:07:04 #9298 [verbose] > │ closure30(v0) │
00:07:04 #9299 [verbose] > │ and closure32 (v0 : int32) (v1 : string) : string = │
00:07:04 #9300 [verbose] > │ let v2 : int32 = v1.Length │
00:07:04 #9301 [verbose] > │ let v3 : bool = v2 <= v0 │
00:07:04 #9302 [verbose] > │ if v3 then │
00:07:04 #9303 [verbose] > │ v1 │
00:07:04 #9304 [verbose] > │ else │
00:07:04 #9305 [verbose] > │ let v4 : int32 = v0 - 1 │
00:07:04 #9306 [verbose] > │ let v5 : string = v1.[int 0..int v4] │
00:07:04 #9307 [verbose] > │ let v6 : string = v5 + "..." │
00:07:04 #9308 [verbose] > │ v6 │
00:07:04 #9309 [verbose] > │ and closure31 () (v0 : int32) : (string -> string) = │
00:07:04 #9310 [verbose] > │ closure32(v0) │
00:07:04 #9311 [verbose] > │ and closure34 (v0 : int64) (v1 : string) : string = │
00:07:04 #9312 [verbose] > │ let v2 : int64 = System.Convert.ToInt64 v1.Length │
00:07:04 #9313 [verbose] > │ let v3 : bool = v2 <= v0 │
00:07:04 #9314 [verbose] > │ if v3 then │
00:07:04 #9315 [verbose] > │ v1 │
00:07:04 #9316 [verbose] > │ else │
00:07:04 #9317 [verbose] > │ let v4 : float = float v0 │
00:07:04 #9318 [verbose] > │ let v5 : float = v4 / 2.0 │
00:07:04 #9319 [verbose] > │ let v6 : (float -> float) = ceil │
00:07:04 #9320 [verbose] > │ let v7 : float = v6 v5 │
00:07:04 #9321 [verbose] > │ let v8 : int64 = int64 v7 │
00:07:04 #9322 [verbose] > │ let v9 : (float -> float) = floor │
00:07:04 #9323 [verbose] > │ let v10 : float = v9 v5 │
00:07:04 #9324 [verbose] > │ let v11 : int64 = int64 v10 │
00:07:04 #9325 [verbose] > │ let v12 : int64 = v8 - 1L │
00:07:04 #9326 [verbose] > │ let v13 : string = v1.[int 0L..int v12] │
00:07:04 #9327 [verbose] > │ let v14 : int64 = v2 - v11 │
00:07:04 #9328 [verbose] > │ let v15 : int64 = v2 - 1L │
00:07:04 #9329 [verbose] > │ let v16 : string = v1.[int v14..int v15] │
00:07:04 #9330 [verbose] > │ let v17 : string = "..." │
00:07:04 #9331 [verbose] > │ let v18 : (string []) = [|v13; v17; v16|] │
00:07:04 #9332 [verbose] > │ let v19 : ((string []) -> string seq) = Seq.ofArray │
00:07:04 #9333 [verbose] > │ let v20 : string seq = v19 v18 │
00:07:04 #9334 [verbose] > │ let v21 : string = "" │
00:07:04 #9335 [verbose] > │ let v22 : string = v20 |> String.concat v21 │
00:07:04 #9336 [verbose] > │ v22 │
00:07:04 #9337 [verbose] > │ and closure33 () (v0 : int64) : (string -> string) = │
00:07:04 #9338 [verbose] > │ closure34(v0) │
00:07:04 #9339 [verbose] > │ and closure35 () (v0 : exn) : string = │
00:07:04 #9340 [verbose] > │ let v1 : string option = None │
00:07:04 #9341 [verbose] > │ let mutable _v1 = v1 │
00:07:04 #9342 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:07:04 #9343 [verbose] > │ let v2 : string = $"%A{v0}" │
00:07:04 #9344 [verbose] > │ v2 │
00:07:04 #9345 [verbose] > │ #endif │
00:07:04 #9346 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:07:04 #9347 [verbose] > │ let v3 : string = $"%A{v0}" │
00:07:04 #9348 [verbose] > │ v3 │
00:07:04 #9349 [verbose] > │ #endif │
00:07:04 #9350 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:07:04 #9351 [verbose] > │ let v4 : string = $"%A{v0}" │
00:07:04 #9352 [verbose] > │ v4 │
00:07:04 #9353 [verbose] > │ #endif │
00:07:04 #9354 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:07:04 #9355 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:07:04 #9356 [verbose] > │ let v5 : string = $"{v0.GetType ()}: {v0.Message}" │
00:07:04 #9357 [verbose] > │ v5 │
00:07:04 #9358 [verbose] > │ #endif │
00:07:04 #9359 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:07:04 #9360 [verbose] > │ let v6 : string = $"%A{v0}" │
00:07:04 #9361 [verbose] > │ v6 │
00:07:04 #9362 [verbose] > │ #endif │
00:07:04 #9363 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:07:04 #9364 [verbose] > │ Unchecked.defaultof<string> │
00:07:04 #9365 [verbose] > │ #endif │
00:07:04 #9366 [verbose] > │ |> fun x -> _v1 <- Some x │
00:07:04 #9367 [verbose] > │ let v7 : string = _v1.Value │
00:07:04 #9368 [verbose] > │ v7 │
00:07:04 #9369 [verbose] > │ and method1 (v0 : int32, v1 : Mut0) : bool = │
00:07:04 #9370 [verbose] > │ let v2 : int32 = v1.l0 │
00:07:04 #9371 [verbose] > │ let v3 : bool = v2 < v0 │
00:07:04 #9372 [verbose] > │ v3 │
00:07:04 #9373 [verbose] > │ and closure37 (v0 : string) (v1 : (string [])) : string = │
00:07:04 #9374 [verbose] > │ let v2 : int32 = v1.Length │
00:07:04 #9375 [verbose] > │ let v3 : string = "" │
00:07:04 #9376 [verbose] > │ let v4 : Mut0 = {l0 = 0; l1 = v3} : Mut0 │
00:07:04 #9377 [verbose] > │ while method1(v2, v4) do │
00:07:04 #9378 [verbose] > │ let v6 : int32 = v4.l0 │
00:07:04 #9379 [verbose] > │ let v7 : string = v4.l1 │
00:07:04 #9380 [verbose] > │ let v8 : string = v1.[int v6] │
00:07:04 #9381 [verbose] > │ let v9 : string = v7 + v8 + v0 + "" │
00:07:04 #9382 [verbose] > │ let v10 : int32 = v6 + 1 │
00:07:04 #9383 [verbose] > │ v4.l0 <- v10 │
00:07:04 #9384 [verbose] > │ v4.l1 <- v9 │
00:07:04 #9385 [verbose] > │ () │
00:07:04 #9386 [verbose] > │ let v11 : string = v4.l1 │
00:07:04 #9387 [verbose] > │ v11 │
00:07:04 #9388 [verbose] > │ and closure36 () (v0 : string) : ((string []) -> string) = │
00:07:04 #9389 [verbose] > │ closure37(v0) │
00:07:04 #9390 [verbose] > │ and closure39 (v0 : string) (v1 : string seq) : string = │
00:07:04 #9391 [verbose] > │ let v2 : string = v1 |> String.concat v0 │
00:07:04 #9392 [verbose] > │ v2 │
00:07:04 #9393 [verbose] > │ and closure38 () (v0 : string) : (string seq -> string) = │
00:07:04 #9394 [verbose] > │ closure39(v0) │
00:07:04 #9395 [verbose] > │ and closure41 (v0 : string) (v1 : (string [])) : string = │
00:07:04 #9396 [verbose] > │ let v2 : string = System.String.Join (v0, v1) │
00:07:04 #9397 [verbose] > │ v2 │
00:07:04 #9398 [verbose] > │ and closure40 () (v0 : string) : ((string []) -> string) = │
00:07:04 #9399 [verbose] > │ closure41(v0) │
00:07:04 #9400 [verbose] > │ and method2 (v0 : int32, v1 : Mut1) : bool = │
00:07:04 #9401 [verbose] > │ let v2 : int32 = v1.l0 │
00:07:04 #9402 [verbose] > │ let v3 : bool = v2 < v0 │
00:07:04 #9403 [verbose] > │ v3 │
00:07:04 #9404 [verbose] > │ and closure42 () (v0 : string) : (char []) = │
00:07:04 #9405 [verbose] > │ let v1 : int32 = v0.Length │
00:07:04 #9406 [verbose] > │ let v2 : (char []) = Array.zeroCreate<char> (v1) │
00:07:04 #9407 [verbose] > │ let v3 : Mut1 = {l0 = 0} : Mut1 │
00:07:04 #9408 [verbose] > │ while method2(v1, v3) do │
00:07:04 #9409 [verbose] > │ let v5 : int32 = v3.l0 │
00:07:04 #9410 [verbose] > │ let v6 : char = v0.[int v5] │
00:07:04 #9411 [verbose] > │ v2.[int v5] <- v6 │
00:07:04 #9412 [verbose] > │ let v7 : int32 = v5 + 1 │
00:07:04 #9413 [verbose] > │ v3.l0 <- v7 │
00:07:04 #9414 [verbose] > │ () │
00:07:04 #9415 [verbose] > │ v2 │
00:07:04 #9416 [verbose] > │ let v0 : (string -> (string -> bool)) = closure0() │
00:07:04 #9417 [verbose] > │ let contains x = v0 x │
00:07:04 #9418 [verbose] > │ let v1 : (string -> (string -> bool)) = closure2() │
00:07:04 #9419 [verbose] > │ let ends_with x = v1 x │
00:07:04 #9420 [verbose] > │ let v2 : (int32 -> (char -> (string -> string))) = closure4() │
00:07:04 #9421 [verbose] > │ let pad_left x = v2 x │
00:07:04 #9422 [verbose] > │ let v3 : (int32 -> (string -> string)) = closure7() │
00:07:04 #9423 [verbose] > │ let pad_right x = v3 x │
00:07:04 #9424 [verbose] > │ let v4 : (string -> (string -> (string -> string))) = closure9() │
00:07:04 #9425 [verbose] > │ let replace x = v4 x │
00:07:04 #9426 [verbose] > │ let v5 : (int32 -> (int32 -> (string -> string))) = closure12() │
00:07:04 #9427 [verbose] > │ let slice x = v5 x │
00:07:04 #9428 [verbose] > │ let v6 : (string -> (string -> (string []))) = closure15() │
00:07:04 #9429 [verbose] > │ let split x = v6 x │
00:07:04 #9430 [verbose] > │ let v7 : ((string []) -> (string -> (string []))) = closure17() │
00:07:04 #9431 [verbose] > │ let split_string x = v7 x │
00:07:04 #9432 [verbose] > │ let v8 : (string -> (string -> bool)) = closure19() │
00:07:04 #9433 [verbose] > │ let starts_with x = v8 x │
00:07:04 #9434 [verbose] > │ let v9 : (int32 -> (int32 -> (string -> string))) = closure21() │
00:07:04 #9435 [verbose] > │ let substring x = v9 x │
00:07:04 #9436 [verbose] > │ let v10 : (string -> string) = closure24() │
00:07:04 #9437 [verbose] > │ let to_lower x = v10 x │
00:07:04 #9438 [verbose] > │ let v11 : (string -> string) = closure25() │
00:07:04 #9439 [verbose] > │ let to_upper x = v11 x │
00:07:04 #9440 [verbose] > │ let v12 : (string -> string) = closure26() │
00:07:04 #9441 [verbose] > │ let trim x = v12 x │
00:07:04 #9442 [verbose] > │ let v13 : ((char []) -> (string -> string)) = closure27() │
00:07:04 #9443 [verbose] > │ let trim_end x = v13 x │
00:07:04 #9444 [verbose] > │ let v14 : ((char []) -> (string -> string)) = closure29() │
00:07:04 #9445 [verbose] > │ let trim_start x = v14 x │
00:07:04 #9446 [verbose] > │ let v15 : (int32 -> (string -> string)) = closure31() │
00:07:04 #9447 [verbose] > │ let ellipsis x = v15 x │
00:07:04 #9448 [verbose] > │ let v16 : (int64 -> (string -> string)) = closure33() │
00:07:04 #9449 [verbose] > │ let ellipsis_end x = v16 x │
00:07:04 #9450 [verbose] > │ let v17 : (exn -> string) = closure35() │
00:07:04 #9451 [verbose] > │ let format_exception x = v17 x │
00:07:04 #9452 [verbose] > │ let v18 : (string -> ((string []) -> string)) = closure36() │
00:07:04 #9453 [verbose] > │ let concat_array_trailing x = v18 x │
00:07:04 #9454 [verbose] > │ let v19 : (string -> (string seq -> string)) = closure38() │
00:07:04 #9455 [verbose] > │ let concat x = v19 x │
00:07:04 #9456 [verbose] > │ let v20 : (string -> ((string []) -> string)) = closure40() │
00:07:04 #9457 [verbose] > │ let join' x = v20 x │
00:07:04 #9458 [verbose] > │ let v21 : (string -> (char [])) = closure42() │
00:07:04 #9459 [verbose] > │ let to_char_array x = v21 x │
00:07:04 #9460 [verbose] > │ () │
00:07:04 #9461 [verbose] > │ │
00:07:04 #9462 [verbose] > │ │
00:07:04 #9463 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:08 #9464 [verbose] > [NbConvertApp] Converting notebook sm'.dib.ipynb to html
00:07:08 #9465 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:07:08 #9466 [verbose] > validate(nb)
00:07:09 #9467 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:07:09 #9468 [verbose] > return _pygments_highlight(
00:07:11 #9469 [verbose] > [NbConvertApp] Writing 446478 bytes to sm'.dib.html
00:07:13 #9470 [debug] executeAsync / exitCode: 0 / output.Length: 139454
00:07:13 #9471 [debug] main / executeCommand / exitCode: 0
00:07:13 #9472 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 \"listm'.dib\" -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:07:18 #9473 [verbose] >
00:07:18 #9474 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:18 #9475 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:18 #9476 [verbose] > │ # listm │
00:07:18 #9477 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:18 #9478 [verbose] >
00:07:18 #9479 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:18 #9480 [verbose] > // // test
00:07:18 #9481 [verbose] >
00:07:18 #9482 [verbose] > open testing
00:07:23 #9483 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:07:25 #9484 [verbose] >
00:07:25 #9485 [verbose] > ╭─[ 6.33s - stdout ]───────────────────────────────────────────────────────────╮
00:07:25 #9486 [verbose] > │ () │
00:07:25 #9487 [verbose] > │ │
00:07:25 #9488 [verbose] > │ │
00:07:25 #9489 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:25 #9490 [verbose] >
00:07:25 #9491 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:25 #9492 [verbose] > // // test
00:07:25 #9493 [verbose] >
00:07:25 #9494 [verbose] > prototype append t : t -> t -> t
00:07:25 #9495 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\aeda9b5acd00c201218acad26f133bf627240e2c2b851bd943c633261c6cda5d\main.spi
00:07:25 #9496 [verbose] >
00:07:25 #9497 [verbose] > ╭─[ 236.03ms - stdout ]────────────────────────────────────────────────────────╮
00:07:25 #9498 [verbose] > │ () │
00:07:25 #9499 [verbose] > │ │
00:07:25 #9500 [verbose] > │ │
00:07:25 #9501 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:25 #9502 [verbose] >
00:07:25 #9503 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:25 #9504 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:25 #9505 [verbose] > │ ## list' │
00:07:25 #9506 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:25 #9507 [verbose] >
00:07:25 #9508 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:25 #9509 [verbose] > nominal list' t = $'`t list'
00:07:25 #9510 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9ff28d135388d75adf2154addc90220204e93c02e0e6060e33b20f053fc54623\main.spi
00:07:25 #9511 [verbose] >
00:07:25 #9512 [verbose] > ╭─[ 292.34ms - stdout ]────────────────────────────────────────────────────────╮
00:07:25 #9513 [verbose] > │ () │
00:07:25 #9514 [verbose] > │ │
00:07:25 #9515 [verbose] > │ │
00:07:25 #9516 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:25 #9517 [verbose] >
00:07:25 #9518 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:25 #9519 [verbose] > inl empty' forall t. () : list' t =
00:07:25 #9520 [verbose] > $'[[]]'
00:07:25 #9521 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b3596bcd5a77ff785c961e7904c4cd79008d115f279052444ed736401c9d4b10\main.spi
00:07:25 #9522 [verbose] >
00:07:25 #9523 [verbose] > ╭─[ 240.17ms - stdout ]────────────────────────────────────────────────────────╮
00:07:25 #9524 [verbose] > │ () │
00:07:25 #9525 [verbose] > │ │
00:07:25 #9526 [verbose] > │ │
00:07:25 #9527 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:25 #9528 [verbose] >
00:07:25 #9529 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:25 #9530 [verbose] > inl cons' forall t. (head : t) (tail : list' t) : list' t =
00:07:25 #9531 [verbose] > $'!head :: !tail '
00:07:26 #9532 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2a95d5a65de46e44d95f9a12acb7815ef5881f2f000125cdad2648ab1abc2b13\main.spi
00:07:26 #9533 [verbose] >
00:07:26 #9534 [verbose] > ╭─[ 225.34ms - stdout ]────────────────────────────────────────────────────────╮
00:07:26 #9535 [verbose] > │ () │
00:07:26 #9536 [verbose] > │ │
00:07:26 #9537 [verbose] > │ │
00:07:26 #9538 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:26 #9539 [verbose] >
00:07:26 #9540 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:26 #9541 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:26 #9542 [verbose] > │ ## box │
00:07:26 #9543 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:26 #9544 [verbose] >
00:07:26 #9545 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:26 #9546 [verbose] > inl box forall t. (list : list t) : list' t =
00:07:26 #9547 [verbose] > (empty' (), list)
00:07:26 #9548 [verbose] > ||> listm.fold fun acc x =>
00:07:26 #9549 [verbose] > acc |> cons' x
00:07:26 #9550 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5c0a775c8c3623662624fb04c6ed58b2ef13cb67365fb7ec1a340b980da390da\main.spi
00:07:26 #9551 [verbose] >
00:07:26 #9552 [verbose] > ╭─[ 298.38ms - stdout ]────────────────────────────────────────────────────────╮
00:07:26 #9553 [verbose] > │ () │
00:07:26 #9554 [verbose] > │ │
00:07:26 #9555 [verbose] > │ │
00:07:26 #9556 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:26 #9557 [verbose] >
00:07:26 #9558 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:26 #9559 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:26 #9560 [verbose] > │ ## fold' │
00:07:26 #9561 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:26 #9562 [verbose] >
00:07:26 #9563 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:26 #9564 [verbose] > inl fold' forall t u. (fn : t -> u) (init : list u) (list : list' t) : list u =
00:07:26 #9565 [verbose] > (init, list)
00:07:26 #9566 [verbose] > ||> $'List.fold' (fun acc x => Cons (fn x, acc))
00:07:26 #9567 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d06757b3ea0c958e243dd088d7d83f476d0fd989bd5fc02977a99c1e287aec4d\main.spi
00:07:26 #9568 [verbose] >
00:07:26 #9569 [verbose] > ╭─[ 216.42ms - stdout ]────────────────────────────────────────────────────────╮
00:07:26 #9570 [verbose] > │ () │
00:07:26 #9571 [verbose] > │ │
00:07:26 #9572 [verbose] > │ │
00:07:26 #9573 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:26 #9574 [verbose] >
00:07:26 #9575 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:26 #9576 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:26 #9577 [verbose] > │ ## unbox │
00:07:26 #9578 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:26 #9579 [verbose] >
00:07:26 #9580 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:26 #9581 [verbose] > inl unbox forall t. (list : list' t) : list t =
00:07:26 #9582 [verbose] > (Nil, list)
00:07:26 #9583 [verbose] > ||> fold' id
00:07:26 #9584 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\852122f27aa365fbc1754e2653b3e9892f5d9a7e3a2578a7561d3bb008966941\main.spi
00:07:27 #9585 [verbose] >
00:07:27 #9586 [verbose] > ╭─[ 342.27ms - stdout ]────────────────────────────────────────────────────────╮
00:07:27 #9587 [verbose] > │ () │
00:07:27 #9588 [verbose] > │ │
00:07:27 #9589 [verbose] > │ │
00:07:27 #9590 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:27 #9591 [verbose] >
00:07:27 #9592 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:27 #9593 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:27 #9594 [verbose] > │ ## distinct' │
00:07:27 #9595 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:27 #9596 [verbose] >
00:07:27 #9597 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:27 #9598 [verbose] > inl distinct' forall t. (list : list' t) : list' t =
00:07:27 #9599 [verbose] > list |> $'List.distinct'
00:07:27 #9600 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\acc42eb516419b2e995ad63d7c0552e40d76b92317b6e84b5ff95e34193dfd5e\main.spi
00:07:27 #9601 [verbose] >
00:07:27 #9602 [verbose] > ╭─[ 278.56ms - stdout ]────────────────────────────────────────────────────────╮
00:07:27 #9603 [verbose] > │ () │
00:07:27 #9604 [verbose] > │ │
00:07:27 #9605 [verbose] > │ │
00:07:27 #9606 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:27 #9607 [verbose] >
00:07:27 #9608 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:27 #9609 [verbose] > // // test
00:07:27 #9610 [verbose] >
00:07:27 #9611 [verbose] > [[ ""; "" ]]
00:07:27 #9612 [verbose] > |> box
00:07:27 #9613 [verbose] > |> distinct'
00:07:27 #9614 [verbose] > |> unbox
00:07:27 #9615 [verbose] > |> _assert_eq [[ "" ]]
00:07:27 #9616 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\6903eea30a568ce9cb62cadd9ef0c29aed0b721ee4daba08b902a7e0ff7d00a5\main.spi
00:07:29 #9617 [verbose] >
00:07:29 #9618 [verbose] > ╭─[ 1.74s - stdout ]───────────────────────────────────────────────────────────╮
00:07:29 #9619 [verbose] > │ type UH0 = │
00:07:29 #9620 [verbose] > │ | UH0_0 │
00:07:29 #9621 [verbose] > │ | UH0_1 of string * UH0 │
00:07:29 #9622 [verbose] > │ let rec closure1 (v0 : UH0) (v1 : string) : UH0 = │
00:07:29 #9623 [verbose] > │ UH0_1(v1, v0) │
00:07:29 #9624 [verbose] > │ and closure0 () (v0 : UH0) : (string -> UH0) = │
00:07:29 #9625 [verbose] > │ closure1(v0) │
00:07:29 #9626 [verbose] > │ and method1 (v0 : bool) : bool = │
00:07:29 #9627 [verbose] > │ v0 │
00:07:29 #9628 [verbose] > │ and method0 () : unit = │
00:07:29 #9629 [verbose] > │ let v0 : string list = [] │
00:07:29 #9630 [verbose] > │ let v1 : string = "" │
00:07:29 #9631 [verbose] > │ let v2 : string list = v1 :: v0 │
00:07:29 #9632 [verbose] > │ let v3 : string list = v1 :: v2 │
00:07:29 #9633 [verbose] > │ let v4 : (string list -> string list) = List.distinct │
00:07:29 #9634 [verbose] > │ let v5 : string list = v4 v3 │
00:07:29 #9635 [verbose] > │ let v6 : ((UH0 -> (string -> UH0)) -> (UH0 -> (string list -> UH0))) = │
00:07:29 #9636 [verbose] > │ List.fold │
00:07:29 #9637 [verbose] > │ let v7 : (UH0 -> (string -> UH0)) = closure0() │
00:07:29 #9638 [verbose] > │ let v8 : (UH0 -> (string list -> UH0)) = v6 v7 │
00:07:29 #9639 [verbose] > │ let v9 : UH0 = UH0_0 │
00:07:29 #9640 [verbose] > │ let v10 : (string list -> UH0) = v8 v9 │
00:07:29 #9641 [verbose] > │ let v11 : UH0 = v10 v5 │
00:07:29 #9642 [verbose] > │ let v12 : string = $"%A{v11}" │
00:07:29 #9643 [verbose] > │ System.Console.WriteLine v12 │
00:07:29 #9644 [verbose] > │ let v20 : bool = │
00:07:29 #9645 [verbose] > │ match v11 with │
00:07:29 #9646 [verbose] > │ | UH0_1(v15, v16) -> (* Cons *) │
00:07:29 #9647 [verbose] > │ let v17 : bool = v15 = "" │
00:07:29 #9648 [verbose] > │ if v17 then │
00:07:29 #9649 [verbose] > │ match v16 with │
00:07:29 #9650 [verbose] > │ | UH0_0 -> (* Nil *) │
00:07:29 #9651 [verbose] > │ true │
00:07:29 #9652 [verbose] > │ | _ -> │
00:07:29 #9653 [verbose] > │ false │
00:07:29 #9654 [verbose] > │ else │
00:07:29 #9655 [verbose] > │ false │
00:07:29 #9656 [verbose] > │ | _ -> │
00:07:29 #9657 [verbose] > │ false │
00:07:29 #9658 [verbose] > │ let v22 : bool = │
00:07:29 #9659 [verbose] > │ if v20 then │
00:07:29 #9660 [verbose] > │ true │
00:07:29 #9661 [verbose] > │ else │
00:07:29 #9662 [verbose] > │ method1(v20) │
00:07:29 #9663 [verbose] > │ let v23 : UH0 = UH0_0 │
00:07:29 #9664 [verbose] > │ let v24 : UH0 = UH0_1(v1, v23) │
00:07:29 #9665 [verbose] > │ let v25 : string = $"__expect / actual: %A{v11} / expected: %A{v24}" │
00:07:29 #9666 [verbose] > │ let v26 : bool = v22 = false │
00:07:29 #9667 [verbose] > │ if v26 then │
00:07:29 #9668 [verbose] > │ failwith<unit> v25 │
00:07:29 #9669 [verbose] > │ method0() │
00:07:29 #9670 [verbose] > │ │
00:07:29 #9671 [verbose] > │ UH0_1 ("", UH0_0) │
00:07:29 #9672 [verbose] > │ │
00:07:29 #9673 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:29 #9674 [verbose] >
00:07:29 #9675 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:29 #9676 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:29 #9677 [verbose] > │ ## append │
00:07:29 #9678 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:29 #9679 [verbose] >
00:07:29 #9680 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:29 #9681 [verbose] > instance append list t =
00:07:29 #9682 [verbose] > listm.append
00:07:29 #9683 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5e9ba9a32705ffcf3910240ec57f6ac3fe67f204ca317270fc5cd9542f458df0\main.spi
00:07:29 #9684 [verbose] >
00:07:29 #9685 [verbose] > ╭─[ 229.79ms - stdout ]────────────────────────────────────────────────────────╮
00:07:29 #9686 [verbose] > │ () │
00:07:29 #9687 [verbose] > │ │
00:07:29 #9688 [verbose] > │ │
00:07:29 #9689 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:29 #9690 [verbose] >
00:07:29 #9691 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:29 #9692 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:29 #9693 [verbose] > │ ## /@ │
00:07:29 #9694 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:29 #9695 [verbose] >
00:07:29 #9696 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:29 #9697 [verbose] > inl (/@) a b =
00:07:29 #9698 [verbose] > b |> append a
00:07:29 #9699 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e5dd1e5cf882e732cae5fde9067f974a92e8eb531bed577674d11de15a336ffd\main.spi
00:07:29 #9700 [verbose] >
00:07:29 #9701 [verbose] > ╭─[ 240.50ms - stdout ]────────────────────────────────────────────────────────╮
00:07:29 #9702 [verbose] > │ () │
00:07:29 #9703 [verbose] > │ │
00:07:29 #9704 [verbose] > │ │
00:07:29 #9705 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:29 #9706 [verbose] >
00:07:29 #9707 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:29 #9708 [verbose] > // // test
00:07:29 #9709 [verbose] >
00:07:29 #9710 [verbose] > [[ "a"; "b" ]] /@ [[ "c"; "d" ]]
00:07:29 #9711 [verbose] > |> _assert_eq [[ "a"; "b"; "c"; "d" ]]
00:07:29 #9712 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8a5cd10e94110a8a0dd4a712b07ac433bd98d3d106bbe3b9755b277922065ee8\main.spi
00:07:30 #9713 [verbose] >
00:07:30 #9714 [verbose] > ╭─[ 408.84ms - stdout ]────────────────────────────────────────────────────────╮
00:07:30 #9715 [verbose] > │ type UH0 = │
00:07:30 #9716 [verbose] > │ | UH0_0 │
00:07:30 #9717 [verbose] > │ | UH0_1 of string * UH0 │
00:07:30 #9718 [verbose] > │ let rec method0 () : unit = │
00:07:30 #9719 [verbose] > │ let v0 : string = "a" │
00:07:30 #9720 [verbose] > │ let v1 : string = "b" │
00:07:30 #9721 [verbose] > │ let v2 : string = "c" │
00:07:30 #9722 [verbose] > │ let v3 : string = "d" │
00:07:30 #9723 [verbose] > │ let v4 : UH0 = UH0_0 │
00:07:30 #9724 [verbose] > │ let v5 : UH0 = UH0_1(v3, v4) │
00:07:30 #9725 [verbose] > │ let v6 : UH0 = UH0_1(v2, v5) │
00:07:30 #9726 [verbose] > │ let v7 : UH0 = UH0_1(v1, v6) │
00:07:30 #9727 [verbose] > │ let v8 : UH0 = UH0_1(v0, v7) │
00:07:30 #9728 [verbose] > │ let v9 : string = $"%A{v8}" │
00:07:30 #9729 [verbose] > │ System.Console.WriteLine v9 │
00:07:30 #9730 [verbose] > │ let v35 : UH0 = UH0_0 │
00:07:30 #9731 [verbose] > │ let v36 : UH0 = UH0_1(v3, v35) │
00:07:30 #9732 [verbose] > │ let v37 : UH0 = UH0_1(v2, v36) │
00:07:30 #9733 [verbose] > │ let v38 : UH0 = UH0_1(v1, v37) │
00:07:30 #9734 [verbose] > │ let v39 : UH0 = UH0_1(v0, v38) │
00:07:30 #9735 [verbose] > │ let v40 : UH0 = UH0_0 │
00:07:30 #9736 [verbose] > │ let v41 : UH0 = UH0_1(v3, v40) │
00:07:30 #9737 [verbose] > │ let v42 : UH0 = UH0_1(v2, v41) │
00:07:30 #9738 [verbose] > │ let v43 : UH0 = UH0_1(v1, v42) │
00:07:30 #9739 [verbose] > │ let v44 : UH0 = UH0_1(v0, v43) │
00:07:30 #9740 [verbose] > │ let v45 : string = $"__expect / actual: %A{v39} / expected: %A{v44}" │
00:07:30 #9741 [verbose] > │ () │
00:07:30 #9742 [verbose] > │ method0() │
00:07:30 #9743 [verbose] > │ │
00:07:30 #9744 [verbose] > │ UH0_1 ("a", UH0_1 ("b", UH0_1 ("c", UH0_1 ("d", UH0_0)))) │
00:07:30 #9745 [verbose] > │ │
00:07:30 #9746 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:30 #9747 [verbose] >
00:07:30 #9748 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:30 #9749 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:30 #9750 [verbose] > │ ## init_series │
00:07:30 #9751 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:30 #9752 [verbose] >
00:07:30 #9753 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:30 #9754 [verbose] > inl init_series start end inc =
00:07:30 #9755 [verbose] > inl total : f64 = conv ((end - start) / inc) + 1
00:07:30 #9756 [verbose] > listm.init total (conv >> (*) inc >> (+) start)
00:07:30 #9757 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d9557223413259678d9a84565ab7687c1d288265e3edb2507f950aca6eab4acb\main.spi
00:07:30 #9758 [verbose] >
00:07:30 #9759 [verbose] > ╭─[ 285.26ms - stdout ]────────────────────────────────────────────────────────╮
00:07:30 #9760 [verbose] > │ () │
00:07:30 #9761 [verbose] > │ │
00:07:30 #9762 [verbose] > │ │
00:07:30 #9763 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:30 #9764 [verbose] >
00:07:30 #9765 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:30 #9766 [verbose] > // // test
00:07:30 #9767 [verbose] >
00:07:30 #9768 [verbose] > init_series 0 1 0.5
00:07:30 #9769 [verbose] > |> _assert_eq [[ 0f64; 0.5; 1 ]]
00:07:30 #9770 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\29f6dbf5c0bf19626c01be7980384452572d2344ded88aac4cc6a480c690621b\main.spi
00:07:30 #9771 [verbose] >
00:07:30 #9772 [verbose] > ╭─[ 303.78ms - stdout ]────────────────────────────────────────────────────────╮
00:07:30 #9773 [verbose] > │ type UH0 = │
00:07:30 #9774 [verbose] > │ | UH0_0 │
00:07:30 #9775 [verbose] > │ | UH0_1 of float * UH0 │
00:07:30 #9776 [verbose] > │ let rec method0 () : unit = │
00:07:30 #9777 [verbose] > │ let v0 : UH0 = UH0_0 │
00:07:30 #9778 [verbose] > │ let v1 : UH0 = UH0_1(1.0, v0) │
00:07:30 #9779 [verbose] > │ let v2 : UH0 = UH0_1(0.5, v1) │
00:07:30 #9780 [verbose] > │ let v3 : UH0 = UH0_1(0.0, v2) │
00:07:30 #9781 [verbose] > │ let v4 : string = $"%A{v3}" │
00:07:30 #9782 [verbose] > │ System.Console.WriteLine v4 │
00:07:30 #9783 [verbose] > │ let v23 : UH0 = UH0_0 │
00:07:30 #9784 [verbose] > │ let v24 : UH0 = UH0_1(1.0, v23) │
00:07:30 #9785 [verbose] > │ let v25 : UH0 = UH0_1(0.5, v24) │
00:07:30 #9786 [verbose] > │ let v26 : UH0 = UH0_1(0.0, v25) │
00:07:30 #9787 [verbose] > │ let v27 : UH0 = UH0_0 │
00:07:30 #9788 [verbose] > │ let v28 : UH0 = UH0_1(1.0, v27) │
00:07:30 #9789 [verbose] > │ let v29 : UH0 = UH0_1(0.5, v28) │
00:07:30 #9790 [verbose] > │ let v30 : UH0 = UH0_1(0.0, v29) │
00:07:30 #9791 [verbose] > │ let v31 : string = $"__expect / actual: %A{v26} / expected: %A{v30}" │
00:07:30 #9792 [verbose] > │ () │
00:07:30 #9793 [verbose] > │ method0() │
00:07:30 #9794 [verbose] > │ │
00:07:30 #9795 [verbose] > │ UH0_1 (0.0, UH0_1 (0.5, UH0_1 (1.0, UH0_0))) │
00:07:30 #9796 [verbose] > │ │
00:07:30 #9797 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:30 #9798 [verbose] >
00:07:30 #9799 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:30 #9800 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:30 #9801 [verbose] > │ ## try_item │
00:07:30 #9802 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:30 #9803 [verbose] >
00:07:30 #9804 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:30 #9805 [verbose] > inl rec try_item i = function
00:07:30 #9806 [verbose] > | Cons (x, _) when i = 0 => Some x
00:07:30 #9807 [verbose] > | Cons (_, xs) => try_item (i - 1) xs
00:07:30 #9808 [verbose] > | Nil => None
00:07:30 #9809 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1f5fc3805de79577e046322d35995d284b72074a84127b5d8ffd1a31a16164b5\main.spi
00:07:30 #9810 [verbose] >
00:07:30 #9811 [verbose] > ╭─[ 296.41ms - stdout ]────────────────────────────────────────────────────────╮
00:07:30 #9812 [verbose] > │ () │
00:07:30 #9813 [verbose] > │ │
00:07:30 #9814 [verbose] > │ │
00:07:30 #9815 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:30 #9816 [verbose] >
00:07:30 #9817 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:30 #9818 [verbose] > // // test
00:07:30 #9819 [verbose] >
00:07:30 #9820 [verbose] > listm.init 10i32 id
00:07:30 #9821 [verbose] > |> try_item 9i32
00:07:30 #9822 [verbose] > |> _assert_eq (Some 9)
00:07:31 #9823 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\903bd640cca3c3e1d416e42bc1e772fd2804d22e90d47d400e4e18e32406933b\main.spi
00:07:31 #9824 [verbose] >
00:07:31 #9825 [verbose] > ╭─[ 403.34ms - stdout ]────────────────────────────────────────────────────────╮
00:07:31 #9826 [verbose] > │ type [<Struct>] US0 = │
00:07:31 #9827 [verbose] > │ | US0_0 of f0_0 : int32 │
00:07:31 #9828 [verbose] > │ | US0_1 │
00:07:31 #9829 [verbose] > │ let rec method0 () : unit = │
00:07:31 #9830 [verbose] > │ let v0 : US0 = US0_0(9) │
00:07:31 #9831 [verbose] > │ let v1 : string = $"%A{v0}" │
00:07:31 #9832 [verbose] > │ System.Console.WriteLine v1 │
00:07:31 #9833 [verbose] > │ let v5 : US0 = US0_0(9) │
00:07:31 #9834 [verbose] > │ let v6 : US0 = US0_0(9) │
00:07:31 #9835 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:07:31 #9836 [verbose] > │ () │
00:07:31 #9837 [verbose] > │ method0() │
00:07:31 #9838 [verbose] > │ │
00:07:31 #9839 [verbose] > │ US0_0 9 │
00:07:31 #9840 [verbose] > │ │
00:07:31 #9841 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:31 #9842 [verbose] >
00:07:31 #9843 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:31 #9844 [verbose] > // // test
00:07:31 #9845 [verbose] >
00:07:31 #9846 [verbose] > listm.init 10i32 id
00:07:31 #9847 [verbose] > |> try_item 10i32
00:07:31 #9848 [verbose] > |> _assert_eq None
00:07:31 #9849 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9086d06f963a85892059ef6ae0c65729f06f79f7d1c3709d6ffa6f688e8c7017\main.spi
00:07:31 #9850 [verbose] >
00:07:31 #9851 [verbose] > ╭─[ 324.30ms - stdout ]────────────────────────────────────────────────────────╮
00:07:31 #9852 [verbose] > │ type [<Struct>] US0 = │
00:07:31 #9853 [verbose] > │ | US0_0 of f0_0 : int32 │
00:07:31 #9854 [verbose] > │ | US0_1 │
00:07:31 #9855 [verbose] > │ let rec method0 () : unit = │
00:07:31 #9856 [verbose] > │ let v0 : US0 = US0_1 │
00:07:31 #9857 [verbose] > │ let v1 : string = $"%A{v0}" │
00:07:31 #9858 [verbose] > │ System.Console.WriteLine v1 │
00:07:31 #9859 [verbose] > │ let v5 : US0 = US0_1 │
00:07:31 #9860 [verbose] > │ let v6 : US0 = US0_1 │
00:07:31 #9861 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:07:31 #9862 [verbose] > │ () │
00:07:31 #9863 [verbose] > │ method0() │
00:07:31 #9864 [verbose] > │ │
00:07:31 #9865 [verbose] > │ US0_1 │
00:07:31 #9866 [verbose] > │ │
00:07:31 #9867 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:31 #9868 [verbose] >
00:07:31 #9869 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:31 #9870 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:31 #9871 [verbose] > │ ## list_item │
00:07:31 #9872 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:31 #9873 [verbose] >
00:07:31 #9874 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:31 #9875 [verbose] > inl item i =
00:07:31 #9876 [verbose] > try_item i >> optionm.value
00:07:31 #9877 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0273e4b8b69ecd5b4275ce341b2395f5807c5e9ccd839ce3efb03ced516b6a67\main.spi
00:07:32 #9878 [verbose] >
00:07:32 #9879 [verbose] > ╭─[ 342.62ms - stdout ]────────────────────────────────────────────────────────╮
00:07:32 #9880 [verbose] > │ () │
00:07:32 #9881 [verbose] > │ │
00:07:32 #9882 [verbose] > │ │
00:07:32 #9883 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:32 #9884 [verbose] >
00:07:32 #9885 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:32 #9886 [verbose] > // // test
00:07:32 #9887 [verbose] >
00:07:32 #9888 [verbose] > listm.init 10i32 id
00:07:32 #9889 [verbose] > |> item 9i32
00:07:32 #9890 [verbose] > |> _assert_eq 9
00:07:32 #9891 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\894c5fd342c1004ebffcd797ba09d502bb4601065cdd4f7dc78ef94f5e53dbca\main.spi
00:07:32 #9892 [verbose] >
00:07:32 #9893 [verbose] > ╭─[ 298.98ms - stdout ]────────────────────────────────────────────────────────╮
00:07:32 #9894 [verbose] > │ let rec method0 () : unit = │
00:07:32 #9895 [verbose] > │ let v0 : string = $"%A{9}" │
00:07:32 #9896 [verbose] > │ System.Console.WriteLine v0 │
00:07:32 #9897 [verbose] > │ let v1 : string = $"__expect / actual: %A{9} / expected: %A{9}" │
00:07:32 #9898 [verbose] > │ () │
00:07:32 #9899 [verbose] > │ method0() │
00:07:32 #9900 [verbose] > │ │
00:07:32 #9901 [verbose] > │ 9 │
00:07:32 #9902 [verbose] > │ │
00:07:32 #9903 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:32 #9904 [verbose] >
00:07:32 #9905 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:32 #9906 [verbose] > // // test
00:07:32 #9907 [verbose] >
00:07:32 #9908 [verbose] > fun () =>
00:07:32 #9909 [verbose] > listm.init 10i32 id
00:07:32 #9910 [verbose] > |> item 10i32
00:07:32 #9911 [verbose] > |> ignore
00:07:32 #9912 [verbose] > |> _throws
00:07:32 #9913 [verbose] > |> optionm.map sm'.format_exception
00:07:32 #9914 [verbose] > |> _assert_eq (Some "System.Exception: Option does not have a value.")
00:07:32 #9915 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\84e043d2fc5c0ec221e12d2910590d9313fbeb66868de34f42c75aab9fe94ee3\main.spi
00:07:33 #9916 [verbose] >
00:07:33 #9917 [verbose] > ╭─[ 671.56ms - stdout ]────────────────────────────────────────────────────────╮
00:07:33 #9918 [verbose] > │ type [<Struct>] US0 = │
00:07:33 #9919 [verbose] > │ | US0_0 of f0_0 : exn │
00:07:33 #9920 [verbose] > │ | US0_1 │
00:07:33 #9921 [verbose] > │ and [<Struct>] US1 = │
00:07:33 #9922 [verbose] > │ | US1_0 of f0_0 : string │
00:07:33 #9923 [verbose] > │ | US1_1 │
00:07:33 #9924 [verbose] > │ let rec closure0 () () : unit = │
00:07:33 #9925 [verbose] > │ let v0 : int32 = failwith<int32> "Option does not have a value." │
00:07:33 #9926 [verbose] > │ () │
00:07:33 #9927 [verbose] > │ and closure1 () (v0 : exn) : US0 = │
00:07:33 #9928 [verbose] > │ US0_0(v0) │
00:07:33 #9929 [verbose] > │ and method1 (v0 : bool) : bool = │
00:07:33 #9930 [verbose] > │ v0 │
00:07:33 #9931 [verbose] > │ and method0 () : unit = │
00:07:33 #9932 [verbose] > │ let v0 : (unit -> unit) = closure0() │
00:07:33 #9933 [verbose] > │ let v1 : US0 = US0_1 │
00:07:33 #9934 [verbose] > │ let v2 : (exn -> US0) = closure1() │
00:07:33 #9935 [verbose] > │ let v3 : US0 = try v0 (); v1 with ex -> ex |> v2 │
00:07:33 #9936 [verbose] > │ let v15 : US1 = │
00:07:33 #9937 [verbose] > │ match v3 with │
00:07:33 #9938 [verbose] > │ | US0_1 -> (* None *) │
00:07:33 #9939 [verbose] > │ US1_1 │
00:07:33 #9940 [verbose] > │ | US0_0(v4) -> (* Some *) │
00:07:33 #9941 [verbose] > │ let v5 : string option = None │
00:07:33 #9942 [verbose] > │ let mutable _v5 = v5 │
00:07:33 #9943 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:07:33 #9944 [verbose] > │ let v6 : string = $"%A{v4}" │
00:07:33 #9945 [verbose] > │ v6 │
00:07:33 #9946 [verbose] > │ #endif │
00:07:33 #9947 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:07:33 #9948 [verbose] > │ let v7 : string = $"%A{v4}" │
00:07:33 #9949 [verbose] > │ v7 │
00:07:33 #9950 [verbose] > │ #endif │
00:07:33 #9951 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:07:33 #9952 [verbose] > │ let v8 : string = $"%A{v4}" │
00:07:33 #9953 [verbose] > │ v8 │
00:07:33 #9954 [verbose] > │ #endif │
00:07:33 #9955 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:07:33 #9956 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:07:33 #9957 [verbose] > │ let v9 : string = $"{v4.GetType ()}: {v4.Message}" │
00:07:33 #9958 [verbose] > │ v9 │
00:07:33 #9959 [verbose] > │ #endif │
00:07:33 #9960 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:07:33 #9961 [verbose] > │ let v10 : string = $"%A{v4}" │
00:07:33 #9962 [verbose] > │ v10 │
00:07:33 #9963 [verbose] > │ #endif │
00:07:33 #9964 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:07:33 #9965 [verbose] > │ FABLE_COMPILER_DART │
00:07:33 #9966 [verbose] > │ Unchecked.defaultof<string> │
00:07:33 #9967 [verbose] > │ #endif │
00:07:33 #9968 [verbose] > │ |> fun x -> _v5 <- Some x │
00:07:33 #9969 [verbose] > │ let v11 : string = _v5.Value │
00:07:33 #9970 [verbose] > │ US1_0(v11) │
00:07:33 #9971 [verbose] > │ let v16 : string = $"%A{v15}" │
00:07:33 #9972 [verbose] > │ System.Console.WriteLine v16 │
00:07:33 #9973 [verbose] > │ let v21 : bool = │
00:07:33 #9974 [verbose] > │ match v15 with │
00:07:33 #9975 [verbose] > │ | US1_0(v19) -> (* Some *) │
00:07:33 #9976 [verbose] > │ let v20 : bool = v19 = "System.Exception: Option does not have a │
00:07:33 #9977 [verbose] > │ value." │
00:07:33 #9978 [verbose] > │ v20 │
00:07:33 #9979 [verbose] > │ | _ -> │
00:07:33 #9980 [verbose] > │ false │
00:07:33 #9981 [verbose] > │ let v23 : bool = │
00:07:33 #9982 [verbose] > │ if v21 then │
00:07:33 #9983 [verbose] > │ true │
00:07:33 #9984 [verbose] > │ else │
00:07:33 #9985 [verbose] > │ method1(v21) │
00:07:33 #9986 [verbose] > │ let v24 : string = "System.Exception: Option does not have a value." │
00:07:33 #9987 [verbose] > │ let v25 : US1 = US1_0(v24) │
00:07:33 #9988 [verbose] > │ let v26 : string = $"__expect / actual: %A{v15} / expected: %A{v25}" │
00:07:33 #9989 [verbose] > │ let v27 : bool = v23 = false │
00:07:33 #9990 [verbose] > │ if v27 then │
00:07:33 #9991 [verbose] > │ failwith<unit> v26 │
00:07:33 #9992 [verbose] > │ method0() │
00:07:33 #9993 [verbose] > │ │
00:07:33 #9994 [verbose] > │ US1_0 "System.Exception: Option does not have a value." │
00:07:33 #9995 [verbose] > │ │
00:07:33 #9996 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:33 #9997 [verbose] >
00:07:33 #9998 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:33 #9999 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:33 #10000 [verbose] > │ ## try_item_ │
00:07:33 #10001 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:33 #10002 [verbose] >
00:07:33 #10003 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:33 #10004 [verbose] > let rec try_item_ i = function
00:07:33 #10005 [verbose] > | Cons (x, _) when i = 0 => Some x
00:07:33 #10006 [verbose] > | Cons (_, xs) => try_item_ (i - 1) xs
00:07:33 #10007 [verbose] > | Nil => None
00:07:33 #10008 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f28705c8a7e79e5b66338e1b879f6ce85b8f372c28a786c90994b40ce48a8f37\main.spi
00:07:33 #10009 [verbose] >
00:07:33 #10010 [verbose] > ╭─[ 365.19ms - stdout ]────────────────────────────────────────────────────────╮
00:07:33 #10011 [verbose] > │ () │
00:07:33 #10012 [verbose] > │ │
00:07:33 #10013 [verbose] > │ │
00:07:33 #10014 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:33 #10015 [verbose] >
00:07:33 #10016 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:33 #10017 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:33 #10018 [verbose] > │ ## item_ │
00:07:33 #10019 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:33 #10020 [verbose] >
00:07:33 #10021 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:33 #10022 [verbose] > inl item_ i =
00:07:33 #10023 [verbose] > try_item_ i >> optionm.value
00:07:33 #10024 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8d5277bdf657dc0a4312bab1a386b89372fdcb251dd93d0b180db7907a3993f6\main.spi
00:07:33 #10025 [verbose] >
00:07:33 #10026 [verbose] > ╭─[ 342.05ms - stdout ]────────────────────────────────────────────────────────╮
00:07:33 #10027 [verbose] > │ () │
00:07:33 #10028 [verbose] > │ │
00:07:33 #10029 [verbose] > │ │
00:07:33 #10030 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:33 #10031 [verbose] >
00:07:33 #10032 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:33 #10033 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:33 #10034 [verbose] > │ ## sum │
00:07:33 #10035 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:33 #10036 [verbose] >
00:07:33 #10037 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:33 #10038 [verbose] > inl sum list =
00:07:33 #10039 [verbose] > list |> listm.fold (+) 0
00:07:34 #10040 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\91ca7f14d34db3399389c21b8376932dde3680ced5af90ed1a7ef09a5eb456c0\main.spi
00:07:34 #10041 [verbose] >
00:07:34 #10042 [verbose] > ╭─[ 312.42ms - stdout ]────────────────────────────────────────────────────────╮
00:07:34 #10043 [verbose] > │ () │
00:07:34 #10044 [verbose] > │ │
00:07:34 #10045 [verbose] > │ │
00:07:34 #10046 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:34 #10047 [verbose] >
00:07:34 #10048 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:34 #10049 [verbose] > // // test
00:07:34 #10050 [verbose] >
00:07:34 #10051 [verbose] > listm.init 10i32 id
00:07:34 #10052 [verbose] > |> sum
00:07:34 #10053 [verbose] > |> _assert_eq 45
00:07:34 #10054 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2ac7344a530ac95531e29fc245133135a16f7208d52a69a1df8e24dd63ceca52\main.spi
00:07:34 #10055 [verbose] >
00:07:34 #10056 [verbose] > ╭─[ 408.32ms - stdout ]────────────────────────────────────────────────────────╮
00:07:34 #10057 [verbose] > │ let rec method0 () : unit = │
00:07:34 #10058 [verbose] > │ let v0 : string = $"%A{45}" │
00:07:34 #10059 [verbose] > │ System.Console.WriteLine v0 │
00:07:34 #10060 [verbose] > │ let v1 : string = $"__expect / actual: %A{45} / expected: %A{45}" │
00:07:34 #10061 [verbose] > │ () │
00:07:34 #10062 [verbose] > │ method0() │
00:07:34 #10063 [verbose] > │ │
00:07:34 #10064 [verbose] > │ 45 │
00:07:34 #10065 [verbose] > │ │
00:07:34 #10066 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:34 #10067 [verbose] >
00:07:34 #10068 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:34 #10069 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:34 #10070 [verbose] > │ ## unzip │
00:07:34 #10071 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:34 #10072 [verbose] >
00:07:34 #10073 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:34 #10074 [verbose] > inl unzip list =
00:07:34 #10075 [verbose] > (([[]], [[]]), list)
00:07:34 #10076 [verbose] > ||> listm.fold fun (acc_x, acc_y) (x, y) =>
00:07:34 #10077 [verbose] > x :: acc_x, y :: acc_y
00:07:34 #10078 [verbose] > |> fun x, y =>
00:07:34 #10079 [verbose] > x |> listm.rev, y |> listm.rev
00:07:34 #10080 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2d79a69aa1ffa5f78bdc83d9be988cb009fd5077f57bdaecaf9ffb7624873f43\main.spi
00:07:34 #10081 [verbose] >
00:07:34 #10082 [verbose] > ╭─[ 341.71ms - stdout ]────────────────────────────────────────────────────────╮
00:07:34 #10083 [verbose] > │ () │
00:07:34 #10084 [verbose] > │ │
00:07:34 #10085 [verbose] > │ │
00:07:34 #10086 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:34 #10087 [verbose] >
00:07:34 #10088 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:34 #10089 [verbose] > // // test
00:07:34 #10090 [verbose] >
00:07:34 #10091 [verbose] > listm.init 10i32 id
00:07:34 #10092 [verbose] > |> listm.map (fun x => x, x)
00:07:34 #10093 [verbose] > |> unzip
00:07:34 #10094 [verbose] > |> fun x, y =>
00:07:34 #10095 [verbose] > x |> sum
00:07:34 #10096 [verbose] > |> _assert_eq 45
00:07:34 #10097 [verbose] >
00:07:34 #10098 [verbose] > y |> sum
00:07:34 #10099 [verbose] > |> _assert_eq 45
00:07:35 #10100 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\28ab40bb1f96dc89b2e07dba685e22695852036cb5eaa6b579bcb362737ea857\main.spi
00:07:35 #10101 [verbose] >
00:07:35 #10102 [verbose] > ╭─[ 545.73ms - stdout ]────────────────────────────────────────────────────────╮
00:07:35 #10103 [verbose] > │ let rec method0 () : unit = │
00:07:35 #10104 [verbose] > │ let v0 : string = $"%A{45}" │
00:07:35 #10105 [verbose] > │ System.Console.WriteLine v0 │
00:07:35 #10106 [verbose] > │ let v1 : string = $"__expect / actual: %A{45} / expected: %A{45}" │
00:07:35 #10107 [verbose] > │ let v2 : string = $"%A{45}" │
00:07:35 #10108 [verbose] > │ System.Console.WriteLine v2 │
00:07:35 #10109 [verbose] > │ let v3 : string = $"__expect / actual: %A{45} / expected: %A{45}" │
00:07:35 #10110 [verbose] > │ () │
00:07:35 #10111 [verbose] > │ method0() │
00:07:35 #10112 [verbose] > │ │
00:07:35 #10113 [verbose] > │ 45 │
00:07:35 #10114 [verbose] > │ 45 │
00:07:35 #10115 [verbose] > │ │
00:07:35 #10116 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:35 #10117 [verbose] >
00:07:35 #10118 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:35 #10119 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:35 #10120 [verbose] > │ ## try_index_of │
00:07:35 #10121 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:35 #10122 [verbose] >
00:07:35 #10123 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:35 #10124 [verbose] > inl try_index_of item list =
00:07:35 #10125 [verbose] > inl rec loop i = function
00:07:35 #10126 [verbose] > | [[]] => None
00:07:35 #10127 [verbose] > | x :: xs =>
00:07:35 #10128 [verbose] > if x = item
00:07:35 #10129 [verbose] > then Some i
00:07:35 #10130 [verbose] > else loop (i + 1) xs
00:07:35 #10131 [verbose] > loop 0 list
00:07:35 #10132 [verbose] >
00:07:35 #10133 [verbose] > inl index_of item =
00:07:35 #10134 [verbose] > try_index_of item >> optionm.value
00:07:35 #10135 [verbose] >
00:07:35 #10136 [verbose] > inl try_index_of_ item list =
00:07:35 #10137 [verbose] > let rec loop i = function
00:07:35 #10138 [verbose] > | [[]] => None
00:07:35 #10139 [verbose] > | x :: xs =>
00:07:35 #10140 [verbose] > if x = item
00:07:35 #10141 [verbose] > then Some i
00:07:35 #10142 [verbose] > else loop (i + 1) xs
00:07:35 #10143 [verbose] > loop 0 list
00:07:35 #10144 [verbose] >
00:07:35 #10145 [verbose] > inl index_of_ item =
00:07:35 #10146 [verbose] > try_index_of_ item >> optionm.value
00:07:35 #10147 [verbose] >
00:07:35 #10148 [verbose] > inl try_index_of__ item list =
00:07:35 #10149 [verbose] > inl i = mut 0
00:07:35 #10150 [verbose] > inl list = mut list
00:07:35 #10151 [verbose] > inl result = mut None
00:07:35 #10152 [verbose] > let rec loop () =
00:07:35 #10153 [verbose] > match *list with
00:07:35 #10154 [verbose] > | [[]] => result <- None
00:07:35 #10155 [verbose] > | x :: xs =>
00:07:35 #10156 [verbose] > if x = item
00:07:35 #10157 [verbose] > then result <- Some *i
00:07:35 #10158 [verbose] > else
00:07:35 #10159 [verbose] > i <- *i + 1
00:07:35 #10160 [verbose] > list <- xs
00:07:35 #10161 [verbose] > loop ()
00:07:35 #10162 [verbose] > loop ()
00:07:35 #10163 [verbose] > *result
00:07:35 #10164 [verbose] >
00:07:35 #10165 [verbose] > inl index_of__ item =
00:07:35 #10166 [verbose] > try_index_of__ item >> optionm.value
00:07:35 #10167 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\7a66ad05fb446727c1de704a21b0d1dd8505b6d45a9ea3de28469eb0fefde6e0\main.spi
00:07:35 #10168 [verbose] >
00:07:35 #10169 [verbose] > ╭─[ 329.80ms - stdout ]────────────────────────────────────────────────────────╮
00:07:35 #10170 [verbose] > │ () │
00:07:35 #10171 [verbose] > │ │
00:07:35 #10172 [verbose] > │ │
00:07:35 #10173 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:35 #10174 [verbose] >
00:07:35 #10175 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:35 #10176 [verbose] > // // test
00:07:35 #10177 [verbose] >
00:07:35 #10178 [verbose] > listm.init 10i32 id
00:07:35 #10179 [verbose] > |> index_of 5i32
00:07:35 #10180 [verbose] > |> _assert_eq 5i32
00:07:36 #10181 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b85555b5a485a4dbe3b026f1e384d443c65d7f412d22c8dfb5601f537d6416d1\main.spi
00:07:36 #10182 [verbose] >
00:07:36 #10183 [verbose] > ╭─[ 379.75ms - stdout ]────────────────────────────────────────────────────────╮
00:07:36 #10184 [verbose] > │ let rec method0 () : unit = │
00:07:36 #10185 [verbose] > │ let v0 : string = $"%A{5}" │
00:07:36 #10186 [verbose] > │ System.Console.WriteLine v0 │
00:07:36 #10187 [verbose] > │ let v1 : string = $"__expect / actual: %A{5} / expected: %A{5}" │
00:07:36 #10188 [verbose] > │ () │
00:07:36 #10189 [verbose] > │ method0() │
00:07:36 #10190 [verbose] > │ │
00:07:36 #10191 [verbose] > │ 5 │
00:07:36 #10192 [verbose] > │ │
00:07:36 #10193 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:36 #10194 [verbose] >
00:07:36 #10195 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:36 #10196 [verbose] > // // test
00:07:36 #10197 [verbose] >
00:07:36 #10198 [verbose] > listm.init 10i32 id
00:07:36 #10199 [verbose] > |> try_index_of 10i32
00:07:36 #10200 [verbose] > |> _assert_eq (None : option i32)
00:07:36 #10201 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d12e91710f01d78d2b3156813019f69089d00ddeae44ba72114f57539f4268cc\main.spi
00:07:36 #10202 [verbose] >
00:07:36 #10203 [verbose] > ╭─[ 489.00ms - stdout ]────────────────────────────────────────────────────────╮
00:07:36 #10204 [verbose] > │ type [<Struct>] US0 = │
00:07:36 #10205 [verbose] > │ | US0_0 of f0_0 : int32 │
00:07:36 #10206 [verbose] > │ | US0_1 │
00:07:36 #10207 [verbose] > │ let rec method0 () : unit = │
00:07:36 #10208 [verbose] > │ let v0 : US0 = US0_1 │
00:07:36 #10209 [verbose] > │ let v1 : string = $"%A{v0}" │
00:07:36 #10210 [verbose] > │ System.Console.WriteLine v1 │
00:07:36 #10211 [verbose] > │ let v5 : US0 = US0_1 │
00:07:36 #10212 [verbose] > │ let v6 : US0 = US0_1 │
00:07:36 #10213 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:07:36 #10214 [verbose] > │ () │
00:07:36 #10215 [verbose] > │ method0() │
00:07:36 #10216 [verbose] > │ │
00:07:36 #10217 [verbose] > │ US0_1 │
00:07:36 #10218 [verbose] > │ │
00:07:36 #10219 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:36 #10220 [verbose] >
00:07:36 #10221 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:36 #10222 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:36 #10223 [verbose] > │ ## try_find │
00:07:36 #10224 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:36 #10225 [verbose] >
00:07:36 #10226 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:36 #10227 [verbose] > inl try_find fn list =
00:07:36 #10228 [verbose] > inl rec loop = function
00:07:36 #10229 [verbose] > | [[]] => None
00:07:36 #10230 [verbose] > | x :: xs =>
00:07:36 #10231 [verbose] > if fn x
00:07:36 #10232 [verbose] > then Some x
00:07:36 #10233 [verbose] > else loop xs
00:07:36 #10234 [verbose] > loop list
00:07:36 #10235 [verbose] >
00:07:36 #10236 [verbose] > inl try_find_ fn list =
00:07:36 #10237 [verbose] > let rec loop = function
00:07:36 #10238 [verbose] > | [[]] => None
00:07:36 #10239 [verbose] > | x :: xs =>
00:07:36 #10240 [verbose] > if fn x
00:07:36 #10241 [verbose] > then Some x
00:07:36 #10242 [verbose] > else loop xs
00:07:36 #10243 [verbose] > loop list
00:07:36 #10244 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f470833af056b5f76d68eb3c34a2ffb772a6dd0b2d4980dc7af6c2afc7dad01b\main.spi
00:07:37 #10245 [verbose] >
00:07:37 #10246 [verbose] > ╭─[ 347.07ms - stdout ]────────────────────────────────────────────────────────╮
00:07:37 #10247 [verbose] > │ () │
00:07:37 #10248 [verbose] > │ │
00:07:37 #10249 [verbose] > │ │
00:07:37 #10250 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:37 #10251 [verbose] >
00:07:37 #10252 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:37 #10253 [verbose] > // // test
00:07:37 #10254 [verbose] >
00:07:37 #10255 [verbose] > listm.init 10i32 id
00:07:37 #10256 [verbose] > |> try_find ((=) 5i32)
00:07:37 #10257 [verbose] > |> _assert_eq (Some 5i32)
00:07:37 #10258 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f15d58d3567ac804be4d8c20d683b293967bbc9e9b9ff4d0f90d8e39d049b089\main.spi
00:07:37 #10259 [verbose] >
00:07:37 #10260 [verbose] > ╭─[ 368.20ms - stdout ]────────────────────────────────────────────────────────╮
00:07:37 #10261 [verbose] > │ type [<Struct>] US0 = │
00:07:37 #10262 [verbose] > │ | US0_0 of f0_0 : int32 │
00:07:37 #10263 [verbose] > │ | US0_1 │
00:07:37 #10264 [verbose] > │ let rec method0 () : unit = │
00:07:37 #10265 [verbose] > │ let v0 : US0 = US0_0(5) │
00:07:37 #10266 [verbose] > │ let v1 : string = $"%A{v0}" │
00:07:37 #10267 [verbose] > │ System.Console.WriteLine v1 │
00:07:37 #10268 [verbose] > │ let v5 : US0 = US0_0(5) │
00:07:37 #10269 [verbose] > │ let v6 : US0 = US0_0(5) │
00:07:37 #10270 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:07:37 #10271 [verbose] > │ () │
00:07:37 #10272 [verbose] > │ method0() │
00:07:37 #10273 [verbose] > │ │
00:07:37 #10274 [verbose] > │ US0_0 5 │
00:07:37 #10275 [verbose] > │ │
00:07:37 #10276 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:37 #10277 [verbose] >
00:07:37 #10278 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:37 #10279 [verbose] > inl find x =
00:07:37 #10280 [verbose] > try_find x >> optionm.value
00:07:37 #10281 [verbose] >
00:07:37 #10282 [verbose] > inl find_ x =
00:07:37 #10283 [verbose] > try_find_ x >> optionm.value
00:07:37 #10284 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a1d656817ade1cc5faf1665e3d98701e50b5697b0993805acdf1eb944b430a12\main.spi
00:07:37 #10285 [verbose] >
00:07:37 #10286 [verbose] > ╭─[ 373.12ms - stdout ]────────────────────────────────────────────────────────╮
00:07:37 #10287 [verbose] > │ () │
00:07:37 #10288 [verbose] > │ │
00:07:37 #10289 [verbose] > │ │
00:07:37 #10290 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:37 #10291 [verbose] >
00:07:37 #10292 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:37 #10293 [verbose] > // // test
00:07:37 #10294 [verbose] >
00:07:37 #10295 [verbose] > listm.init 10i32 id
00:07:37 #10296 [verbose] > |> find ((=) 5i32)
00:07:37 #10297 [verbose] > |> _assert_eq 5i32
00:07:38 #10298 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b33576dfafc3b0ad9236b0c5b6df8a8936b2de5c9a47fbaa91214f826b584d2a\main.spi
00:07:38 #10299 [verbose] >
00:07:38 #10300 [verbose] > ╭─[ 307.77ms - stdout ]────────────────────────────────────────────────────────╮
00:07:38 #10301 [verbose] > │ let rec method0 () : unit = │
00:07:38 #10302 [verbose] > │ let v0 : string = $"%A{5}" │
00:07:38 #10303 [verbose] > │ System.Console.WriteLine v0 │
00:07:38 #10304 [verbose] > │ let v1 : string = $"__expect / actual: %A{5} / expected: %A{5}" │
00:07:38 #10305 [verbose] > │ () │
00:07:38 #10306 [verbose] > │ method0() │
00:07:38 #10307 [verbose] > │ │
00:07:38 #10308 [verbose] > │ 5 │
00:07:38 #10309 [verbose] > │ │
00:07:38 #10310 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:38 #10311 [verbose] >
00:07:38 #10312 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:38 #10313 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:38 #10314 [verbose] > │ ## choose │
00:07:38 #10315 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:38 #10316 [verbose] >
00:07:38 #10317 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:38 #10318 [verbose] > inl choose f l =
00:07:38 #10319 [verbose] > (l, [[]])
00:07:38 #10320 [verbose] > ||> listm.foldBack fun x acc =>
00:07:38 #10321 [verbose] > match f x with
00:07:38 #10322 [verbose] > | Some y => y :: acc
00:07:38 #10323 [verbose] > | None => acc
00:07:38 #10324 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\52d0564fe842ee101a450d75bee4a61654cfbefd8fa83ac60070636c48009b63\main.spi
00:07:38 #10325 [verbose] >
00:07:38 #10326 [verbose] > ╭─[ 261.25ms - stdout ]────────────────────────────────────────────────────────╮
00:07:38 #10327 [verbose] > │ () │
00:07:38 #10328 [verbose] > │ │
00:07:38 #10329 [verbose] > │ │
00:07:38 #10330 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:38 #10331 [verbose] >
00:07:38 #10332 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:38 #10333 [verbose] > // // test
00:07:38 #10334 [verbose] >
00:07:38 #10335 [verbose] > listm.init 10i32 id
00:07:38 #10336 [verbose] > |> choose (fun x => if x % 2 = 0 then Some x else None)
00:07:38 #10337 [verbose] > |> _assert_eq [[ 0; 2; 4; 6; 8 ]]
00:07:38 #10338 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2585fea695ba1615766f2525aa1f98f9047870b18d9c935f5b5577f38177b46e\main.spi
00:07:38 #10339 [verbose] >
00:07:38 #10340 [verbose] > ╭─[ 426.63ms - stdout ]────────────────────────────────────────────────────────╮
00:07:38 #10341 [verbose] > │ type UH0 = │
00:07:38 #10342 [verbose] > │ | UH0_0 │
00:07:38 #10343 [verbose] > │ | UH0_1 of int32 * UH0 │
00:07:38 #10344 [verbose] > │ let rec method0 () : unit = │
00:07:38 #10345 [verbose] > │ let v0 : UH0 = UH0_0 │
00:07:38 #10346 [verbose] > │ let v1 : UH0 = UH0_1(8, v0) │
00:07:38 #10347 [verbose] > │ let v2 : UH0 = UH0_1(6, v1) │
00:07:38 #10348 [verbose] > │ let v3 : UH0 = UH0_1(4, v2) │
00:07:38 #10349 [verbose] > │ let v4 : UH0 = UH0_1(2, v3) │
00:07:38 #10350 [verbose] > │ let v5 : UH0 = UH0_1(0, v4) │
00:07:38 #10351 [verbose] > │ let v6 : string = $"%A{v5}" │
00:07:38 #10352 [verbose] > │ System.Console.WriteLine v6 │
00:07:38 #10353 [verbose] > │ let v40 : UH0 = UH0_0 │
00:07:38 #10354 [verbose] > │ let v41 : UH0 = UH0_1(8, v40) │
00:07:38 #10355 [verbose] > │ let v42 : UH0 = UH0_1(6, v41) │
00:07:38 #10356 [verbose] > │ let v43 : UH0 = UH0_1(4, v42) │
00:07:38 #10357 [verbose] > │ let v44 : UH0 = UH0_1(2, v43) │
00:07:38 #10358 [verbose] > │ let v45 : UH0 = UH0_1(0, v44) │
00:07:38 #10359 [verbose] > │ let v46 : UH0 = UH0_0 │
00:07:38 #10360 [verbose] > │ let v47 : UH0 = UH0_1(8, v46) │
00:07:38 #10361 [verbose] > │ let v48 : UH0 = UH0_1(6, v47) │
00:07:38 #10362 [verbose] > │ let v49 : UH0 = UH0_1(4, v48) │
00:07:38 #10363 [verbose] > │ let v50 : UH0 = UH0_1(2, v49) │
00:07:38 #10364 [verbose] > │ let v51 : UH0 = UH0_1(0, v50) │
00:07:38 #10365 [verbose] > │ let v52 : string = $"__expect / actual: %A{v45} / expected: %A{v51}" │
00:07:38 #10366 [verbose] > │ () │
00:07:38 #10367 [verbose] > │ method0() │
00:07:38 #10368 [verbose] > │ │
00:07:38 #10369 [verbose] > │ UH0_1 (0, UH0_1 (2, UH0_1 (4, UH0_1 (6, UH0_1 (8, UH0_0))))) │
00:07:38 #10370 [verbose] > │ │
00:07:38 #10371 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:38 #10372 [verbose] >
00:07:38 #10373 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:38 #10374 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:38 #10375 [verbose] > │ ## zip_with │
00:07:38 #10376 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:38 #10377 [verbose] >
00:07:38 #10378 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:38 #10379 [verbose] > inl zip_with fn xs ys =
00:07:38 #10380 [verbose] > inl rec loop acc xs ys =
00:07:38 #10381 [verbose] > match xs, ys with
00:07:38 #10382 [verbose] > | Cons (x, xs), Cons (y, ys) =>
00:07:38 #10383 [verbose] > loop (fn x y :: acc) xs ys
00:07:38 #10384 [verbose] > | _ => listm.rev acc
00:07:38 #10385 [verbose] > loop [[]] xs ys
00:07:38 #10386 [verbose] >
00:07:38 #10387 [verbose] > inl zip_with_ fn xs ys =
00:07:38 #10388 [verbose] > let rec loop acc xs ys =
00:07:38 #10389 [verbose] > match xs, ys with
00:07:38 #10390 [verbose] > | Cons (x, xs), Cons (y, ys) =>
00:07:38 #10391 [verbose] > loop (fn x y :: acc) xs ys
00:07:38 #10392 [verbose] > | _ => listm.rev acc
00:07:38 #10393 [verbose] > loop [[]] xs ys
00:07:39 #10394 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f797d315007be4849f046bfeafe25cd4f82fe14a989ca09ba94e3c540f8ce22c\main.spi
00:07:39 #10395 [verbose] >
00:07:39 #10396 [verbose] > ╭─[ 285.35ms - stdout ]────────────────────────────────────────────────────────╮
00:07:39 #10397 [verbose] > │ () │
00:07:39 #10398 [verbose] > │ │
00:07:39 #10399 [verbose] > │ │
00:07:39 #10400 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:39 #10401 [verbose] >
00:07:39 #10402 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:39 #10403 [verbose] > // // test
00:07:39 #10404 [verbose] >
00:07:39 #10405 [verbose] > ([[ 1i32; 2; 3 ]], [[ 4; 5; 6 ]])
00:07:39 #10406 [verbose] > ||> zip_with (+)
00:07:39 #10407 [verbose] > |> _assert_eq [[ 5; 7; 9 ]]
00:07:39 #10408 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\85b6594569a490e86108d9636e39fac29dc2c07bdf985e5bb49fb349e9652ca9\main.spi
00:07:39 #10409 [verbose] >
00:07:39 #10410 [verbose] > ╭─[ 413.67ms - stdout ]────────────────────────────────────────────────────────╮
00:07:39 #10411 [verbose] > │ type UH0 = │
00:07:39 #10412 [verbose] > │ | UH0_0 │
00:07:39 #10413 [verbose] > │ | UH0_1 of int32 * UH0 │
00:07:39 #10414 [verbose] > │ let rec method0 () : unit = │
00:07:39 #10415 [verbose] > │ let v0 : UH0 = UH0_0 │
00:07:39 #10416 [verbose] > │ let v1 : UH0 = UH0_1(9, v0) │
00:07:39 #10417 [verbose] > │ let v2 : UH0 = UH0_1(7, v1) │
00:07:39 #10418 [verbose] > │ let v3 : UH0 = UH0_1(5, v2) │
00:07:39 #10419 [verbose] > │ let v4 : string = $"%A{v3}" │
00:07:39 #10420 [verbose] > │ System.Console.WriteLine v4 │
00:07:39 #10421 [verbose] > │ let v23 : UH0 = UH0_0 │
00:07:39 #10422 [verbose] > │ let v24 : UH0 = UH0_1(9, v23) │
00:07:39 #10423 [verbose] > │ let v25 : UH0 = UH0_1(7, v24) │
00:07:39 #10424 [verbose] > │ let v26 : UH0 = UH0_1(5, v25) │
00:07:39 #10425 [verbose] > │ let v27 : UH0 = UH0_0 │
00:07:39 #10426 [verbose] > │ let v28 : UH0 = UH0_1(9, v27) │
00:07:39 #10427 [verbose] > │ let v29 : UH0 = UH0_1(7, v28) │
00:07:39 #10428 [verbose] > │ let v30 : UH0 = UH0_1(5, v29) │
00:07:39 #10429 [verbose] > │ let v31 : string = $"__expect / actual: %A{v26} / expected: %A{v30}" │
00:07:39 #10430 [verbose] > │ () │
00:07:39 #10431 [verbose] > │ method0() │
00:07:39 #10432 [verbose] > │ │
00:07:39 #10433 [verbose] > │ UH0_1 (5, UH0_1 (7, UH0_1 (9, UH0_0))) │
00:07:39 #10434 [verbose] > │ │
00:07:39 #10435 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:39 #10436 [verbose] >
00:07:39 #10437 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:39 #10438 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:39 #10439 [verbose] > │ ## zip │
00:07:39 #10440 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:39 #10441 [verbose] >
00:07:39 #10442 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:39 #10443 [verbose] > inl zip xs ys =
00:07:39 #10444 [verbose] > zip_with pair xs ys
00:07:39 #10445 [verbose] >
00:07:39 #10446 [verbose] > inl zip_ xs ys =
00:07:39 #10447 [verbose] > zip_with_ pair xs ys
00:07:39 #10448 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ef157472de5040334b36f2ee4a8fe6c17105518e4467d4447dd5b318a28386ba\main.spi
00:07:39 #10449 [verbose] >
00:07:39 #10450 [verbose] > ╭─[ 291.73ms - stdout ]────────────────────────────────────────────────────────╮
00:07:39 #10451 [verbose] > │ () │
00:07:39 #10452 [verbose] > │ │
00:07:39 #10453 [verbose] > │ │
00:07:39 #10454 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:39 #10455 [verbose] >
00:07:39 #10456 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:39 #10457 [verbose] > // // test
00:07:39 #10458 [verbose] >
00:07:39 #10459 [verbose] > ([[ 1i32; 2; 3 ]], [[ 4i32; 5; 6 ]])
00:07:39 #10460 [verbose] > ||> zip
00:07:39 #10461 [verbose] > |> _assert_eq [[ 1, 4; 2, 5; 3, 6 ]]
00:07:40 #10462 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0a1792adb0b846b69fdfb52881b1e3e8fb3fa8a7780b5f04ef84253b67b0b8bb\main.spi
00:07:40 #10463 [verbose] >
00:07:40 #10464 [verbose] > ╭─[ 464.70ms - stdout ]────────────────────────────────────────────────────────╮
00:07:40 #10465 [verbose] > │ type UH0 = │
00:07:40 #10466 [verbose] > │ | UH0_0 │
00:07:40 #10467 [verbose] > │ | UH0_1 of int32 * int32 * UH0 │
00:07:40 #10468 [verbose] > │ let rec method0 () : unit = │
00:07:40 #10469 [verbose] > │ let v0 : UH0 = UH0_0 │
00:07:40 #10470 [verbose] > │ let v1 : UH0 = UH0_1(3, 6, v0) │
00:07:40 #10471 [verbose] > │ let v2 : UH0 = UH0_1(2, 5, v1) │
00:07:40 #10472 [verbose] > │ let v3 : UH0 = UH0_1(1, 4, v2) │
00:07:40 #10473 [verbose] > │ let v4 : string = $"%A{v3}" │
00:07:40 #10474 [verbose] > │ System.Console.WriteLine v4 │
00:07:40 #10475 [verbose] > │ let v23 : UH0 = UH0_0 │
00:07:40 #10476 [verbose] > │ let v24 : UH0 = UH0_1(3, 6, v23) │
00:07:40 #10477 [verbose] > │ let v25 : UH0 = UH0_1(2, 5, v24) │
00:07:40 #10478 [verbose] > │ let v26 : UH0 = UH0_1(1, 4, v25) │
00:07:40 #10479 [verbose] > │ let v27 : UH0 = UH0_0 │
00:07:40 #10480 [verbose] > │ let v28 : UH0 = UH0_1(3, 6, v27) │
00:07:40 #10481 [verbose] > │ let v29 : UH0 = UH0_1(2, 5, v28) │
00:07:40 #10482 [verbose] > │ let v30 : UH0 = UH0_1(1, 4, v29) │
00:07:40 #10483 [verbose] > │ let v31 : string = $"__expect / actual: %A{v26} / expected: %A{v30}" │
00:07:40 #10484 [verbose] > │ () │
00:07:40 #10485 [verbose] > │ method0() │
00:07:40 #10486 [verbose] > │ │
00:07:40 #10487 [verbose] > │ UH0_1 (1, 4, UH0_1 (2, 5, UH0_1 (3, 6, UH0_0))) │
00:07:40 #10488 [verbose] > │ │
00:07:40 #10489 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:40 #10490 [verbose] >
00:07:40 #10491 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:40 #10492 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:40 #10493 [verbose] > │ ## indexed │
00:07:40 #10494 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:40 #10495 [verbose] >
00:07:40 #10496 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:40 #10497 [verbose] > inl indexed list =
00:07:40 #10498 [verbose] > (([[]], 0), list)
00:07:40 #10499 [verbose] > ||> listm.fold fun (acc, i) x =>
00:07:40 #10500 [verbose] > (i, x) :: acc, i + 1
00:07:40 #10501 [verbose] > |> fst
00:07:40 #10502 [verbose] > |> listm.rev
00:07:40 #10503 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8a7066d8e433b90babdaebb8d47d942c2edd36bc0360e74f698bf997794471ba\main.spi
00:07:40 #10504 [verbose] >
00:07:40 #10505 [verbose] > ╭─[ 280.57ms - stdout ]────────────────────────────────────────────────────────╮
00:07:40 #10506 [verbose] > │ () │
00:07:40 #10507 [verbose] > │ │
00:07:40 #10508 [verbose] > │ │
00:07:40 #10509 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:40 #10510 [verbose] >
00:07:40 #10511 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:40 #10512 [verbose] > // // test
00:07:40 #10513 [verbose] >
00:07:40 #10514 [verbose] > listm.init 5i32 ((*) 2)
00:07:40 #10515 [verbose] > |> indexed
00:07:40 #10516 [verbose] > |> _assert_eq [[ 0i32, 0; 1, 2; 2, 4; 3, 6; 4, 8 ]]
00:07:40 #10517 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\05178ea6e405d2c79e3b52dcf0141822335bfe72456fff5079d27b600748b1bb\main.spi
00:07:41 #10518 [verbose] >
00:07:41 #10519 [verbose] > ╭─[ 426.94ms - stdout ]────────────────────────────────────────────────────────╮
00:07:41 #10520 [verbose] > │ type UH0 = │
00:07:41 #10521 [verbose] > │ | UH0_0 │
00:07:41 #10522 [verbose] > │ | UH0_1 of int32 * int32 * UH0 │
00:07:41 #10523 [verbose] > │ let rec method0 () : unit = │
00:07:41 #10524 [verbose] > │ let v0 : UH0 = UH0_0 │
00:07:41 #10525 [verbose] > │ let v1 : UH0 = UH0_1(4, 8, v0) │
00:07:41 #10526 [verbose] > │ let v2 : UH0 = UH0_1(3, 6, v1) │
00:07:41 #10527 [verbose] > │ let v3 : UH0 = UH0_1(2, 4, v2) │
00:07:41 #10528 [verbose] > │ let v4 : UH0 = UH0_1(1, 2, v3) │
00:07:41 #10529 [verbose] > │ let v5 : UH0 = UH0_1(0, 0, v4) │
00:07:41 #10530 [verbose] > │ let v6 : string = $"%A{v5}" │
00:07:41 #10531 [verbose] > │ System.Console.WriteLine v6 │
00:07:41 #10532 [verbose] > │ let v40 : UH0 = UH0_0 │
00:07:41 #10533 [verbose] > │ let v41 : UH0 = UH0_1(4, 8, v40) │
00:07:41 #10534 [verbose] > │ let v42 : UH0 = UH0_1(3, 6, v41) │
00:07:41 #10535 [verbose] > │ let v43 : UH0 = UH0_1(2, 4, v42) │
00:07:41 #10536 [verbose] > │ let v44 : UH0 = UH0_1(1, 2, v43) │
00:07:41 #10537 [verbose] > │ let v45 : UH0 = UH0_1(0, 0, v44) │
00:07:41 #10538 [verbose] > │ let v46 : UH0 = UH0_0 │
00:07:41 #10539 [verbose] > │ let v47 : UH0 = UH0_1(4, 8, v46) │
00:07:41 #10540 [verbose] > │ let v48 : UH0 = UH0_1(3, 6, v47) │
00:07:41 #10541 [verbose] > │ let v49 : UH0 = UH0_1(2, 4, v48) │
00:07:41 #10542 [verbose] > │ let v50 : UH0 = UH0_1(1, 2, v49) │
00:07:41 #10543 [verbose] > │ let v51 : UH0 = UH0_1(0, 0, v50) │
00:07:41 #10544 [verbose] > │ let v52 : string = $"__expect / actual: %A{v45} / expected: %A{v51}" │
00:07:41 #10545 [verbose] > │ () │
00:07:41 #10546 [verbose] > │ method0() │
00:07:41 #10547 [verbose] > │ │
00:07:41 #10548 [verbose] > │ UH0_1 (0, 0, UH0_1 (1, 2, UH0_1 (2, 4, UH0_1 (3, 6, UH0_1 (4, 8, UH0_0))))) │
00:07:41 #10549 [verbose] > │ │
00:07:41 #10550 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:41 #10551 [verbose] >
00:07:41 #10552 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:41 #10553 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:41 #10554 [verbose] > │ ## group_by │
00:07:41 #10555 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:41 #10556 [verbose] >
00:07:41 #10557 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:41 #10558 [verbose] > inl group_by fn list =
00:07:41 #10559 [verbose] > (list, [[]])
00:07:41 #10560 [verbose] > ||> listm.foldBack fun x acc =>
00:07:41 #10561 [verbose] > inl xk = fn x
00:07:41 #10562 [verbose] > inl found, new_acc =
00:07:41 #10563 [verbose] > ((false, [[]]), acc)
00:07:41 #10564 [verbose] > ||> listm.fold fun (found, acc') (k, xs) =>
00:07:41 #10565 [verbose] > if k = xk
00:07:41 #10566 [verbose] > then true, (k, x :: xs) :: acc'
00:07:41 #10567 [verbose] > else found, (k, xs) :: acc'
00:07:41 #10568 [verbose] > if found
00:07:41 #10569 [verbose] > then new_acc
00:07:41 #10570 [verbose] > else (xk, [[ x ]]) :: new_acc
00:07:41 #10571 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3126b51b91a1bfd1a77afa8199fab9e2d0805288655fc5edc6c4f52c62945be2\main.spi
00:07:41 #10572 [verbose] >
00:07:41 #10573 [verbose] > ╭─[ 315.05ms - stdout ]────────────────────────────────────────────────────────╮
00:07:41 #10574 [verbose] > │ () │
00:07:41 #10575 [verbose] > │ │
00:07:41 #10576 [verbose] > │ │
00:07:41 #10577 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:41 #10578 [verbose] >
00:07:41 #10579 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:41 #10580 [verbose] > // // test
00:07:41 #10581 [verbose] >
00:07:41 #10582 [verbose] > listm.init 10i32 id
00:07:41 #10583 [verbose] > |> group_by (fun x => x % 2 = 0)
00:07:41 #10584 [verbose] > |> _assert_eq [[ true, [[ 0; 2; 4; 6; 8 ]]; false, [[ 1; 3; 5; 7; 9 ]] ]]
00:07:41 #10585 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\441e5950119dfb64b27c7f16c81d6fa733576f42b9c651669097ed1baac27eae\main.spi
00:07:42 #10586 [verbose] >
00:07:42 #10587 [verbose] > ╭─[ 696.88ms - stdout ]────────────────────────────────────────────────────────╮
00:07:42 #10588 [verbose] > │ type UH0 = │
00:07:42 #10589 [verbose] > │ | UH0_0 │
00:07:42 #10590 [verbose] > │ | UH0_1 of int32 * UH0 │
00:07:42 #10591 [verbose] > │ and UH1 = │
00:07:42 #10592 [verbose] > │ | UH1_0 │
00:07:42 #10593 [verbose] > │ | UH1_1 of bool * UH0 * UH1 │
00:07:42 #10594 [verbose] > │ let rec method0 () : unit = │
00:07:42 #10595 [verbose] > │ let v0 : UH0 = UH0_0 │
00:07:42 #10596 [verbose] > │ let v1 : UH0 = UH0_1(8, v0) │
00:07:42 #10597 [verbose] > │ let v2 : UH0 = UH0_1(6, v1) │
00:07:42 #10598 [verbose] > │ let v3 : UH0 = UH0_1(4, v2) │
00:07:42 #10599 [verbose] > │ let v4 : UH0 = UH0_1(2, v3) │
00:07:42 #10600 [verbose] > │ let v5 : UH0 = UH0_1(0, v4) │
00:07:42 #10601 [verbose] > │ let v6 : UH0 = UH0_0 │
00:07:42 #10602 [verbose] > │ let v7 : UH0 = UH0_1(9, v6) │
00:07:42 #10603 [verbose] > │ let v8 : UH0 = UH0_1(7, v7) │
00:07:42 #10604 [verbose] > │ let v9 : UH0 = UH0_1(5, v8) │
00:07:42 #10605 [verbose] > │ let v10 : UH0 = UH0_1(3, v9) │
00:07:42 #10606 [verbose] > │ let v11 : UH0 = UH0_1(1, v10) │
00:07:42 #10607 [verbose] > │ let v12 : UH1 = UH1_0 │
00:07:42 #10608 [verbose] > │ let v13 : UH1 = UH1_1(false, v11, v12) │
00:07:42 #10609 [verbose] > │ let v14 : UH1 = UH1_1(true, v5, v13) │
00:07:42 #10610 [verbose] > │ let v15 : string = $"%A{v14}" │
00:07:42 #10611 [verbose] > │ System.Console.WriteLine v15 │
00:07:42 #10612 [verbose] > │ let v112 : UH0 = UH0_0 │
00:07:42 #10613 [verbose] > │ let v113 : UH0 = UH0_1(8, v112) │
00:07:42 #10614 [verbose] > │ let v114 : UH0 = UH0_1(6, v113) │
00:07:42 #10615 [verbose] > │ let v115 : UH0 = UH0_1(4, v114) │
00:07:42 #10616 [verbose] > │ let v116 : UH0 = UH0_1(2, v115) │
00:07:42 #10617 [verbose] > │ let v117 : UH0 = UH0_1(0, v116) │
00:07:42 #10618 [verbose] > │ let v118 : UH0 = UH0_0 │
00:07:42 #10619 [verbose] > │ let v119 : UH0 = UH0_1(9, v118) │
00:07:42 #10620 [verbose] > │ let v120 : UH0 = UH0_1(7, v119) │
00:07:42 #10621 [verbose] > │ let v121 : UH0 = UH0_1(5, v120) │
00:07:42 #10622 [verbose] > │ let v122 : UH0 = UH0_1(3, v121) │
00:07:42 #10623 [verbose] > │ let v123 : UH0 = UH0_1(1, v122) │
00:07:42 #10624 [verbose] > │ let v124 : UH1 = UH1_0 │
00:07:42 #10625 [verbose] > │ let v125 : UH1 = UH1_1(false, v123, v124) │
00:07:42 #10626 [verbose] > │ let v126 : UH1 = UH1_1(true, v117, v125) │
00:07:42 #10627 [verbose] > │ let v127 : UH0 = UH0_0 │
00:07:42 #10628 [verbose] > │ let v128 : UH0 = UH0_1(8, v127) │
00:07:42 #10629 [verbose] > │ let v129 : UH0 = UH0_1(6, v128) │
00:07:42 #10630 [verbose] > │ let v130 : UH0 = UH0_1(4, v129) │
00:07:42 #10631 [verbose] > │ let v131 : UH0 = UH0_1(2, v130) │
00:07:42 #10632 [verbose] > │ let v132 : UH0 = UH0_1(0, v131) │
00:07:42 #10633 [verbose] > │ let v133 : UH0 = UH0_0 │
00:07:42 #10634 [verbose] > │ let v134 : UH0 = UH0_1(9, v133) │
00:07:42 #10635 [verbose] > │ let v135 : UH0 = UH0_1(7, v134) │
00:07:42 #10636 [verbose] > │ let v136 : UH0 = UH0_1(5, v135) │
00:07:42 #10637 [verbose] > │ let v137 : UH0 = UH0_1(3, v136) │
00:07:42 #10638 [verbose] > │ let v138 : UH0 = UH0_1(1, v137) │
00:07:42 #10639 [verbose] > │ let v139 : UH1 = UH1_0 │
00:07:42 #10640 [verbose] > │ let v140 : UH1 = UH1_1(false, v138, v139) │
00:07:42 #10641 [verbose] > │ let v141 : UH1 = UH1_1(true, v132, v140) │
00:07:42 #10642 [verbose] > │ let v142 : string = $"__expect / actual: %A{v126} / expected: %A{v141}" │
00:07:42 #10643 [verbose] > │ () │
00:07:42 #10644 [verbose] > │ method0() │
00:07:42 #10645 [verbose] > │ │
00:07:42 #10646 [verbose] > │ UH1_1 │
00:07:42 #10647 [verbose] > │ (true, UH0_1 (0, UH0_1 (2, UH0_1 (4, UH0_1 (6, UH0_1 (8, UH0_0))))), │
00:07:42 #10648 [verbose] > │ UH1_1 │
00:07:42 #10649 [verbose] > │ (false, UH0_1 (1, UH0_1 (3, UH0_1 (5, UH0_1 (7, UH0_1 (9, UH0_0))))), │
00:07:42 #10650 [verbose] > │ UH1_0)) │
00:07:42 #10651 [verbose] > │ │
00:07:42 #10652 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:42 #10653 [verbose] >
00:07:42 #10654 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:42 #10655 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:42 #10656 [verbose] > │ ## forall' │
00:07:42 #10657 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:42 #10658 [verbose] >
00:07:42 #10659 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:42 #10660 [verbose] > inl forall' fn (head :: tail) =
00:07:42 #10661 [verbose] > (true, tail)
00:07:42 #10662 [verbose] > ||> listm.fold fun acc x =>
00:07:42 #10663 [verbose] > acc && x = head
00:07:42 #10664 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3416274befa154653ca040273d51b4702148fff0f03f4035390705c26f4fa24f\main.spi
00:07:42 #10665 [verbose] >
00:07:42 #10666 [verbose] > ╭─[ 379.72ms - stdout ]────────────────────────────────────────────────────────╮
00:07:42 #10667 [verbose] > │ () │
00:07:42 #10668 [verbose] > │ │
00:07:42 #10669 [verbose] > │ │
00:07:42 #10670 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:42 #10671 [verbose] >
00:07:42 #10672 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:42 #10673 [verbose] > // // test
00:07:42 #10674 [verbose] >
00:07:42 #10675 [verbose] > [[ 1i32; 1; 1; 1; 1 ]]
00:07:42 #10676 [verbose] > |> forall' ((=) 1i32)
00:07:42 #10677 [verbose] > |> _assert_eq true
00:07:42 #10678 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\26f6ca5c1022c436904a3eed8d3c4449d6ede09c3a9115dfa024b641c455c143\main.spi
00:07:42 #10679 [verbose] >
00:07:42 #10680 [verbose] > ╭─[ 306.22ms - stdout ]────────────────────────────────────────────────────────╮
00:07:42 #10681 [verbose] > │ let rec method0 () : unit = │
00:07:42 #10682 [verbose] > │ let v0 : string = $"%A{true}" │
00:07:42 #10683 [verbose] > │ System.Console.WriteLine v0 │
00:07:42 #10684 [verbose] > │ let v1 : string = $"__expect / actual: %A{true} / expected: %A{true}" │
00:07:42 #10685 [verbose] > │ () │
00:07:42 #10686 [verbose] > │ method0() │
00:07:42 #10687 [verbose] > │ │
00:07:42 #10688 [verbose] > │ true │
00:07:42 #10689 [verbose] > │ │
00:07:42 #10690 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:42 #10691 [verbose] >
00:07:42 #10692 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:42 #10693 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:42 #10694 [verbose] > │ ## last │
00:07:42 #10695 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:42 #10696 [verbose] >
00:07:42 #10697 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:42 #10698 [verbose] > inl last list =
00:07:42 #10699 [verbose] > list
00:07:42 #10700 [verbose] > |> listm.rev
00:07:42 #10701 [verbose] > |> item 0i32
00:07:43 #10702 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\7a53e9cbca58002a032ee718b7f6f988de644c3d3b589ec5c7362496a384bdf2\main.spi
00:07:43 #10703 [verbose] >
00:07:43 #10704 [verbose] > ╭─[ 278.20ms - stdout ]────────────────────────────────────────────────────────╮
00:07:43 #10705 [verbose] > │ () │
00:07:43 #10706 [verbose] > │ │
00:07:43 #10707 [verbose] > │ │
00:07:43 #10708 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:43 #10709 [verbose] >
00:07:43 #10710 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:43 #10711 [verbose] > // // test
00:07:43 #10712 [verbose] >
00:07:43 #10713 [verbose] > listm.init 10i32 id
00:07:43 #10714 [verbose] > |> last
00:07:43 #10715 [verbose] > |> _assert_eq 9
00:07:43 #10716 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\842f7e4259df0245e788e84225fbaadd2d9cb1d56c6734ccb2041678ee4dcafb\main.spi
00:07:43 #10717 [verbose] >
00:07:43 #10718 [verbose] > ╭─[ 372.32ms - stdout ]────────────────────────────────────────────────────────╮
00:07:43 #10719 [verbose] > │ let rec method0 () : unit = │
00:07:43 #10720 [verbose] > │ let v0 : string = $"%A{9}" │
00:07:43 #10721 [verbose] > │ System.Console.WriteLine v0 │
00:07:43 #10722 [verbose] > │ let v1 : string = $"__expect / actual: %A{9} / expected: %A{9}" │
00:07:43 #10723 [verbose] > │ () │
00:07:43 #10724 [verbose] > │ method0() │
00:07:43 #10725 [verbose] > │ │
00:07:43 #10726 [verbose] > │ 9 │
00:07:43 #10727 [verbose] > │ │
00:07:43 #10728 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:43 #10729 [verbose] >
00:07:43 #10730 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:43 #10731 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:43 #10732 [verbose] > │ ## try_pick │
00:07:43 #10733 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:43 #10734 [verbose] >
00:07:43 #10735 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:43 #10736 [verbose] > inl try_pick fn list =
00:07:43 #10737 [verbose] > inl rec body fn = function
00:07:43 #10738 [verbose] > | [[]] => None
00:07:43 #10739 [verbose] > | x :: xs =>
00:07:43 #10740 [verbose] > match fn x with
00:07:43 #10741 [verbose] > | Some y => Some y
00:07:43 #10742 [verbose] > | None => loop xs
00:07:43 #10743 [verbose] > and inl loop list =
00:07:43 #10744 [verbose] > if var_is list |> not
00:07:43 #10745 [verbose] > then body fn list
00:07:43 #10746 [verbose] > else
00:07:43 #10747 [verbose] > inl fn = join fn
00:07:43 #10748 [verbose] > inl list = dyn list
00:07:43 #10749 [verbose] > join body fn list
00:07:43 #10750 [verbose] > loop list
00:07:43 #10751 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\26be3a5bfb039a1af7d1eaa7599619b47d1ab6b4a5e764d8079df2cbf5a8a6bb\main.spi
00:07:43 #10752 [verbose] >
00:07:43 #10753 [verbose] > ╭─[ 300.64ms - stdout ]────────────────────────────────────────────────────────╮
00:07:43 #10754 [verbose] > │ () │
00:07:43 #10755 [verbose] > │ │
00:07:43 #10756 [verbose] > │ │
00:07:43 #10757 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:43 #10758 [verbose] >
00:07:43 #10759 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:43 #10760 [verbose] > // // test
00:07:43 #10761 [verbose] >
00:07:43 #10762 [verbose] > listm.init 10i32 id
00:07:43 #10763 [verbose] > |> try_pick (fun x => if x = 5i32 then Some x else None)
00:07:43 #10764 [verbose] > |> _assert_eq (Some 5i32)
00:07:44 #10765 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8895bcb76084a0ca52948d19c9ac5762b9ff3023607403ac4eeabd2d5f15326b\main.spi
00:07:44 #10766 [verbose] >
00:07:44 #10767 [verbose] > ╭─[ 503.95ms - stdout ]────────────────────────────────────────────────────────╮
00:07:44 #10768 [verbose] > │ type [<Struct>] US0 = │
00:07:44 #10769 [verbose] > │ | US0_0 of f0_0 : int32 │
00:07:44 #10770 [verbose] > │ | US0_1 │
00:07:44 #10771 [verbose] > │ let rec method0 () : unit = │
00:07:44 #10772 [verbose] > │ let v0 : US0 = US0_0(5) │
00:07:44 #10773 [verbose] > │ let v1 : string = $"%A{v0}" │
00:07:44 #10774 [verbose] > │ System.Console.WriteLine v1 │
00:07:44 #10775 [verbose] > │ let v5 : US0 = US0_0(5) │
00:07:44 #10776 [verbose] > │ let v6 : US0 = US0_0(5) │
00:07:44 #10777 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:07:44 #10778 [verbose] > │ () │
00:07:44 #10779 [verbose] > │ method0() │
00:07:44 #10780 [verbose] > │ │
00:07:44 #10781 [verbose] > │ US0_0 5 │
00:07:44 #10782 [verbose] > │ │
00:07:44 #10783 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:47 #10784 [verbose] > [NbConvertApp] Converting notebook listm'.dib.ipynb to html
00:07:47 #10785 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:07:47 #10786 [verbose] > validate(nb)
00:07:49 #10787 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:07:49 #10788 [verbose] > return _pygments_highlight(
00:07:49 #10789 [verbose] > [NbConvertApp] Writing 384069 bytes to listm'.dib.html
00:07:51 #10790 [debug] executeAsync / exitCode: 0 / output.Length: 75283
00:07:51 #10791 [debug] main / executeCommand / exitCode: 0
00:07:51 #10792 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 benchmark.dib" -Retries 3"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:07:55 #10793 [verbose] >
00:07:55 #10794 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:07:55 #10795 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:07:55 #10796 [verbose] > │ ## benchmark (Polyglot) │
00:07:55 #10797 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:07:55 #10798 [verbose] >
00:07:55 #10799 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:07:55 #10800 [verbose] > // // test
00:07:55 #10801 [verbose] >
00:07:55 #10802 [verbose] > open testing
00:08:01 #10803 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:08:03 #10804 [verbose] >
00:08:03 #10805 [verbose] > ╭─[ 8.32s - stdout ]───────────────────────────────────────────────────────────╮
00:08:03 #10806 [verbose] > │ () │
00:08:03 #10807 [verbose] > │ │
00:08:03 #10808 [verbose] > │ │
00:08:03 #10809 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:03 #10810 [verbose] >
00:08:03 #10811 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:08:03 #10812 [verbose] > inl (/@) x = listm'.(/@) x
00:08:03 #10813 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\819235c6d5790f122eb44705884c5dc6cd36e4532df1e305d1bd4cb59cd7f25d\main.spi
00:08:04 #10814 [verbose] >
00:08:04 #10815 [verbose] > ╭─[ 336.70ms - stdout ]────────────────────────────────────────────────────────╮
00:08:04 #10816 [verbose] > │ () │
00:08:04 #10817 [verbose] > │ │
00:08:04 #10818 [verbose] > │ │
00:08:04 #10819 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:04 #10820 [verbose] >
00:08:04 #10821 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:08:04 #10822 [verbose] > inl gc_collect () =
00:08:04 #10823 [verbose] > run_target function
00:08:04 #10824 [verbose] > | Fsharp _ => fun () => $"System.GC.Collect ()"
00:08:04 #10825 [verbose] > | _ => fun () => ()
00:08:04 #10826 [verbose] >
00:08:04 #10827 [verbose] > inl printfn x =
00:08:04 #10828 [verbose] > console.write_line x
00:08:04 #10829 [verbose] >
00:08:04 #10830 [verbose] > nominal stopwatch = $"System.Diagnostics.Stopwatch"
00:08:04 #10831 [verbose] >
00:08:04 #10832 [verbose] > inl stopwatch () : stopwatch =
00:08:04 #10833 [verbose] > $"`stopwatch" ()
00:08:04 #10834 [verbose] >
00:08:04 #10835 [verbose] > inl stopwatch_elapsed_milliseconds (stopwatch : stopwatch) : i64 =
00:08:04 #10836 [verbose] > $"!stopwatch.ElapsedMilliseconds"
00:08:04 #10837 [verbose] >
00:08:04 #10838 [verbose] > inl stopwatch_start (stopwatch : stopwatch) : () =
00:08:04 #10839 [verbose] > $"!stopwatch.Start ()"
00:08:04 #10840 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c12c9da4851177ff9eb7d668d5d9b9d7155315b3448526fc4dad85db9c80f008\main.spi
00:08:04 #10841 [verbose] >
00:08:04 #10842 [verbose] > ╭─[ 472.34ms - stdout ]────────────────────────────────────────────────────────╮
00:08:04 #10843 [verbose] > │ () │
00:08:04 #10844 [verbose] > │ │
00:08:04 #10845 [verbose] > │ │
00:08:04 #10846 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:04 #10847 [verbose] >
00:08:04 #10848 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:08:04 #10849 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:08:04 #10850 [verbose] > │ ## test_case_result │
00:08:04 #10851 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:04 #10852 [verbose] >
00:08:04 #10853 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:08:04 #10854 [verbose] > type test_case_result =
00:08:04 #10855 [verbose] > {
00:08:04 #10856 [verbose] > Input : string
00:08:04 #10857 [verbose] > Expected : string
00:08:04 #10858 [verbose] > Result : string
00:08:04 #10859 [verbose] > TimeList : a u64 i64
00:08:04 #10860 [verbose] > }
00:08:04 #10861 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\148c2af0894b5a10127c2d84d5acaa7b373dbf2fae9f5dcc77d95949eefe781e\main.spi
00:08:04 #10862 [verbose] >
00:08:04 #10863 [verbose] > ╭─[ 304.31ms - stdout ]────────────────────────────────────────────────────────╮
00:08:04 #10864 [verbose] > │ () │
00:08:04 #10865 [verbose] > │ │
00:08:04 #10866 [verbose] > │ │
00:08:04 #10867 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:04 #10868 [verbose] >
00:08:04 #10869 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:08:04 #10870 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:08:04 #10871 [verbose] > │ ## run │
00:08:04 #10872 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:04 #10873 [verbose] >
00:08:04 #10874 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:08:04 #10875 [verbose] > inl run forall input expected.
00:08:04 #10876 [verbose] > count
00:08:04 #10877 [verbose] > (solutions : list (string * (input -> expected)))
00:08:04 #10878 [verbose] > ((input, expected) : (input * expected))
00:08:04 #10879 [verbose] > : test_case_result
00:08:04 #10880 [verbose] > =
00:08:04 #10881 [verbose] > inl input_str = input |> sm'.format_debug
00:08:04 #10882 [verbose] >
00:08:04 #10883 [verbose] > printfn ""
00:08:04 #10884 [verbose] > printfn ($"$\"Solution: {!input_str} \"" : string)
00:08:04 #10885 [verbose] >
00:08:04 #10886 [verbose] > inl performance_invoke (fn : () -> expected) =
00:08:04 #10887 [verbose] > gc_collect ()
00:08:04 #10888 [verbose] > inl stopwatch = stopwatch ()
00:08:04 #10889 [verbose] > stopwatch |> stopwatch_start
00:08:04 #10890 [verbose] > inl time1 = stopwatch |> stopwatch_elapsed_milliseconds
00:08:04 #10891 [verbose] > inl result : expected =
00:08:04 #10892 [verbose] > am'.init_series 0 count 1i32
00:08:04 #10893 [verbose] > |> am'.parallel_map fun _n => fn ()
00:08:04 #10894 [verbose] > |> am'.last
00:08:04 #10895 [verbose] > inl time2 = (stopwatch |> stopwatch_elapsed_milliseconds) - time1
00:08:04 #10896 [verbose] > result, time2
00:08:04 #10897 [verbose] >
00:08:04 #10898 [verbose] > inl results_with_time : a u64 _ =
00:08:04 #10899 [verbose] > solutions
00:08:04 #10900 [verbose] > |> listm'.indexed
00:08:04 #10901 [verbose] > |> listm.toArray
00:08:04 #10902 [verbose] > |> am.map fun ((i : i32), (test_name, solution)) =>
00:08:04 #10903 [verbose] > inl result, time = performance_invoke fun () => solution input
00:08:04 #10904 [verbose] > printfn ($"$\"Test case {!i + 1}. {!test_name}. Time: {!time} \"" :
00:08:04 #10905 [verbose] > string)
00:08:04 #10906 [verbose] > result, time
00:08:04 #10907 [verbose] >
00:08:04 #10908 [verbose] > match results_with_time |> am.map fst with
00:08:04 #10909 [verbose] > | array when length array <= 1 => ()
00:08:04 #10910 [verbose] > | array when array |> am.forall' ((=) (index array 0)) => ()
00:08:04 #10911 [verbose] > | results => failwith ($"$\"Challenge error: {!results}\"" : string)
00:08:04 #10912 [verbose] >
00:08:04 #10913 [verbose] > {
00:08:04 #10914 [verbose] > Input = input_str
00:08:04 #10915 [verbose] > Expected = expected |> sm'.format_debug
00:08:04 #10916 [verbose] > Result = results_with_time |> am.map fst |> fun array => index array 0
00:08:04 #10917 [verbose] > |> sm'.format_debug
00:08:04 #10918 [verbose] > TimeList = results_with_time |> am.map snd
00:08:04 #10919 [verbose] > }
00:08:05 #10920 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ce00a7aedc3e680e2047e2ba63ee93662c35fa7a7e8e36661bdf9573f2247743\main.spi
00:08:05 #10921 [verbose] >
00:08:05 #10922 [verbose] > ╭─[ 382.95ms - stdout ]────────────────────────────────────────────────────────╮
00:08:05 #10923 [verbose] > │ () │
00:08:05 #10924 [verbose] > │ │
00:08:05 #10925 [verbose] > │ │
00:08:05 #10926 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:05 #10927 [verbose] >
00:08:05 #10928 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:08:05 #10929 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:08:05 #10930 [verbose] > │ ## run_all │
00:08:05 #10931 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:05 #10932 [verbose] >
00:08:05 #10933 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:08:05 #10934 [verbose] > inl run_all forall input expected.
00:08:05 #10935 [verbose] > test_name
00:08:05 #10936 [verbose] > count
00:08:05 #10937 [verbose] > (solutions : list (string * (input -> expected)))
00:08:05 #10938 [verbose] > test_cases
00:08:05 #10939 [verbose] > =
00:08:05 #10940 [verbose] > printfn ""
00:08:05 #10941 [verbose] > printfn ""
00:08:05 #10942 [verbose] > printfn ($"$\"Test: {!test_name}\"" : string)
00:08:05 #10943 [verbose] > test_cases
00:08:05 #10944 [verbose] > |> listm.toArray
00:08:05 #10945 [verbose] > |> am.map (run count solutions)
00:08:05 #10946 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\09f4beb98e30972ee46a70ac363b86ba2dc139a2e0ac26f0275307f58e9eed17\main.spi
00:08:05 #10947 [verbose] >
00:08:05 #10948 [verbose] > ╭─[ 359.02ms - stdout ]────────────────────────────────────────────────────────╮
00:08:05 #10949 [verbose] > │ () │
00:08:05 #10950 [verbose] > │ │
00:08:05 #10951 [verbose] > │ │
00:08:05 #10952 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:05 #10953 [verbose] >
00:08:05 #10954 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:08:05 #10955 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:08:05 #10956 [verbose] > │ ## sort_result_list │
00:08:05 #10957 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:05 #10958 [verbose] >
00:08:05 #10959 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:08:05 #10960 [verbose] > inl sort_result_list results =
00:08:05 #10961 [verbose] > inl table =
00:08:05 #10962 [verbose] > inl rows =
00:08:05 #10963 [verbose] > results
00:08:05 #10964 [verbose] > |> am.map fun (result : test_case_result) =>
00:08:05 #10965 [verbose] > inl best =
00:08:05 #10966 [verbose] > result.TimeList
00:08:05 #10967 [verbose] > |> am'.indexed
00:08:05 #10968 [verbose] > |> am.map fun (i, time) =>
00:08:05 #10969 [verbose] > i + 1i64, time
00:08:05 #10970 [verbose] > |> am'.sort_by snd
00:08:05 #10971 [verbose] > |> fun array => index array 0i32
00:08:05 #10972 [verbose] > |> sm'.format_debug
00:08:05 #10973 [verbose] > inl row =
00:08:05 #10974 [verbose] > [[
00:08:05 #10975 [verbose] > result.Input
00:08:05 #10976 [verbose] > result.Expected
00:08:05 #10977 [verbose] > result.Result
00:08:05 #10978 [verbose] > best
00:08:05 #10979 [verbose] > ]]
00:08:05 #10980 [verbose] > inl color : option console.console_color =
00:08:05 #10981 [verbose] > open console
00:08:05 #10982 [verbose] > match result.Expected = result.Result with
00:08:05 #10983 [verbose] > | true => Some $"`console_color.DarkGreen"
00:08:05 #10984 [verbose] > | false => Some $"`console_color.DarkRed"
00:08:05 #10985 [verbose] > row, color
00:08:05 #10986 [verbose] >
00:08:05 #10987 [verbose] > inl header =
00:08:05 #10988 [verbose] > [[
00:08:05 #10989 [verbose] > [[
00:08:05 #10990 [verbose] > "Input"
00:08:05 #10991 [verbose] > "Expected"
00:08:05 #10992 [verbose] > "Result"
00:08:05 #10993 [verbose] > "Best"
00:08:05 #10994 [verbose] > ]]
00:08:05 #10995 [verbose] > [[
00:08:05 #10996 [verbose] > "---"
00:08:05 #10997 [verbose] > "---"
00:08:05 #10998 [verbose] > "---"
00:08:05 #10999 [verbose] > "---"
00:08:05 #11000 [verbose] > ]]
00:08:05 #11001 [verbose] > ]]
00:08:05 #11002 [verbose] > |> listm.map fun row => row, None
00:08:05 #11003 [verbose] > |> listm.toArray
00:08:05 #11004 [verbose] > rows |> am.append header
00:08:05 #11005 [verbose] >
00:08:05 #11006 [verbose] > inl formattedTable =
00:08:05 #11007 [verbose] > inl lengthMap : mapm.map i32 i64 =
00:08:05 #11008 [verbose] > table
00:08:05 #11009 [verbose] > |> am.map (fst >> listm.toArray)
00:08:05 #11010 [verbose] > |> am'.transpose
00:08:05 #11011 [verbose] > |> am.map fun column =>
00:08:05 #11012 [verbose] > column
00:08:05 #11013 [verbose] > |> am.map sm.length
00:08:05 #11014 [verbose] > |> am'.sort_descending
00:08:05 #11015 [verbose] > |> am'.try_item 0i32
00:08:05 #11016 [verbose] > |> optionm'.default_value 0i64
00:08:05 #11017 [verbose] > |> am'.indexed
00:08:05 #11018 [verbose] > |> fun (x : a i32 _) => x
00:08:05 #11019 [verbose] > |> mapm.of_array
00:08:05 #11020 [verbose] > table
00:08:05 #11021 [verbose] > |> am.map fun (row, color) =>
00:08:05 #11022 [verbose] > inl newRow =
00:08:05 #11023 [verbose] > row
00:08:05 #11024 [verbose] > |> listm'.indexed
00:08:05 #11025 [verbose] > |> listm.map fun (i, cell) =>
00:08:05 #11026 [verbose] > cell |> sm'.pad_right (lengthMap |> mapm.item i |> conv)
00:08:05 #11027 [verbose] > |> listm.toArray
00:08:05 #11028 [verbose] > newRow, color
00:08:05 #11029 [verbose] >
00:08:05 #11030 [verbose] > printfn ""
00:08:05 #11031 [verbose] > formattedTable
00:08:05 #11032 [verbose] > |> am.iter fun ((row : a i32 string), color) =>
00:08:05 #11033 [verbose] > match color with
00:08:05 #11034 [verbose] > | Some color => color |> console.set_foreground_color
00:08:05 #11035 [verbose] > | None => console.reset_color ()
00:08:05 #11036 [verbose] >
00:08:05 #11037 [verbose] > printfn (row |> sm'.join' "\t| ")
00:08:05 #11038 [verbose] >
00:08:05 #11039 [verbose] > console.reset_color ()
00:08:05 #11040 [verbose] >
00:08:05 #11041 [verbose] > inl averages : a u64 _ =
00:08:05 #11042 [verbose] > results
00:08:05 #11043 [verbose] > |> am.map fun result =>
00:08:05 #11044 [verbose] > result.TimeList
00:08:05 #11045 [verbose] > |> am.map ($"float" : i64 -> f64)
00:08:05 #11046 [verbose] > |> am'.transpose
00:08:05 #11047 [verbose] > |> am.map am'.average
00:08:05 #11048 [verbose] > |> am.map ($"int64" : f64 -> i64)
00:08:05 #11049 [verbose] > |> am'.indexed
00:08:05 #11050 [verbose] >
00:08:05 #11051 [verbose] > printfn ""
00:08:05 #11052 [verbose] > printfn "Average Ranking "
00:08:05 #11053 [verbose] > averages
00:08:05 #11054 [verbose] > |> am'.sort_by snd
00:08:05 #11055 [verbose] > |> am.iter fun ((i : i32), avg) =>
00:08:05 #11056 [verbose] > printfn ($"$\"Test case %d{!i + 1}. Average Time: %A{!avg} \"" :
00:08:05 #11057 [verbose] > string)
00:08:05 #11058 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1a2788b5ca4a2aaa62bbc35db9de0428fc34394e25edf2ac502037605cfe2210\main.spi
00:08:05 #11059 [verbose] >
00:08:05 #11060 [verbose] > ╭─[ 393.93ms - stdout ]────────────────────────────────────────────────────────╮
00:08:05 #11061 [verbose] > │ () │
00:08:05 #11062 [verbose] > │ │
00:08:05 #11063 [verbose] > │ │
00:08:05 #11064 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:05 #11065 [verbose] >
00:08:05 #11066 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:08:05 #11067 [verbose] > // // test
00:08:05 #11068 [verbose] >
00:08:05 #11069 [verbose] > inl is_fast () =
00:08:05 #11070 [verbose] > false
00:08:06 #11071 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\575256e3ba537f7595bcb8b4b5172cb4b4011c4ed7a5cb2fbcc4a03b33584948\main.spi
00:08:06 #11072 [verbose] >
00:08:06 #11073 [verbose] > ╭─[ 264.48ms - stdout ]────────────────────────────────────────────────────────╮
00:08:06 #11074 [verbose] > │ () │
00:08:06 #11075 [verbose] > │ │
00:08:06 #11076 [verbose] > │ │
00:08:06 #11077 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:06 #11078 [verbose] >
00:08:06 #11079 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:08:06 #11080 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:08:06 #11081 [verbose] > │ ## empty2Tests │
00:08:06 #11082 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:06 #11083 [verbose] >
00:08:06 #11084 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:08:06 #11085 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:08:06 #11086 [verbose] > │ Test: Empty2 │
00:08:06 #11087 [verbose] > │ │
00:08:06 #11088 [verbose] > │ Solution: (a, a) │
00:08:06 #11089 [verbose] > │ Test case 1. A. Time: 59L │
00:08:06 #11090 [verbose] > │ │
00:08:06 #11091 [verbose] > │ Solution: (a, a) │
00:08:06 #11092 [verbose] > │ Test case 1. A. Time: 53L │
00:08:06 #11093 [verbose] > │ │
00:08:06 #11094 [verbose] > │ Input | Expected | Result | Best │
00:08:06 #11095 [verbose] > │ --- | --- | --- | --- │
00:08:06 #11096 [verbose] > │ (a, a) | a | a | (1, 59) │
00:08:06 #11097 [verbose] > │ (a, a) | a | a | (1, 53) │
00:08:06 #11098 [verbose] > │ │
00:08:06 #11099 [verbose] > │ Averages │
00:08:06 #11100 [verbose] > │ Test case 1. Average Time: 56L │
00:08:06 #11101 [verbose] > │ │
00:08:06 #11102 [verbose] > │ Ranking │
00:08:06 #11103 [verbose] > │ Test case 1. Average Time: 56L │
00:08:06 #11104 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:06 #11105 [verbose] >
00:08:06 #11106 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:08:06 #11107 [verbose] > // // test
00:08:06 #11108 [verbose] >
00:08:06 #11109 [verbose] > inl get_solutions () =
00:08:06 #11110 [verbose] > [[
00:08:06 #11111 [verbose] > "A",
00:08:06 #11112 [verbose] > fun (a, _b) =>
00:08:06 #11113 [verbose] > a
00:08:06 #11114 [verbose] >
00:08:06 #11115 [verbose] > "B",
00:08:06 #11116 [verbose] > fun (_a, b) =>
00:08:06 #11117 [verbose] > b
00:08:06 #11118 [verbose] > ]]
00:08:06 #11119 [verbose] >
00:08:06 #11120 [verbose] > inl rec empty_2_tests () =
00:08:06 #11121 [verbose] > inl test_cases = [[
00:08:06 #11122 [verbose] > ("a", "a"), "a"
00:08:06 #11123 [verbose] > ("b", "b"), "b"
00:08:06 #11124 [verbose] > ]]
00:08:06 #11125 [verbose] >
00:08:06 #11126 [verbose] > inl solutions = get_solutions ()
00:08:06 #11127 [verbose] >
00:08:06 #11128 [verbose] > // inl is_fast () = true
00:08:06 #11129 [verbose] >
00:08:06 #11130 [verbose] > inl count =
00:08:06 #11131 [verbose] > if is_fast ()
00:08:06 #11132 [verbose] > then 1000i32
00:08:06 #11133 [verbose] > else 2000000i32
00:08:06 #11134 [verbose] >
00:08:06 #11135 [verbose] > run_all (nameof empty_2_tests) count solutions test_cases
00:08:06 #11136 [verbose] > |> sort_result_list
00:08:06 #11137 [verbose] >
00:08:06 #11138 [verbose] > empty_2_tests ()
00:08:06 #11139 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\dea8ed6ed469796005161e1648fc8a19e78e51e2c5b520f8d99d0731a884f139\main.spi
00:08:25 #11140 [verbose] >
00:08:26 #11141 [verbose] > ╭─[ 19.76s - stdout ]──────────────────────────────────────────────────────────╮
00:08:26 #11142 [verbose] > │ type UH0 = │
00:08:26 #11143 [verbose] > │ | UH0_0 │
00:08:26 #11144 [verbose] > │ | UH0_1 of string * string * string * UH0 │
00:08:26 #11145 [verbose] > │ and Mut0 = {mutable l0 : uint64} │
00:08:26 #11146 [verbose] > │ and UH1 = │
00:08:26 #11147 [verbose] > │ | UH1_0 │
00:08:26 #11148 [verbose] > │ | UH1_1 of int32 * string * (struct (string * string) -> string) * UH1 │
00:08:26 #11149 [verbose] > │ and Mut1 = {mutable l0 : int32} │
00:08:26 #11150 [verbose] > │ and UH2 = │
00:08:26 #11151 [verbose] > │ | UH2_0 │
00:08:26 #11152 [verbose] > │ | UH2_1 of string * UH2 │
00:08:26 #11153 [verbose] > │ and [<Struct>] US0 = │
00:08:26 #11154 [verbose] > │ | US0_0 of f0_0 : System.ConsoleColor │
00:08:26 #11155 [verbose] > │ | US0_1 │
00:08:26 #11156 [verbose] > │ and UH3 = │
00:08:26 #11157 [verbose] > │ | UH3_0 │
00:08:26 #11158 [verbose] > │ | UH3_1 of int64 * int64 * UH3 │
00:08:26 #11159 [verbose] > │ and Mut2 = {mutable l0 : uint64; mutable l1 : UH3; mutable l2 : int64} │
00:08:26 #11160 [verbose] > │ and UH4 = │
00:08:26 #11161 [verbose] > │ | UH4_0 │
00:08:26 #11162 [verbose] > │ | UH4_1 of UH2 * US0 * UH4 │
00:08:26 #11163 [verbose] > │ and [<Struct>] US1 = │
00:08:26 #11164 [verbose] > │ | US1_0 of f0_0 : int64 │
00:08:26 #11165 [verbose] > │ | US1_1 │
00:08:26 #11166 [verbose] > │ and UH5 = │
00:08:26 #11167 [verbose] > │ | UH5_0 │
00:08:26 #11168 [verbose] > │ | UH5_1 of int32 * int64 * UH5 │
00:08:26 #11169 [verbose] > │ and Mut3 = {mutable l0 : uint64; mutable l1 : UH5; mutable l2 : int32} │
00:08:26 #11170 [verbose] > │ and UH6 = │
00:08:26 #11171 [verbose] > │ | UH6_0 │
00:08:26 #11172 [verbose] > │ | UH6_1 of int32 * string * UH6 │
00:08:26 #11173 [verbose] > │ let rec method2 (v0 : UH0, v1 : uint64) : uint64 = │
00:08:26 #11174 [verbose] > │ match v0 with │
00:08:26 #11175 [verbose] > │ | UH0_1(v2, v3, v4, v5) -> (* Cons *) │
00:08:26 #11176 [verbose] > │ let v6 : uint64 = v1 + 1UL │
00:08:26 #11177 [verbose] > │ method2(v5, v6) │
00:08:26 #11178 [verbose] > │ | UH0_0 -> (* Nil *) │
00:08:26 #11179 [verbose] > │ v1 │
00:08:26 #11180 [verbose] > │ and method3 (v0 : (struct (string * string * string) []), v1 : UH0, v2 : │
00:08:26 #11181 [verbose] > │ uint64) : uint64 = │
00:08:26 #11182 [verbose] > │ match v1 with │
00:08:26 #11183 [verbose] > │ | UH0_1(v3, v4, v5, v6) -> (* Cons *) │
00:08:26 #11184 [verbose] > │ v0.[int v2] <- struct (v3, v4, v5) │
00:08:26 #11185 [verbose] > │ let v7 : uint64 = v2 + 1UL │
00:08:26 #11186 [verbose] > │ method3(v0, v6, v7) │
00:08:26 #11187 [verbose] > │ | UH0_0 -> (* Nil *) │
00:08:26 #11188 [verbose] > │ v2 │
00:08:26 #11189 [verbose] > │ and method1 (v0 : UH0) : (struct (string * string * string) []) = │
00:08:26 #11190 [verbose] > │ let v1 : uint64 = 0UL │
00:08:26 #11191 [verbose] > │ let v2 : uint64 = method2(v0, v1) │
00:08:26 #11192 [verbose] > │ let v3 : (struct (string * string * string) []) = │
00:08:26 #11193 [verbose] > │ Array.zeroCreate<struct (string * string * string)> │
00:08:26 #11194 [verbose] > │ (System.Convert.ToInt32(v2)) │
00:08:26 #11195 [verbose] > │ let v4 : uint64 = 0UL │
00:08:26 #11196 [verbose] > │ let v5 : uint64 = method3(v3, v0, v4) │
00:08:26 #11197 [verbose] > │ v3 │
00:08:26 #11198 [verbose] > │ and method4 (v0 : uint64, v1 : Mut0) : bool = │
00:08:26 #11199 [verbose] > │ let v2 : uint64 = v1.l0 │
00:08:26 #11200 [verbose] > │ let v3 : bool = v2 < v0 │
00:08:26 #11201 [verbose] > │ v3 │
00:08:26 #11202 [verbose] > │ and closure1 () struct (v0 : string, v1 : string) : string = │
00:08:26 #11203 [verbose] > │ v0 │
00:08:26 #11204 [verbose] > │ and closure2 () struct (v0 : string, v1 : string) : string = │
00:08:26 #11205 [verbose] > │ v1 │
00:08:26 #11206 [verbose] > │ and method6 (v0 : UH1, v1 : uint64) : uint64 = │
00:08:26 #11207 [verbose] > │ match v0 with │
00:08:26 #11208 [verbose] > │ | UH1_1(v2, v3, v4, v5) -> (* Cons *) │
00:08:26 #11209 [verbose] > │ let v6 : uint64 = v1 + 1UL │
00:08:26 #11210 [verbose] > │ method6(v5, v6) │
00:08:26 #11211 [verbose] > │ | UH1_0 -> (* Nil *) │
00:08:26 #11212 [verbose] > │ v1 │
00:08:26 #11213 [verbose] > │ and method7 (v0 : (struct (int32 * string * (struct (string * string) -> │
00:08:26 #11214 [verbose] > │ string)) []), v1 : UH1, v2 : uint64) : uint64 = │
00:08:26 #11215 [verbose] > │ match v1 with │
00:08:26 #11216 [verbose] > │ | UH1_1(v3, v4, v5, v6) -> (* Cons *) │
00:08:26 #11217 [verbose] > │ v0.[int v2] <- struct (v3, v4, v5) │
00:08:26 #11218 [verbose] > │ let v7 : uint64 = v2 + 1UL │
00:08:26 #11219 [verbose] > │ method7(v0, v6, v7) │
00:08:26 #11220 [verbose] > │ | UH1_0 -> (* Nil *) │
00:08:26 #11221 [verbose] > │ v2 │
00:08:26 #11222 [verbose] > │ and method5 (v0 : UH1) : (struct (int32 * string * (struct (string * string) │
00:08:26 #11223 [verbose] > │ -> string)) []) = │
00:08:26 #11224 [verbose] > │ let v1 : uint64 = 0UL │
00:08:26 #11225 [verbose] > │ let v2 : uint64 = method6(v0, v1) │
00:08:26 #11226 [verbose] > │ let v3 : (struct (int32 * string * (struct (string * string) -> string)) │
00:08:26 #11227 [verbose] > │ []) = Array.zeroCreate<struct (int32 * string * (struct (string * string) -> │
00:08:26 #11228 [verbose] > │ string))> (System.Convert.ToInt32(v2)) │
00:08:26 #11229 [verbose] > │ let v4 : uint64 = 0UL │
00:08:26 #11230 [verbose] > │ let v5 : uint64 = method7(v3, v0, v4) │
00:08:26 #11231 [verbose] > │ v3 │
00:08:26 #11232 [verbose] > │ and method8 (v0 : Mut1) : bool = │
00:08:26 #11233 [verbose] > │ let v1 : int32 = v0.l0 │
00:08:26 #11234 [verbose] > │ let v2 : bool = v1 < 2000001 │
00:08:26 #11235 [verbose] > │ v2 │
00:08:26 #11236 [verbose] > │ and closure3 (v0 : string, v1 : string, v2 : (struct (string * string) -> │
00:08:26 #11237 [verbose] > │ string)) (v3 : int32) : string = │
00:08:26 #11238 [verbose] > │ v2 struct (v0, v1) │
00:08:26 #11239 [verbose] > │ and method9 (v0 : string, v1 : (string []), v2 : uint64) : bool = │
00:08:26 #11240 [verbose] > │ let v3 : uint64 = System.Convert.ToUInt64 v1.Length │
00:08:26 #11241 [verbose] > │ let v4 : bool = v2 < v3 │
00:08:26 #11242 [verbose] > │ if v4 then │
00:08:26 #11243 [verbose] > │ let v5 : string = v1.[int v2] │
00:08:26 #11244 [verbose] > │ let v6 : bool = v0 = v5 │
00:08:26 #11245 [verbose] > │ if v6 then │
00:08:26 #11246 [verbose] > │ let v7 : uint64 = v2 + 1UL │
00:08:26 #11247 [verbose] > │ method9(v0, v1, v7) │
00:08:26 #11248 [verbose] > │ else │
00:08:26 #11249 [verbose] > │ false │
00:08:26 #11250 [verbose] > │ else │
00:08:26 #11251 [verbose] > │ true │
00:08:26 #11252 [verbose] > │ and method10 (v0 : uint64, v1 : Mut2) : bool = │
00:08:26 #11253 [verbose] > │ let v2 : uint64 = v1.l0 │
00:08:26 #11254 [verbose] > │ let v3 : bool = v2 < v0 │
00:08:26 #11255 [verbose] > │ v3 │
00:08:26 #11256 [verbose] > │ and method11 (v0 : UH3, v1 : UH3) : UH3 = │
00:08:26 #11257 [verbose] > │ match v0 with │
00:08:26 #11258 [verbose] > │ | UH3_1(v2, v3, v4) -> (* Cons *) │
00:08:26 #11259 [verbose] > │ let v5 : UH3 = UH3_1(v2, v3, v1) │
00:08:26 #11260 [verbose] > │ method11(v4, v5) │
00:08:26 #11261 [verbose] > │ | UH3_0 -> (* Nil *) │
00:08:26 #11262 [verbose] > │ v1 │
00:08:26 #11263 [verbose] > │ and method13 (v0 : UH3, v1 : int32) : int32 = │
00:08:26 #11264 [verbose] > │ match v0 with │
00:08:26 #11265 [verbose] > │ | UH3_1(v2, v3, v4) -> (* Cons *) │
00:08:26 #11266 [verbose] > │ let v5 : int32 = v1 + 1 │
00:08:26 #11267 [verbose] > │ method13(v4, v5) │
00:08:26 #11268 [verbose] > │ | UH3_0 -> (* Nil *) │
00:08:26 #11269 [verbose] > │ v1 │
00:08:26 #11270 [verbose] > │ and method14 (v0 : (struct (int64 * int64) []), v1 : UH3, v2 : int32) : │
00:08:26 #11271 [verbose] > │ int32 = │
00:08:26 #11272 [verbose] > │ match v1 with │
00:08:26 #11273 [verbose] > │ | UH3_1(v3, v4, v5) -> (* Cons *) │
00:08:26 #11274 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:08:26 #11275 [verbose] > │ let v6 : int32 = v2 + 1 │
00:08:26 #11276 [verbose] > │ method14(v0, v5, v6) │
00:08:26 #11277 [verbose] > │ | UH3_0 -> (* Nil *) │
00:08:26 #11278 [verbose] > │ v2 │
00:08:26 #11279 [verbose] > │ and method12 (v0 : UH3) : (struct (int64 * int64) []) = │
00:08:26 #11280 [verbose] > │ let v1 : int32 = 0 │
00:08:26 #11281 [verbose] > │ let v2 : int32 = method13(v0, v1) │
00:08:26 #11282 [verbose] > │ let v3 : (struct (int64 * int64) []) = Array.zeroCreate<struct (int64 * │
00:08:26 #11283 [verbose] > │ int64)> (v2) │
00:08:26 #11284 [verbose] > │ let v4 : int32 = 0 │
00:08:26 #11285 [verbose] > │ let v5 : int32 = method14(v3, v0, v4) │
00:08:26 #11286 [verbose] > │ v3 │
00:08:26 #11287 [verbose] > │ and method15 (v0 : int32, v1 : Mut1) : bool = │
00:08:26 #11288 [verbose] > │ let v2 : int32 = v1.l0 │
00:08:26 #11289 [verbose] > │ let v3 : bool = v2 < v0 │
00:08:26 #11290 [verbose] > │ v3 │
00:08:26 #11291 [verbose] > │ and closure4 () struct (v0 : int64, v1 : int64) : int64 = │
00:08:26 #11292 [verbose] > │ v1 │
00:08:26 #11293 [verbose] > │ and method17 (v0 : UH4, v1 : uint64) : uint64 = │
00:08:26 #11294 [verbose] > │ match v0 with │
00:08:26 #11295 [verbose] > │ | UH4_1(v2, v3, v4) -> (* Cons *) │
00:08:26 #11296 [verbose] > │ let v5 : uint64 = v1 + 1UL │
00:08:26 #11297 [verbose] > │ method17(v4, v5) │
00:08:26 #11298 [verbose] > │ | UH4_0 -> (* Nil *) │
00:08:26 #11299 [verbose] > │ v1 │
00:08:26 #11300 [verbose] > │ and method18 (v0 : (struct (UH2 * US0) []), v1 : UH4, v2 : uint64) : uint64 │
00:08:26 #11301 [verbose] > │ = │
00:08:26 #11302 [verbose] > │ match v1 with │
00:08:26 #11303 [verbose] > │ | UH4_1(v3, v4, v5) -> (* Cons *) │
00:08:26 #11304 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:08:26 #11305 [verbose] > │ let v6 : uint64 = v2 + 1UL │
00:08:26 #11306 [verbose] > │ method18(v0, v5, v6) │
00:08:26 #11307 [verbose] > │ | UH4_0 -> (* Nil *) │
00:08:26 #11308 [verbose] > │ v2 │
00:08:26 #11309 [verbose] > │ and method16 (v0 : UH4) : (struct (UH2 * US0) []) = │
00:08:26 #11310 [verbose] > │ let v1 : uint64 = 0UL │
00:08:26 #11311 [verbose] > │ let v2 : uint64 = method17(v0, v1) │
00:08:26 #11312 [verbose] > │ let v3 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)> │
00:08:26 #11313 [verbose] > │ (System.Convert.ToInt32(v2)) │
00:08:26 #11314 [verbose] > │ let v4 : uint64 = 0UL │
00:08:26 #11315 [verbose] > │ let v5 : uint64 = method18(v3, v0, v4) │
00:08:26 #11316 [verbose] > │ v3 │
00:08:26 #11317 [verbose] > │ and method20 (v0 : UH2, v1 : uint64) : uint64 = │
00:08:26 #11318 [verbose] > │ match v0 with │
00:08:26 #11319 [verbose] > │ | UH2_1(v2, v3) -> (* Cons *) │
00:08:26 #11320 [verbose] > │ let v4 : uint64 = v1 + 1UL │
00:08:26 #11321 [verbose] > │ method20(v3, v4) │
00:08:26 #11322 [verbose] > │ | UH2_0 -> (* Nil *) │
00:08:26 #11323 [verbose] > │ v1 │
00:08:26 #11324 [verbose] > │ and method21 (v0 : (string []), v1 : UH2, v2 : uint64) : uint64 = │
00:08:26 #11325 [verbose] > │ match v1 with │
00:08:26 #11326 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:08:26 #11327 [verbose] > │ v0.[int v2] <- v3 │
00:08:26 #11328 [verbose] > │ let v5 : uint64 = v2 + 1UL │
00:08:26 #11329 [verbose] > │ method21(v0, v4, v5) │
00:08:26 #11330 [verbose] > │ | UH2_0 -> (* Nil *) │
00:08:26 #11331 [verbose] > │ v2 │
00:08:26 #11332 [verbose] > │ and method19 (v0 : UH2) : (string []) = │
00:08:26 #11333 [verbose] > │ let v1 : uint64 = 0UL │
00:08:26 #11334 [verbose] > │ let v2 : uint64 = method20(v0, v1) │
00:08:26 #11335 [verbose] > │ let v3 : (string []) = Array.zeroCreate<string> │
00:08:26 #11336 [verbose] > │ (System.Convert.ToInt32(v2)) │
00:08:26 #11337 [verbose] > │ let v4 : uint64 = 0UL │
00:08:26 #11338 [verbose] > │ let v5 : uint64 = method21(v3, v0, v4) │
00:08:26 #11339 [verbose] > │ v3 │
00:08:26 #11340 [verbose] > │ and closure5 () (v0 : int64) : US1 = │
00:08:26 #11341 [verbose] > │ US1_0(v0) │
00:08:26 #11342 [verbose] > │ and method22 () : (int64 -> US1) = │
00:08:26 #11343 [verbose] > │ closure5() │
00:08:26 #11344 [verbose] > │ and method23 (v0 : uint64, v1 : Mut3) : bool = │
00:08:26 #11345 [verbose] > │ let v2 : uint64 = v1.l0 │
00:08:26 #11346 [verbose] > │ let v3 : bool = v2 < v0 │
00:08:26 #11347 [verbose] > │ v3 │
00:08:26 #11348 [verbose] > │ and method24 (v0 : UH5, v1 : UH5) : UH5 = │
00:08:26 #11349 [verbose] > │ match v0 with │
00:08:26 #11350 [verbose] > │ | UH5_1(v2, v3, v4) -> (* Cons *) │
00:08:26 #11351 [verbose] > │ let v5 : UH5 = UH5_1(v2, v3, v1) │
00:08:26 #11352 [verbose] > │ method24(v4, v5) │
00:08:26 #11353 [verbose] > │ | UH5_0 -> (* Nil *) │
00:08:26 #11354 [verbose] > │ v1 │
00:08:26 #11355 [verbose] > │ and method26 (v0 : UH5, v1 : int32) : int32 = │
00:08:26 #11356 [verbose] > │ match v0 with │
00:08:26 #11357 [verbose] > │ | UH5_1(v2, v3, v4) -> (* Cons *) │
00:08:26 #11358 [verbose] > │ let v5 : int32 = v1 + 1 │
00:08:26 #11359 [verbose] > │ method26(v4, v5) │
00:08:26 #11360 [verbose] > │ | UH5_0 -> (* Nil *) │
00:08:26 #11361 [verbose] > │ v1 │
00:08:26 #11362 [verbose] > │ and method27 (v0 : (struct (int32 * int64) []), v1 : UH5, v2 : int32) : │
00:08:26 #11363 [verbose] > │ int32 = │
00:08:26 #11364 [verbose] > │ match v1 with │
00:08:26 #11365 [verbose] > │ | UH5_1(v3, v4, v5) -> (* Cons *) │
00:08:26 #11366 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:08:26 #11367 [verbose] > │ let v6 : int32 = v2 + 1 │
00:08:26 #11368 [verbose] > │ method27(v0, v5, v6) │
00:08:26 #11369 [verbose] > │ | UH5_0 -> (* Nil *) │
00:08:26 #11370 [verbose] > │ v2 │
00:08:26 #11371 [verbose] > │ and method25 (v0 : UH5) : (struct (int32 * int64) []) = │
00:08:26 #11372 [verbose] > │ let v1 : int32 = 0 │
00:08:26 #11373 [verbose] > │ let v2 : int32 = method26(v0, v1) │
00:08:26 #11374 [verbose] > │ let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 * │
00:08:26 #11375 [verbose] > │ int64)> (v2) │
00:08:26 #11376 [verbose] > │ let v4 : int32 = 0 │
00:08:26 #11377 [verbose] > │ let v5 : int32 = method27(v3, v0, v4) │
00:08:26 #11378 [verbose] > │ v3 │
00:08:26 #11379 [verbose] > │ and method28 (v0 : UH2, v1 : UH6, v2 : int32) : struct (UH6 * int32) = │
00:08:26 #11380 [verbose] > │ match v0 with │
00:08:26 #11381 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:08:26 #11382 [verbose] > │ let v5 : int32 = v2 + 1 │
00:08:26 #11383 [verbose] > │ let v6 : UH6 = UH6_1(v2, v3, v1) │
00:08:26 #11384 [verbose] > │ method28(v4, v6, v5) │
00:08:26 #11385 [verbose] > │ | UH2_0 -> (* Nil *) │
00:08:26 #11386 [verbose] > │ struct (v1, v2) │
00:08:26 #11387 [verbose] > │ and method29 (v0 : UH6, v1 : UH6) : UH6 = │
00:08:26 #11388 [verbose] > │ match v0 with │
00:08:26 #11389 [verbose] > │ | UH6_1(v2, v3, v4) -> (* Cons *) │
00:08:26 #11390 [verbose] > │ let v5 : UH6 = UH6_1(v2, v3, v1) │
00:08:26 #11391 [verbose] > │ method29(v4, v5) │
00:08:26 #11392 [verbose] > │ | UH6_0 -> (* Nil *) │
00:08:26 #11393 [verbose] > │ v1 │
00:08:26 #11394 [verbose] > │ and method30 (v0 : Map<int32, int64>, v1 : UH6, v2 : UH2) : UH2 = │
00:08:26 #11395 [verbose] > │ match v1 with │
00:08:26 #11396 [verbose] > │ | UH6_1(v3, v4, v5) -> (* Cons *) │
00:08:26 #11397 [verbose] > │ let v6 : UH2 = method30(v0, v5, v2) │
00:08:26 #11398 [verbose] > │ let v7 : int64 = v0.[v3] │
00:08:26 #11399 [verbose] > │ let v8 : int32 = int32 v7 │
00:08:26 #11400 [verbose] > │ let v9 : string = v4.PadRight v8 │
00:08:26 #11401 [verbose] > │ UH2_1(v9, v6) │
00:08:26 #11402 [verbose] > │ | UH6_0 -> (* Nil *) │
00:08:26 #11403 [verbose] > │ v2 │
00:08:26 #11404 [verbose] > │ and method32 (v0 : UH2, v1 : int32) : int32 = │
00:08:26 #11405 [verbose] > │ match v0 with │
00:08:26 #11406 [verbose] > │ | UH2_1(v2, v3) -> (* Cons *) │
00:08:26 #11407 [verbose] > │ let v4 : int32 = v1 + 1 │
00:08:26 #11408 [verbose] > │ method32(v3, v4) │
00:08:26 #11409 [verbose] > │ | UH2_0 -> (* Nil *) │
00:08:26 #11410 [verbose] > │ v1 │
00:08:26 #11411 [verbose] > │ and method33 (v0 : (string []), v1 : UH2, v2 : int32) : int32 = │
00:08:26 #11412 [verbose] > │ match v1 with │
00:08:26 #11413 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:08:26 #11414 [verbose] > │ v0.[int v2] <- v3 │
00:08:26 #11415 [verbose] > │ let v5 : int32 = v2 + 1 │
00:08:26 #11416 [verbose] > │ method33(v0, v4, v5) │
00:08:26 #11417 [verbose] > │ | UH2_0 -> (* Nil *) │
00:08:26 #11418 [verbose] > │ v2 │
00:08:26 #11419 [verbose] > │ and method31 (v0 : UH2) : (string []) = │
00:08:26 #11420 [verbose] > │ let v1 : int32 = 0 │
00:08:26 #11421 [verbose] > │ let v2 : int32 = method32(v0, v1) │
00:08:26 #11422 [verbose] > │ let v3 : (string []) = Array.zeroCreate<string> (v2) │
00:08:26 #11423 [verbose] > │ let v4 : int32 = 0 │
00:08:26 #11424 [verbose] > │ let v5 : int32 = method33(v3, v0, v4) │
00:08:26 #11425 [verbose] > │ v3 │
00:08:26 #11426 [verbose] > │ and method35 (v0 : UH5, v1 : uint64) : uint64 = │
00:08:26 #11427 [verbose] > │ match v0 with │
00:08:26 #11428 [verbose] > │ | UH5_1(v2, v3, v4) -> (* Cons *) │
00:08:26 #11429 [verbose] > │ let v5 : uint64 = v1 + 1UL │
00:08:26 #11430 [verbose] > │ method35(v4, v5) │
00:08:26 #11431 [verbose] > │ | UH5_0 -> (* Nil *) │
00:08:26 #11432 [verbose] > │ v1 │
00:08:26 #11433 [verbose] > │ and method36 (v0 : (struct (int32 * int64) []), v1 : UH5, v2 : uint64) : │
00:08:26 #11434 [verbose] > │ uint64 = │
00:08:26 #11435 [verbose] > │ match v1 with │
00:08:26 #11436 [verbose] > │ | UH5_1(v3, v4, v5) -> (* Cons *) │
00:08:26 #11437 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:08:26 #11438 [verbose] > │ let v6 : uint64 = v2 + 1UL │
00:08:26 #11439 [verbose] > │ method36(v0, v5, v6) │
00:08:26 #11440 [verbose] > │ | UH5_0 -> (* Nil *) │
00:08:26 #11441 [verbose] > │ v2 │
00:08:26 #11442 [verbose] > │ and method34 (v0 : UH5) : (struct (int32 * int64) []) = │
00:08:26 #11443 [verbose] > │ let v1 : uint64 = 0UL │
00:08:26 #11444 [verbose] > │ let v2 : uint64 = method35(v0, v1) │
00:08:26 #11445 [verbose] > │ let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 * │
00:08:26 #11446 [verbose] > │ int64)> (System.Convert.ToInt32(v2)) │
00:08:26 #11447 [verbose] > │ let v4 : uint64 = 0UL │
00:08:26 #11448 [verbose] > │ let v5 : uint64 = method36(v3, v0, v4) │
00:08:26 #11449 [verbose] > │ v3 │
00:08:26 #11450 [verbose] > │ and closure6 () struct (v0 : int32, v1 : int64) : int64 = │
00:08:26 #11451 [verbose] > │ v1 │
00:08:26 #11452 [verbose] > │ and closure0 () () : unit = │
00:08:26 #11453 [verbose] > │ let v0 : (unit -> unit) = closure0() │
00:08:26 #11454 [verbose] > │ let v1 : string = nameof v0 │
00:08:26 #11455 [verbose] > │ let v2 : string = "" │
00:08:26 #11456 [verbose] > │ System.Console.WriteLine v2 │
00:08:26 #11457 [verbose] > │ System.Console.WriteLine v2 │
00:08:26 #11458 [verbose] > │ let v3 : string = $"Test: {v1}" │
00:08:26 #11459 [verbose] > │ System.Console.WriteLine v3 │
00:08:26 #11460 [verbose] > │ let v4 : string = "a" │
00:08:26 #11461 [verbose] > │ let v5 : string = "b" │
00:08:26 #11462 [verbose] > │ let v6 : UH0 = UH0_0 │
00:08:26 #11463 [verbose] > │ let v7 : UH0 = UH0_1(v5, v5, v5, v6) │
00:08:26 #11464 [verbose] > │ let v8 : UH0 = UH0_1(v4, v4, v4, v7) │
00:08:26 #11465 [verbose] > │ let v9 : (struct (string * string * string) []) = method1(v8) │
00:08:26 #11466 [verbose] > │ let v10 : uint64 = System.Convert.ToUInt64 v9.Length │
00:08:26 #11467 [verbose] > │ let v11 : (struct (string * string * string * (int64 [])) []) = │
00:08:26 #11468 [verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))> │
00:08:26 #11469 [verbose] > │ (System.Convert.ToInt32(v10)) │
00:08:26 #11470 [verbose] > │ let v12 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11471 [verbose] > │ while method4(v10, v12) do │
00:08:26 #11472 [verbose] > │ let v14 : uint64 = v12.l0 │
00:08:26 #11473 [verbose] > │ let struct (v15 : string, v16 : string, v17 : string) = v9.[int v14] │
00:08:26 #11474 [verbose] > │ let v18 : string = $"%A{struct (v15, v16)}" │
00:08:26 #11475 [verbose] > │ System.Console.WriteLine v2 │
00:08:26 #11476 [verbose] > │ let v19 : string = $"Solution: {v18} " │
00:08:26 #11477 [verbose] > │ System.Console.WriteLine v19 │
00:08:26 #11478 [verbose] > │ let v20 : int32 = 0 │
00:08:26 #11479 [verbose] > │ let v21 : string = "A" │
00:08:26 #11480 [verbose] > │ let v22 : (struct (string * string) -> string) = closure1() │
00:08:26 #11481 [verbose] > │ let v23 : int32 = 1 │
00:08:26 #11482 [verbose] > │ let v24 : string = "B" │
00:08:26 #11483 [verbose] > │ let v25 : (struct (string * string) -> string) = closure2() │
00:08:26 #11484 [verbose] > │ let v26 : UH1 = UH1_0 │
00:08:26 #11485 [verbose] > │ let v27 : UH1 = UH1_1(v23, v24, v25, v26) │
00:08:26 #11486 [verbose] > │ let v28 : UH1 = UH1_1(v20, v21, v22, v27) │
00:08:26 #11487 [verbose] > │ let v29 : (struct (int32 * string * (struct (string * string) -> │
00:08:26 #11488 [verbose] > │ string)) []) = method5(v28) │
00:08:26 #11489 [verbose] > │ let v30 : uint64 = System.Convert.ToUInt64 v29.Length │
00:08:26 #11490 [verbose] > │ let v31 : (struct (string * int64) []) = Array.zeroCreate<struct │
00:08:26 #11491 [verbose] > │ (string * int64)> (System.Convert.ToInt32(v30)) │
00:08:26 #11492 [verbose] > │ let v32 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11493 [verbose] > │ while method4(v30, v32) do │
00:08:26 #11494 [verbose] > │ let v34 : uint64 = v32.l0 │
00:08:26 #11495 [verbose] > │ let struct (v35 : int32, v36 : string, v37 : (struct (string * │
00:08:26 #11496 [verbose] > │ string) -> string)) = v29.[int v34] │
00:08:26 #11497 [verbose] > │ let v38 : unit option = None │
00:08:26 #11498 [verbose] > │ let mutable _v38 = v38 │
00:08:26 #11499 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:26 #11500 [verbose] > │ () │
00:08:26 #11501 [verbose] > │ #endif │
00:08:26 #11502 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:26 #11503 [verbose] > │ () │
00:08:26 #11504 [verbose] > │ #endif │
00:08:26 #11505 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:26 #11506 [verbose] > │ () │
00:08:26 #11507 [verbose] > │ #endif │
00:08:26 #11508 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:26 #11509 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:26 #11510 [verbose] > │ System.GC.Collect () │
00:08:26 #11511 [verbose] > │ () │
00:08:26 #11512 [verbose] > │ #endif │
00:08:26 #11513 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:26 #11514 [verbose] > │ () │
00:08:26 #11515 [verbose] > │ #endif │
00:08:26 #11516 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:26 #11517 [verbose] > │ FABLE_COMPILER_DART │
00:08:26 #11518 [verbose] > │ Unchecked.defaultof<unit> │
00:08:26 #11519 [verbose] > │ #endif │
00:08:26 #11520 [verbose] > │ |> fun x -> _v38 <- Some x │
00:08:26 #11521 [verbose] > │ _v38.Value │
00:08:26 #11522 [verbose] > │ let v39 : (unit -> System.Diagnostics.Stopwatch) = │
00:08:26 #11523 [verbose] > │ System.Diagnostics.Stopwatch │
00:08:26 #11524 [verbose] > │ let v40 : System.Diagnostics.Stopwatch = v39 () │
00:08:26 #11525 [verbose] > │ v40.Start () │
00:08:26 #11526 [verbose] > │ let v41 : int64 = v40.ElapsedMilliseconds │
00:08:26 #11527 [verbose] > │ let v42 : (int32 []) = Array.zeroCreate<int32> (2000001) │
00:08:26 #11528 [verbose] > │ let v43 : Mut1 = {l0 = 0} : Mut1 │
00:08:26 #11529 [verbose] > │ while method8(v43) do │
00:08:26 #11530 [verbose] > │ let v45 : int32 = v43.l0 │
00:08:26 #11531 [verbose] > │ v42.[int v45] <- v45 │
00:08:26 #11532 [verbose] > │ let v46 : int32 = v45 + 1 │
00:08:26 #11533 [verbose] > │ v43.l0 <- v46 │
00:08:26 #11534 [verbose] > │ () │
00:08:26 #11535 [verbose] > │ let v47 : ((int32 -> string) -> ((int32 []) -> (string []))) = │
00:08:26 #11536 [verbose] > │ Array.Parallel.map │
00:08:26 #11537 [verbose] > │ let v48 : (int32 -> string) = closure3(v15, v16, v37) │
00:08:26 #11538 [verbose] > │ let v49 : ((int32 []) -> (string [])) = v47 v48 │
00:08:26 #11539 [verbose] > │ let v50 : (string []) = v49 v42 │
00:08:26 #11540 [verbose] > │ let v51 : int32 = v50.Length │
00:08:26 #11541 [verbose] > │ let v52 : int32 = v51 - 1 │
00:08:26 #11542 [verbose] > │ let v53 : string = v50.[int v52] │
00:08:26 #11543 [verbose] > │ let v54 : int64 = v40.ElapsedMilliseconds │
00:08:26 #11544 [verbose] > │ let v55 : int64 = v54 - v41 │
00:08:26 #11545 [verbose] > │ let v56 : string = $"Test case {v35 + 1}. {v36}. Time: {v55} " │
00:08:26 #11546 [verbose] > │ System.Console.WriteLine v56 │
00:08:26 #11547 [verbose] > │ v31.[int v34] <- struct (v53, v55) │
00:08:26 #11548 [verbose] > │ let v57 : uint64 = v34 + 1UL │
00:08:26 #11549 [verbose] > │ v32.l0 <- v57 │
00:08:26 #11550 [verbose] > │ () │
00:08:26 #11551 [verbose] > │ let v58 : uint64 = System.Convert.ToUInt64 v31.Length │
00:08:26 #11552 [verbose] > │ let v59 : (string []) = Array.zeroCreate<string> │
00:08:26 #11553 [verbose] > │ (System.Convert.ToInt32(v58)) │
00:08:26 #11554 [verbose] > │ let v60 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11555 [verbose] > │ while method4(v58, v60) do │
00:08:26 #11556 [verbose] > │ let v62 : uint64 = v60.l0 │
00:08:26 #11557 [verbose] > │ let struct (v63 : string, v64 : int64) = v31.[int v62] │
00:08:26 #11558 [verbose] > │ v59.[int v62] <- v63 │
00:08:26 #11559 [verbose] > │ let v65 : uint64 = v62 + 1UL │
00:08:26 #11560 [verbose] > │ v60.l0 <- v65 │
00:08:26 #11561 [verbose] > │ () │
00:08:26 #11562 [verbose] > │ let v66 : uint64 = System.Convert.ToUInt64 v59.Length │
00:08:26 #11563 [verbose] > │ let v67 : bool = v66 <= 1UL │
00:08:26 #11564 [verbose] > │ if v67 then │
00:08:26 #11565 [verbose] > │ () │
00:08:26 #11566 [verbose] > │ else │
00:08:26 #11567 [verbose] > │ let v68 : string = v59.[int 0UL] │
00:08:26 #11568 [verbose] > │ let v69 : uint64 = 0UL │
00:08:26 #11569 [verbose] > │ let v70 : bool = method9(v68, v59, v69) │
00:08:26 #11570 [verbose] > │ if v70 then │
00:08:26 #11571 [verbose] > │ () │
00:08:26 #11572 [verbose] > │ else │
00:08:26 #11573 [verbose] > │ let v71 : string = $"Challenge error: {v59}" │
00:08:26 #11574 [verbose] > │ failwith<unit> v71 │
00:08:26 #11575 [verbose] > │ let v72 : string = $"%A{v17}" │
00:08:26 #11576 [verbose] > │ let v73 : (string []) = Array.zeroCreate<string> │
00:08:26 #11577 [verbose] > │ (System.Convert.ToInt32(v58)) │
00:08:26 #11578 [verbose] > │ let v74 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11579 [verbose] > │ while method4(v58, v74) do │
00:08:26 #11580 [verbose] > │ let v76 : uint64 = v74.l0 │
00:08:26 #11581 [verbose] > │ let struct (v77 : string, v78 : int64) = v31.[int v76] │
00:08:26 #11582 [verbose] > │ v73.[int v76] <- v77 │
00:08:26 #11583 [verbose] > │ let v79 : uint64 = v76 + 1UL │
00:08:26 #11584 [verbose] > │ v74.l0 <- v79 │
00:08:26 #11585 [verbose] > │ () │
00:08:26 #11586 [verbose] > │ let v80 : string = v73.[int 0UL] │
00:08:26 #11587 [verbose] > │ let v81 : string = $"%A{v80}" │
00:08:26 #11588 [verbose] > │ let v82 : (int64 []) = Array.zeroCreate<int64> │
00:08:26 #11589 [verbose] > │ (System.Convert.ToInt32(v58)) │
00:08:26 #11590 [verbose] > │ let v83 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11591 [verbose] > │ while method4(v58, v83) do │
00:08:26 #11592 [verbose] > │ let v85 : uint64 = v83.l0 │
00:08:26 #11593 [verbose] > │ let struct (v86 : string, v87 : int64) = v31.[int v85] │
00:08:26 #11594 [verbose] > │ v82.[int v85] <- v87 │
00:08:26 #11595 [verbose] > │ let v88 : uint64 = v85 + 1UL │
00:08:26 #11596 [verbose] > │ v83.l0 <- v88 │
00:08:26 #11597 [verbose] > │ () │
00:08:26 #11598 [verbose] > │ v11.[int v14] <- struct (v72, v18, v81, v82) │
00:08:26 #11599 [verbose] > │ let v89 : uint64 = v14 + 1UL │
00:08:26 #11600 [verbose] > │ v12.l0 <- v89 │
00:08:26 #11601 [verbose] > │ () │
00:08:26 #11602 [verbose] > │ let v90 : uint64 = System.Convert.ToUInt64 v11.Length │
00:08:26 #11603 [verbose] > │ let v91 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)> │
00:08:26 #11604 [verbose] > │ (System.Convert.ToInt32(v90)) │
00:08:26 #11605 [verbose] > │ let v92 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11606 [verbose] > │ while method4(v90, v92) do │
00:08:26 #11607 [verbose] > │ let v94 : uint64 = v92.l0 │
00:08:26 #11608 [verbose] > │ let struct (v95 : string, v96 : string, v97 : string, v98 : (int64 [ │
00:08:26 #11609 [verbose] > │ ])) = v11.[int v94] │
00:08:26 #11610 [verbose] > │ let v99 : uint64 = System.Convert.ToUInt64 v98.Length │
00:08:26 #11611 [verbose] > │ let v100 : UH3 = UH3_0 │
00:08:26 #11612 [verbose] > │ let v101 : Mut2 = {l0 = 0UL; l1 = v100; l2 = 0L} : Mut2 │
00:08:26 #11613 [verbose] > │ while method10(v99, v101) do │
00:08:26 #11614 [verbose] > │ let v103 : uint64 = v101.l0 │
00:08:26 #11615 [verbose] > │ let struct (v104 : UH3, v105 : int64) = v101.l1, v101.l2 │
00:08:26 #11616 [verbose] > │ let v106 : int64 = v98.[int v103] │
00:08:26 #11617 [verbose] > │ let v107 : int64 = v105 + 1L │
00:08:26 #11618 [verbose] > │ let v108 : uint64 = v103 + 1UL │
00:08:26 #11619 [verbose] > │ let v109 : UH3 = UH3_1(v105, v106, v104) │
00:08:26 #11620 [verbose] > │ v101.l0 <- v108 │
00:08:26 #11621 [verbose] > │ v101.l1 <- v109 │
00:08:26 #11622 [verbose] > │ v101.l2 <- v107 │
00:08:26 #11623 [verbose] > │ () │
00:08:26 #11624 [verbose] > │ let struct (v110 : UH3, v111 : int64) = v101.l1, v101.l2 │
00:08:26 #11625 [verbose] > │ let v112 : UH3 = UH3_0 │
00:08:26 #11626 [verbose] > │ let v113 : UH3 = method11(v110, v112) │
00:08:26 #11627 [verbose] > │ let v114 : (struct (int64 * int64) []) = method12(v113) │
00:08:26 #11628 [verbose] > │ let v115 : int32 = v114.Length │
00:08:26 #11629 [verbose] > │ let v116 : (struct (int64 * int64) []) = Array.zeroCreate<struct │
00:08:26 #11630 [verbose] > │ (int64 * int64)> (v115) │
00:08:26 #11631 [verbose] > │ let v117 : Mut1 = {l0 = 0} : Mut1 │
00:08:26 #11632 [verbose] > │ while method15(v115, v117) do │
00:08:26 #11633 [verbose] > │ let v119 : int32 = v117.l0 │
00:08:26 #11634 [verbose] > │ let struct (v120 : int64, v121 : int64) = v114.[int v119] │
00:08:26 #11635 [verbose] > │ let v122 : int64 = v120 + 1L │
00:08:26 #11636 [verbose] > │ v116.[int v119] <- struct (v122, v121) │
00:08:26 #11637 [verbose] > │ let v123 : int32 = v119 + 1 │
00:08:26 #11638 [verbose] > │ v117.l0 <- v123 │
00:08:26 #11639 [verbose] > │ () │
00:08:26 #11640 [verbose] > │ let v124 : ((struct (int64 * int64) -> int64) -> ((struct (int64 * │
00:08:26 #11641 [verbose] > │ int64) []) -> (struct (int64 * int64) []))) = Array.sortBy │
00:08:26 #11642 [verbose] > │ let v125 : (struct (int64 * int64) -> int64) = closure4() │
00:08:26 #11643 [verbose] > │ let v126 : ((struct (int64 * int64) []) -> (struct (int64 * int64) [ │
00:08:26 #11644 [verbose] > │ ])) = v124 v125 │
00:08:26 #11645 [verbose] > │ let v127 : (struct (int64 * int64) []) = v126 v116 │
00:08:26 #11646 [verbose] > │ let struct (v128 : int64, v129 : int64) = v127.[int 0] │
00:08:26 #11647 [verbose] > │ let v130 : string = $"%A{struct (v128, v129)}" │
00:08:26 #11648 [verbose] > │ let v131 : bool = v95 = v97 │
00:08:26 #11649 [verbose] > │ let v136 : US0 = │
00:08:26 #11650 [verbose] > │ if v131 then │
00:08:26 #11651 [verbose] > │ let v132 : System.ConsoleColor = │
00:08:26 #11652 [verbose] > │ System.ConsoleColor.DarkGreen │
00:08:26 #11653 [verbose] > │ US0_0(v132) │
00:08:26 #11654 [verbose] > │ else │
00:08:26 #11655 [verbose] > │ let v134 : System.ConsoleColor = System.ConsoleColor.DarkRed │
00:08:26 #11656 [verbose] > │ US0_0(v134) │
00:08:26 #11657 [verbose] > │ let v137 : UH2 = UH2_0 │
00:08:26 #11658 [verbose] > │ let v138 : UH2 = UH2_1(v130, v137) │
00:08:26 #11659 [verbose] > │ let v139 : UH2 = UH2_1(v97, v138) │
00:08:26 #11660 [verbose] > │ let v140 : UH2 = UH2_1(v95, v139) │
00:08:26 #11661 [verbose] > │ let v141 : UH2 = UH2_1(v96, v140) │
00:08:26 #11662 [verbose] > │ v91.[int v94] <- struct (v141, v136) │
00:08:26 #11663 [verbose] > │ let v142 : uint64 = v94 + 1UL │
00:08:26 #11664 [verbose] > │ v92.l0 <- v142 │
00:08:26 #11665 [verbose] > │ () │
00:08:26 #11666 [verbose] > │ let v143 : string = "Input" │
00:08:26 #11667 [verbose] > │ let v144 : string = "Expected" │
00:08:26 #11668 [verbose] > │ let v145 : string = "Result" │
00:08:26 #11669 [verbose] > │ let v146 : string = "Best" │
00:08:26 #11670 [verbose] > │ let v147 : UH2 = UH2_0 │
00:08:26 #11671 [verbose] > │ let v148 : UH2 = UH2_1(v146, v147) │
00:08:26 #11672 [verbose] > │ let v149 : UH2 = UH2_1(v145, v148) │
00:08:26 #11673 [verbose] > │ let v150 : UH2 = UH2_1(v144, v149) │
00:08:26 #11674 [verbose] > │ let v151 : UH2 = UH2_1(v143, v150) │
00:08:26 #11675 [verbose] > │ let v152 : US0 = US0_1 │
00:08:26 #11676 [verbose] > │ let v153 : string = "---" │
00:08:26 #11677 [verbose] > │ let v154 : UH2 = UH2_0 │
00:08:26 #11678 [verbose] > │ let v155 : UH2 = UH2_1(v153, v154) │
00:08:26 #11679 [verbose] > │ let v156 : UH2 = UH2_1(v153, v155) │
00:08:26 #11680 [verbose] > │ let v157 : UH2 = UH2_1(v153, v156) │
00:08:26 #11681 [verbose] > │ let v158 : UH2 = UH2_1(v153, v157) │
00:08:26 #11682 [verbose] > │ let v159 : US0 = US0_1 │
00:08:26 #11683 [verbose] > │ let v160 : UH4 = UH4_0 │
00:08:26 #11684 [verbose] > │ let v161 : UH4 = UH4_1(v158, v159, v160) │
00:08:26 #11685 [verbose] > │ let v162 : UH4 = UH4_1(v151, v152, v161) │
00:08:26 #11686 [verbose] > │ let v163 : (struct (UH2 * US0) []) = method16(v162) │
00:08:26 #11687 [verbose] > │ let v164 : uint64 = System.Convert.ToUInt64 v163.Length │
00:08:26 #11688 [verbose] > │ let v165 : uint64 = System.Convert.ToUInt64 v91.Length │
00:08:26 #11689 [verbose] > │ let v166 : uint64 = v164 + v165 │
00:08:26 #11690 [verbose] > │ let v167 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * │
00:08:26 #11691 [verbose] > │ US0)> (System.Convert.ToInt32(v166)) │
00:08:26 #11692 [verbose] > │ let v168 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11693 [verbose] > │ while method4(v166, v168) do │
00:08:26 #11694 [verbose] > │ let v170 : uint64 = v168.l0 │
00:08:26 #11695 [verbose] > │ let v171 : bool = v170 < v164 │
00:08:26 #11696 [verbose] > │ let struct (v177 : UH2, v178 : US0) = │
00:08:26 #11697 [verbose] > │ if v171 then │
00:08:26 #11698 [verbose] > │ let struct (v172 : UH2, v173 : US0) = v163.[int v170] │
00:08:26 #11699 [verbose] > │ struct (v172, v173) │
00:08:26 #11700 [verbose] > │ else │
00:08:26 #11701 [verbose] > │ let v174 : uint64 = v170 - v164 │
00:08:26 #11702 [verbose] > │ let struct (v175 : UH2, v176 : US0) = v91.[int v174] │
00:08:26 #11703 [verbose] > │ struct (v175, v176) │
00:08:26 #11704 [verbose] > │ v167.[int v170] <- struct (v177, v178) │
00:08:26 #11705 [verbose] > │ let v179 : uint64 = v170 + 1UL │
00:08:26 #11706 [verbose] > │ v168.l0 <- v179 │
00:08:26 #11707 [verbose] > │ () │
00:08:26 #11708 [verbose] > │ let v180 : uint64 = System.Convert.ToUInt64 v167.Length │
00:08:26 #11709 [verbose] > │ let v181 : ((string []) []) = Array.zeroCreate<(string [])> │
00:08:26 #11710 [verbose] > │ (System.Convert.ToInt32(v180)) │
00:08:26 #11711 [verbose] > │ let v182 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11712 [verbose] > │ while method4(v180, v182) do │
00:08:26 #11713 [verbose] > │ let v184 : uint64 = v182.l0 │
00:08:26 #11714 [verbose] > │ let struct (v185 : UH2, v186 : US0) = v167.[int v184] │
00:08:26 #11715 [verbose] > │ let v187 : (string []) = method19(v185) │
00:08:26 #11716 [verbose] > │ v181.[int v184] <- v187 │
00:08:26 #11717 [verbose] > │ let v188 : uint64 = v184 + 1UL │
00:08:26 #11718 [verbose] > │ v182.l0 <- v188 │
00:08:26 #11719 [verbose] > │ () │
00:08:26 #11720 [verbose] > │ let v189 : (((string []) []) -> ((string []) [])) = Array.transpose │
00:08:26 #11721 [verbose] > │ let v190 : ((string []) []) = v189 v181 │
00:08:26 #11722 [verbose] > │ let v191 : uint64 = System.Convert.ToUInt64 v190.Length │
00:08:26 #11723 [verbose] > │ let v192 : (int64 []) = Array.zeroCreate<int64> │
00:08:26 #11724 [verbose] > │ (System.Convert.ToInt32(v191)) │
00:08:26 #11725 [verbose] > │ let v193 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11726 [verbose] > │ while method4(v191, v193) do │
00:08:26 #11727 [verbose] > │ let v195 : uint64 = v193.l0 │
00:08:26 #11728 [verbose] > │ let v196 : (string []) = v190.[int v195] │
00:08:26 #11729 [verbose] > │ let v197 : uint64 = System.Convert.ToUInt64 v196.Length │
00:08:26 #11730 [verbose] > │ let v198 : (int64 []) = Array.zeroCreate<int64> │
00:08:26 #11731 [verbose] > │ (System.Convert.ToInt32(v197)) │
00:08:26 #11732 [verbose] > │ let v199 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11733 [verbose] > │ while method4(v197, v199) do │
00:08:26 #11734 [verbose] > │ let v201 : uint64 = v199.l0 │
00:08:26 #11735 [verbose] > │ let v202 : string = v196.[int v201] │
00:08:26 #11736 [verbose] > │ let v203 : int64 = System.Convert.ToInt64 v202.Length │
00:08:26 #11737 [verbose] > │ v198.[int v201] <- v203 │
00:08:26 #11738 [verbose] > │ let v204 : uint64 = v201 + 1UL │
00:08:26 #11739 [verbose] > │ v199.l0 <- v204 │
00:08:26 #11740 [verbose] > │ () │
00:08:26 #11741 [verbose] > │ let v205 : ((int64 []) -> (int64 [])) = Array.sortDescending │
00:08:26 #11742 [verbose] > │ let v206 : (int64 []) = v205 v198 │
00:08:26 #11743 [verbose] > │ let v207 : (int32 -> ((int64 []) -> int64 option)) = Array.tryItem │
00:08:26 #11744 [verbose] > │ let v208 : ((int64 []) -> int64 option) = v207 0 │
00:08:26 #11745 [verbose] > │ let v209 : int64 option = v208 v206 │
00:08:26 #11746 [verbose] > │ let v210 : (int64 -> US1) = method22() │
00:08:26 #11747 [verbose] > │ let v211 : US1 = US1_1 │
00:08:26 #11748 [verbose] > │ let v212 : US1 = v209 |> Option.map v210 |> Option.defaultValue v211 │
00:08:26 #11749 [verbose] > │ let v215 : int64 = │
00:08:26 #11750 [verbose] > │ match v212 with │
00:08:26 #11751 [verbose] > │ | US1_1 -> (* None *) │
00:08:26 #11752 [verbose] > │ 0L │
00:08:26 #11753 [verbose] > │ | US1_0(v213) -> (* Some *) │
00:08:26 #11754 [verbose] > │ v213 │
00:08:26 #11755 [verbose] > │ v192.[int v195] <- v215 │
00:08:26 #11756 [verbose] > │ let v216 : uint64 = v195 + 1UL │
00:08:26 #11757 [verbose] > │ v193.l0 <- v216 │
00:08:26 #11758 [verbose] > │ () │
00:08:26 #11759 [verbose] > │ let v217 : uint64 = System.Convert.ToUInt64 v192.Length │
00:08:26 #11760 [verbose] > │ let v218 : UH5 = UH5_0 │
00:08:26 #11761 [verbose] > │ let v219 : Mut3 = {l0 = 0UL; l1 = v218; l2 = 0} : Mut3 │
00:08:26 #11762 [verbose] > │ while method23(v217, v219) do │
00:08:26 #11763 [verbose] > │ let v221 : uint64 = v219.l0 │
00:08:26 #11764 [verbose] > │ let struct (v222 : UH5, v223 : int32) = v219.l1, v219.l2 │
00:08:26 #11765 [verbose] > │ let v224 : int64 = v192.[int v221] │
00:08:26 #11766 [verbose] > │ let v225 : int32 = v223 + 1 │
00:08:26 #11767 [verbose] > │ let v226 : uint64 = v221 + 1UL │
00:08:26 #11768 [verbose] > │ let v227 : UH5 = UH5_1(v223, v224, v222) │
00:08:26 #11769 [verbose] > │ v219.l0 <- v226 │
00:08:26 #11770 [verbose] > │ v219.l1 <- v227 │
00:08:26 #11771 [verbose] > │ v219.l2 <- v225 │
00:08:26 #11772 [verbose] > │ () │
00:08:26 #11773 [verbose] > │ let struct (v228 : UH5, v229 : int32) = v219.l1, v219.l2 │
00:08:26 #11774 [verbose] > │ let v230 : UH5 = UH5_0 │
00:08:26 #11775 [verbose] > │ let v231 : UH5 = method24(v228, v230) │
00:08:26 #11776 [verbose] > │ let v232 : (struct (int32 * int64) []) = method25(v231) │
00:08:26 #11777 [verbose] > │ let v233 : Map<int32, int64> = v232 |> Array.map (fun (struct (a, b)) -> │
00:08:26 #11778 [verbose] > │ a, b) |> Map.ofArray │
00:08:26 #11779 [verbose] > │ let v234 : (struct ((string []) * US0) []) = Array.zeroCreate<struct │
00:08:26 #11780 [verbose] > │ ((string []) * US0)> (System.Convert.ToInt32(v180)) │
00:08:26 #11781 [verbose] > │ let v235 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11782 [verbose] > │ while method4(v180, v235) do │
00:08:26 #11783 [verbose] > │ let v237 : uint64 = v235.l0 │
00:08:26 #11784 [verbose] > │ let struct (v238 : UH2, v239 : US0) = v167.[int v237] │
00:08:26 #11785 [verbose] > │ let v240 : UH6 = UH6_0 │
00:08:26 #11786 [verbose] > │ let v241 : int32 = 0 │
00:08:26 #11787 [verbose] > │ let struct (v242 : UH6, v243 : int32) = method28(v238, v240, v241) │
00:08:26 #11788 [verbose] > │ let v244 : UH6 = UH6_0 │
00:08:26 #11789 [verbose] > │ let v245 : UH6 = method29(v242, v244) │
00:08:26 #11790 [verbose] > │ let v246 : UH2 = UH2_0 │
00:08:26 #11791 [verbose] > │ let v247 : UH2 = method30(v233, v245, v246) │
00:08:26 #11792 [verbose] > │ let v248 : (string []) = method31(v247) │
00:08:26 #11793 [verbose] > │ v234.[int v237] <- struct (v248, v239) │
00:08:26 #11794 [verbose] > │ let v249 : uint64 = v237 + 1UL │
00:08:26 #11795 [verbose] > │ v235.l0 <- v249 │
00:08:26 #11796 [verbose] > │ () │
00:08:26 #11797 [verbose] > │ System.Console.WriteLine v2 │
00:08:26 #11798 [verbose] > │ let v250 : uint64 = System.Convert.ToUInt64 v234.Length │
00:08:26 #11799 [verbose] > │ let v251 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11800 [verbose] > │ while method4(v250, v251) do │
00:08:26 #11801 [verbose] > │ let v253 : uint64 = v251.l0 │
00:08:26 #11802 [verbose] > │ let struct (v254 : (string []), v255 : US0) = v234.[int v253] │
00:08:26 #11803 [verbose] > │ match v255 with │
00:08:26 #11804 [verbose] > │ | US0_1 -> (* None *) │
00:08:26 #11805 [verbose] > │ let v258 : unit option = None │
00:08:26 #11806 [verbose] > │ let mutable _v258 = v258 │
00:08:26 #11807 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:26 #11808 [verbose] > │ () │
00:08:26 #11809 [verbose] > │ #endif │
00:08:26 #11810 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:26 #11811 [verbose] > │ () │
00:08:26 #11812 [verbose] > │ #endif │
00:08:26 #11813 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:26 #11814 [verbose] > │ () │
00:08:26 #11815 [verbose] > │ #endif │
00:08:26 #11816 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:26 #11817 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:26 #11818 [verbose] > │ System.Console.ResetColor () │
00:08:26 #11819 [verbose] > │ () │
00:08:26 #11820 [verbose] > │ #endif │
00:08:26 #11821 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:26 #11822 [verbose] > │ () │
00:08:26 #11823 [verbose] > │ #endif │
00:08:26 #11824 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:26 #11825 [verbose] > │ FABLE_COMPILER_DART │
00:08:26 #11826 [verbose] > │ Unchecked.defaultof<unit> │
00:08:26 #11827 [verbose] > │ #endif │
00:08:26 #11828 [verbose] > │ |> fun x -> _v258 <- Some x │
00:08:26 #11829 [verbose] > │ _v258.Value │
00:08:26 #11830 [verbose] > │ () │
00:08:26 #11831 [verbose] > │ | US0_0(v256) -> (* Some *) │
00:08:26 #11832 [verbose] > │ let v257 : unit option = None │
00:08:26 #11833 [verbose] > │ let mutable _v257 = v257 │
00:08:26 #11834 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:26 #11835 [verbose] > │ () │
00:08:26 #11836 [verbose] > │ #endif │
00:08:26 #11837 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:26 #11838 [verbose] > │ () │
00:08:26 #11839 [verbose] > │ #endif │
00:08:26 #11840 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:26 #11841 [verbose] > │ () │
00:08:26 #11842 [verbose] > │ #endif │
00:08:26 #11843 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:26 #11844 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:26 #11845 [verbose] > │ System.Console.ForegroundColor <- v256 │
00:08:26 #11846 [verbose] > │ () │
00:08:26 #11847 [verbose] > │ #endif │
00:08:26 #11848 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:26 #11849 [verbose] > │ () │
00:08:26 #11850 [verbose] > │ #endif │
00:08:26 #11851 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:26 #11852 [verbose] > │ FABLE_COMPILER_DART │
00:08:26 #11853 [verbose] > │ Unchecked.defaultof<unit> │
00:08:26 #11854 [verbose] > │ #endif │
00:08:26 #11855 [verbose] > │ |> fun x -> _v257 <- Some x │
00:08:26 #11856 [verbose] > │ _v257.Value │
00:08:26 #11857 [verbose] > │ () │
00:08:26 #11858 [verbose] > │ let v259 : string = "\t| " │
00:08:26 #11859 [verbose] > │ let v260 : string = System.String.Join (v259, v254) │
00:08:26 #11860 [verbose] > │ System.Console.WriteLine v260 │
00:08:26 #11861 [verbose] > │ let v261 : unit option = None │
00:08:26 #11862 [verbose] > │ let mutable _v261 = v261 │
00:08:26 #11863 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:26 #11864 [verbose] > │ () │
00:08:26 #11865 [verbose] > │ #endif │
00:08:26 #11866 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:26 #11867 [verbose] > │ () │
00:08:26 #11868 [verbose] > │ #endif │
00:08:26 #11869 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:26 #11870 [verbose] > │ () │
00:08:26 #11871 [verbose] > │ #endif │
00:08:26 #11872 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:26 #11873 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:26 #11874 [verbose] > │ System.Console.ResetColor () │
00:08:26 #11875 [verbose] > │ () │
00:08:26 #11876 [verbose] > │ #endif │
00:08:26 #11877 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:26 #11878 [verbose] > │ () │
00:08:26 #11879 [verbose] > │ #endif │
00:08:26 #11880 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:26 #11881 [verbose] > │ FABLE_COMPILER_DART │
00:08:26 #11882 [verbose] > │ Unchecked.defaultof<unit> │
00:08:26 #11883 [verbose] > │ #endif │
00:08:26 #11884 [verbose] > │ |> fun x -> _v261 <- Some x │
00:08:26 #11885 [verbose] > │ _v261.Value │
00:08:26 #11886 [verbose] > │ let v262 : uint64 = v253 + 1UL │
00:08:26 #11887 [verbose] > │ v251.l0 <- v262 │
00:08:26 #11888 [verbose] > │ () │
00:08:26 #11889 [verbose] > │ let v263 : ((float []) []) = Array.zeroCreate<(float [])> │
00:08:26 #11890 [verbose] > │ (System.Convert.ToInt32(v90)) │
00:08:26 #11891 [verbose] > │ let v264 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11892 [verbose] > │ while method4(v90, v264) do │
00:08:26 #11893 [verbose] > │ let v266 : uint64 = v264.l0 │
00:08:26 #11894 [verbose] > │ let struct (v267 : string, v268 : string, v269 : string, v270 : │
00:08:26 #11895 [verbose] > │ (int64 [])) = v11.[int v266] │
00:08:26 #11896 [verbose] > │ let v271 : (int64 -> float) = float │
00:08:26 #11897 [verbose] > │ let v272 : uint64 = System.Convert.ToUInt64 v270.Length │
00:08:26 #11898 [verbose] > │ let v273 : (float []) = Array.zeroCreate<float> │
00:08:26 #11899 [verbose] > │ (System.Convert.ToInt32(v272)) │
00:08:26 #11900 [verbose] > │ let v274 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11901 [verbose] > │ while method4(v272, v274) do │
00:08:26 #11902 [verbose] > │ let v276 : uint64 = v274.l0 │
00:08:26 #11903 [verbose] > │ let v277 : int64 = v270.[int v276] │
00:08:26 #11904 [verbose] > │ let v278 : float = v271 v277 │
00:08:26 #11905 [verbose] > │ v273.[int v276] <- v278 │
00:08:26 #11906 [verbose] > │ let v279 : uint64 = v276 + 1UL │
00:08:26 #11907 [verbose] > │ v274.l0 <- v279 │
00:08:26 #11908 [verbose] > │ () │
00:08:26 #11909 [verbose] > │ v263.[int v266] <- v273 │
00:08:26 #11910 [verbose] > │ let v280 : uint64 = v266 + 1UL │
00:08:26 #11911 [verbose] > │ v264.l0 <- v280 │
00:08:26 #11912 [verbose] > │ () │
00:08:26 #11913 [verbose] > │ let v281 : (((float []) []) -> ((float []) [])) = Array.transpose │
00:08:26 #11914 [verbose] > │ let v282 : ((float []) []) = v281 v263 │
00:08:26 #11915 [verbose] > │ let v283 : uint64 = System.Convert.ToUInt64 v282.Length │
00:08:26 #11916 [verbose] > │ let v284 : (float []) = Array.zeroCreate<float> │
00:08:26 #11917 [verbose] > │ (System.Convert.ToInt32(v283)) │
00:08:26 #11918 [verbose] > │ let v285 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11919 [verbose] > │ while method4(v283, v285) do │
00:08:26 #11920 [verbose] > │ let v287 : uint64 = v285.l0 │
00:08:26 #11921 [verbose] > │ let v288 : (float []) = v282.[int v287] │
00:08:26 #11922 [verbose] > │ let v289 : ((float []) -> float) = Array.average │
00:08:26 #11923 [verbose] > │ let v290 : float = v289 v288 │
00:08:26 #11924 [verbose] > │ v284.[int v287] <- v290 │
00:08:26 #11925 [verbose] > │ let v291 : uint64 = v287 + 1UL │
00:08:26 #11926 [verbose] > │ v285.l0 <- v291 │
00:08:26 #11927 [verbose] > │ () │
00:08:26 #11928 [verbose] > │ let v292 : (float -> int64) = int64 │
00:08:26 #11929 [verbose] > │ let v293 : uint64 = System.Convert.ToUInt64 v284.Length │
00:08:26 #11930 [verbose] > │ let v294 : (int64 []) = Array.zeroCreate<int64> │
00:08:26 #11931 [verbose] > │ (System.Convert.ToInt32(v293)) │
00:08:26 #11932 [verbose] > │ let v295 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11933 [verbose] > │ while method4(v293, v295) do │
00:08:26 #11934 [verbose] > │ let v297 : uint64 = v295.l0 │
00:08:26 #11935 [verbose] > │ let v298 : float = v284.[int v297] │
00:08:26 #11936 [verbose] > │ let v299 : int64 = v292 v298 │
00:08:26 #11937 [verbose] > │ v294.[int v297] <- v299 │
00:08:26 #11938 [verbose] > │ let v300 : uint64 = v297 + 1UL │
00:08:26 #11939 [verbose] > │ v295.l0 <- v300 │
00:08:26 #11940 [verbose] > │ () │
00:08:26 #11941 [verbose] > │ let v301 : uint64 = System.Convert.ToUInt64 v294.Length │
00:08:26 #11942 [verbose] > │ let v302 : UH5 = UH5_0 │
00:08:26 #11943 [verbose] > │ let v303 : Mut3 = {l0 = 0UL; l1 = v302; l2 = 0} : Mut3 │
00:08:26 #11944 [verbose] > │ while method23(v301, v303) do │
00:08:26 #11945 [verbose] > │ let v305 : uint64 = v303.l0 │
00:08:26 #11946 [verbose] > │ let struct (v306 : UH5, v307 : int32) = v303.l1, v303.l2 │
00:08:26 #11947 [verbose] > │ let v308 : int64 = v294.[int v305] │
00:08:26 #11948 [verbose] > │ let v309 : int32 = v307 + 1 │
00:08:26 #11949 [verbose] > │ let v310 : uint64 = v305 + 1UL │
00:08:26 #11950 [verbose] > │ let v311 : UH5 = UH5_1(v307, v308, v306) │
00:08:26 #11951 [verbose] > │ v303.l0 <- v310 │
00:08:26 #11952 [verbose] > │ v303.l1 <- v311 │
00:08:26 #11953 [verbose] > │ v303.l2 <- v309 │
00:08:26 #11954 [verbose] > │ () │
00:08:26 #11955 [verbose] > │ let struct (v312 : UH5, v313 : int32) = v303.l1, v303.l2 │
00:08:26 #11956 [verbose] > │ let v314 : UH5 = UH5_0 │
00:08:26 #11957 [verbose] > │ let v315 : UH5 = method24(v312, v314) │
00:08:26 #11958 [verbose] > │ let v316 : (struct (int32 * int64) []) = method34(v315) │
00:08:26 #11959 [verbose] > │ System.Console.WriteLine v2 │
00:08:26 #11960 [verbose] > │ let v317 : string = "Average Ranking " │
00:08:26 #11961 [verbose] > │ System.Console.WriteLine v317 │
00:08:26 #11962 [verbose] > │ let v318 : ((struct (int32 * int64) -> int64) -> ((struct (int32 * │
00:08:26 #11963 [verbose] > │ int64) []) -> (struct (int32 * int64) []))) = Array.sortBy │
00:08:26 #11964 [verbose] > │ let v319 : (struct (int32 * int64) -> int64) = closure6() │
00:08:26 #11965 [verbose] > │ let v320 : ((struct (int32 * int64) []) -> (struct (int32 * int64) [])) │
00:08:26 #11966 [verbose] > │ = v318 v319 │
00:08:26 #11967 [verbose] > │ let v321 : (struct (int32 * int64) []) = v320 v316 │
00:08:26 #11968 [verbose] > │ let v322 : uint64 = System.Convert.ToUInt64 v321.Length │
00:08:26 #11969 [verbose] > │ let v323 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:26 #11970 [verbose] > │ while method4(v322, v323) do │
00:08:26 #11971 [verbose] > │ let v325 : uint64 = v323.l0 │
00:08:26 #11972 [verbose] > │ let struct (v326 : int32, v327 : int64) = v321.[int v325] │
00:08:26 #11973 [verbose] > │ let v328 : string = $"Test case %d{v326 + 1}. Average Time: %A{v327} │
00:08:26 #11974 [verbose] > │ " │
00:08:26 #11975 [verbose] > │ System.Console.WriteLine v328 │
00:08:26 #11976 [verbose] > │ let v329 : uint64 = v325 + 1UL │
00:08:26 #11977 [verbose] > │ v323.l0 <- v329 │
00:08:26 #11978 [verbose] > │ () │
00:08:26 #11979 [verbose] > │ () │
00:08:26 #11980 [verbose] > │ and method0 () : unit = │
00:08:26 #11981 [verbose] > │ let v0 : (unit -> unit) = closure0() │
00:08:26 #11982 [verbose] > │ let v1 : string = nameof v0 │
00:08:26 #11983 [verbose] > │ let v2 : string = "" │
00:08:26 #11984 [verbose] > │ System.Console.WriteLine v2 │
00:08:26 #11985 [verbose] > │ System.Console.WriteLine v2 │
00:08:26 #11986 [verbose] > │ let v3 : string = $"Test: {v1}" │
00:08:26 #11987 [verbose] > │ System.Console.WriteLine v3 │
00:08:26 #11988 [verbose] > │ let v4 : string = "a" │
00:08:27 #11989 [verbose] > │ let v5 : string = "b" │
00:08:27 #11990 [verbose] > │ let v6 : UH0 = UH0_0 │
00:08:27 #11991 [verbose] > │ let v7 : UH0 = UH0_1(v5, v5, v5, v6) │
00:08:27 #11992 [verbose] > │ let v8 : UH0 = UH0_1(v4, v4, v4, v7) │
00:08:27 #11993 [verbose] > │ let v9 : (struct (string * string * string) []) = method1(v8) │
00:08:27 #11994 [verbose] > │ let v10 : uint64 = System.Convert.ToUInt64 v9.Length │
00:08:27 #11995 [verbose] > │ let v11 : (struct (string * string * string * (int64 [])) []) = │
00:08:27 #11996 [verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))> │
00:08:27 #11997 [verbose] > │ (System.Convert.ToInt32(v10)) │
00:08:27 #11998 [verbose] > │ let v12 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #11999 [verbose] > │ while method4(v10, v12) do │
00:08:27 #12000 [verbose] > │ let v14 : uint64 = v12.l0 │
00:08:27 #12001 [verbose] > │ let struct (v15 : string, v16 : string, v17 : string) = v9.[int v14] │
00:08:27 #12002 [verbose] > │ let v18 : string = $"%A{struct (v15, v16)}" │
00:08:27 #12003 [verbose] > │ System.Console.WriteLine v2 │
00:08:27 #12004 [verbose] > │ let v19 : string = $"Solution: {v18} " │
00:08:27 #12005 [verbose] > │ System.Console.WriteLine v19 │
00:08:27 #12006 [verbose] > │ let v20 : int32 = 0 │
00:08:27 #12007 [verbose] > │ let v21 : string = "A" │
00:08:27 #12008 [verbose] > │ let v22 : (struct (string * string) -> string) = closure1() │
00:08:27 #12009 [verbose] > │ let v23 : int32 = 1 │
00:08:27 #12010 [verbose] > │ let v24 : string = "B" │
00:08:27 #12011 [verbose] > │ let v25 : (struct (string * string) -> string) = closure2() │
00:08:27 #12012 [verbose] > │ let v26 : UH1 = UH1_0 │
00:08:27 #12013 [verbose] > │ let v27 : UH1 = UH1_1(v23, v24, v25, v26) │
00:08:27 #12014 [verbose] > │ let v28 : UH1 = UH1_1(v20, v21, v22, v27) │
00:08:27 #12015 [verbose] > │ let v29 : (struct (int32 * string * (struct (string * string) -> │
00:08:27 #12016 [verbose] > │ string)) []) = method5(v28) │
00:08:27 #12017 [verbose] > │ let v30 : uint64 = System.Convert.ToUInt64 v29.Length │
00:08:27 #12018 [verbose] > │ let v31 : (struct (string * int64) []) = Array.zeroCreate<struct │
00:08:27 #12019 [verbose] > │ (string * int64)> (System.Convert.ToInt32(v30)) │
00:08:27 #12020 [verbose] > │ let v32 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12021 [verbose] > │ while method4(v30, v32) do │
00:08:27 #12022 [verbose] > │ let v34 : uint64 = v32.l0 │
00:08:27 #12023 [verbose] > │ let struct (v35 : int32, v36 : string, v37 : (struct (string * │
00:08:27 #12024 [verbose] > │ string) -> string)) = v29.[int v34] │
00:08:27 #12025 [verbose] > │ let v38 : unit option = None │
00:08:27 #12026 [verbose] > │ let mutable _v38 = v38 │
00:08:27 #12027 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:27 #12028 [verbose] > │ () │
00:08:27 #12029 [verbose] > │ #endif │
00:08:27 #12030 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:27 #12031 [verbose] > │ () │
00:08:27 #12032 [verbose] > │ #endif │
00:08:27 #12033 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:27 #12034 [verbose] > │ () │
00:08:27 #12035 [verbose] > │ #endif │
00:08:27 #12036 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:27 #12037 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:27 #12038 [verbose] > │ System.GC.Collect () │
00:08:27 #12039 [verbose] > │ () │
00:08:27 #12040 [verbose] > │ #endif │
00:08:27 #12041 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:27 #12042 [verbose] > │ () │
00:08:27 #12043 [verbose] > │ #endif │
00:08:27 #12044 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:27 #12045 [verbose] > │ FABLE_COMPILER_DART │
00:08:27 #12046 [verbose] > │ Unchecked.defaultof<unit> │
00:08:27 #12047 [verbose] > │ #endif │
00:08:27 #12048 [verbose] > │ |> fun x -> _v38 <- Some x │
00:08:27 #12049 [verbose] > │ _v38.Value │
00:08:27 #12050 [verbose] > │ let v39 : (unit -> System.Diagnostics.Stopwatch) = │
00:08:27 #12051 [verbose] > │ System.Diagnostics.Stopwatch │
00:08:27 #12052 [verbose] > │ let v40 : System.Diagnostics.Stopwatch = v39 () │
00:08:27 #12053 [verbose] > │ v40.Start () │
00:08:27 #12054 [verbose] > │ let v41 : int64 = v40.ElapsedMilliseconds │
00:08:27 #12055 [verbose] > │ let v42 : (int32 []) = Array.zeroCreate<int32> (2000001) │
00:08:27 #12056 [verbose] > │ let v43 : Mut1 = {l0 = 0} : Mut1 │
00:08:27 #12057 [verbose] > │ while method8(v43) do │
00:08:27 #12058 [verbose] > │ let v45 : int32 = v43.l0 │
00:08:27 #12059 [verbose] > │ v42.[int v45] <- v45 │
00:08:27 #12060 [verbose] > │ let v46 : int32 = v45 + 1 │
00:08:27 #12061 [verbose] > │ v43.l0 <- v46 │
00:08:27 #12062 [verbose] > │ () │
00:08:27 #12063 [verbose] > │ let v47 : ((int32 -> string) -> ((int32 []) -> (string []))) = │
00:08:27 #12064 [verbose] > │ Array.Parallel.map │
00:08:27 #12065 [verbose] > │ let v48 : (int32 -> string) = closure3(v15, v16, v37) │
00:08:27 #12066 [verbose] > │ let v49 : ((int32 []) -> (string [])) = v47 v48 │
00:08:27 #12067 [verbose] > │ let v50 : (string []) = v49 v42 │
00:08:27 #12068 [verbose] > │ let v51 : int32 = v50.Length │
00:08:27 #12069 [verbose] > │ let v52 : int32 = v51 - 1 │
00:08:27 #12070 [verbose] > │ let v53 : string = v50.[int v52] │
00:08:27 #12071 [verbose] > │ let v54 : int64 = v40.ElapsedMilliseconds │
00:08:27 #12072 [verbose] > │ let v55 : int64 = v54 - v41 │
00:08:27 #12073 [verbose] > │ let v56 : string = $"Test case {v35 + 1}. {v36}. Time: {v55} " │
00:08:27 #12074 [verbose] > │ System.Console.WriteLine v56 │
00:08:27 #12075 [verbose] > │ v31.[int v34] <- struct (v53, v55) │
00:08:27 #12076 [verbose] > │ let v57 : uint64 = v34 + 1UL │
00:08:27 #12077 [verbose] > │ v32.l0 <- v57 │
00:08:27 #12078 [verbose] > │ () │
00:08:27 #12079 [verbose] > │ let v58 : uint64 = System.Convert.ToUInt64 v31.Length │
00:08:27 #12080 [verbose] > │ let v59 : (string []) = Array.zeroCreate<string> │
00:08:27 #12081 [verbose] > │ (System.Convert.ToInt32(v58)) │
00:08:27 #12082 [verbose] > │ let v60 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12083 [verbose] > │ while method4(v58, v60) do │
00:08:27 #12084 [verbose] > │ let v62 : uint64 = v60.l0 │
00:08:27 #12085 [verbose] > │ let struct (v63 : string, v64 : int64) = v31.[int v62] │
00:08:27 #12086 [verbose] > │ v59.[int v62] <- v63 │
00:08:27 #12087 [verbose] > │ let v65 : uint64 = v62 + 1UL │
00:08:27 #12088 [verbose] > │ v60.l0 <- v65 │
00:08:27 #12089 [verbose] > │ () │
00:08:27 #12090 [verbose] > │ let v66 : uint64 = System.Convert.ToUInt64 v59.Length │
00:08:27 #12091 [verbose] > │ let v67 : bool = v66 <= 1UL │
00:08:27 #12092 [verbose] > │ if v67 then │
00:08:27 #12093 [verbose] > │ () │
00:08:27 #12094 [verbose] > │ else │
00:08:27 #12095 [verbose] > │ let v68 : string = v59.[int 0UL] │
00:08:27 #12096 [verbose] > │ let v69 : uint64 = 0UL │
00:08:27 #12097 [verbose] > │ let v70 : bool = method9(v68, v59, v69) │
00:08:27 #12098 [verbose] > │ if v70 then │
00:08:27 #12099 [verbose] > │ () │
00:08:27 #12100 [verbose] > │ else │
00:08:27 #12101 [verbose] > │ let v71 : string = $"Challenge error: {v59}" │
00:08:27 #12102 [verbose] > │ failwith<unit> v71 │
00:08:27 #12103 [verbose] > │ let v72 : string = $"%A{v17}" │
00:08:27 #12104 [verbose] > │ let v73 : (string []) = Array.zeroCreate<string> │
00:08:27 #12105 [verbose] > │ (System.Convert.ToInt32(v58)) │
00:08:27 #12106 [verbose] > │ let v74 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12107 [verbose] > │ while method4(v58, v74) do │
00:08:27 #12108 [verbose] > │ let v76 : uint64 = v74.l0 │
00:08:27 #12109 [verbose] > │ let struct (v77 : string, v78 : int64) = v31.[int v76] │
00:08:27 #12110 [verbose] > │ v73.[int v76] <- v77 │
00:08:27 #12111 [verbose] > │ let v79 : uint64 = v76 + 1UL │
00:08:27 #12112 [verbose] > │ v74.l0 <- v79 │
00:08:27 #12113 [verbose] > │ () │
00:08:27 #12114 [verbose] > │ let v80 : string = v73.[int 0UL] │
00:08:27 #12115 [verbose] > │ let v81 : string = $"%A{v80}" │
00:08:27 #12116 [verbose] > │ let v82 : (int64 []) = Array.zeroCreate<int64> │
00:08:27 #12117 [verbose] > │ (System.Convert.ToInt32(v58)) │
00:08:27 #12118 [verbose] > │ let v83 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12119 [verbose] > │ while method4(v58, v83) do │
00:08:27 #12120 [verbose] > │ let v85 : uint64 = v83.l0 │
00:08:27 #12121 [verbose] > │ let struct (v86 : string, v87 : int64) = v31.[int v85] │
00:08:27 #12122 [verbose] > │ v82.[int v85] <- v87 │
00:08:27 #12123 [verbose] > │ let v88 : uint64 = v85 + 1UL │
00:08:27 #12124 [verbose] > │ v83.l0 <- v88 │
00:08:27 #12125 [verbose] > │ () │
00:08:27 #12126 [verbose] > │ v11.[int v14] <- struct (v72, v18, v81, v82) │
00:08:27 #12127 [verbose] > │ let v89 : uint64 = v14 + 1UL │
00:08:27 #12128 [verbose] > │ v12.l0 <- v89 │
00:08:27 #12129 [verbose] > │ () │
00:08:27 #12130 [verbose] > │ let v90 : uint64 = System.Convert.ToUInt64 v11.Length │
00:08:27 #12131 [verbose] > │ let v91 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)> │
00:08:27 #12132 [verbose] > │ (System.Convert.ToInt32(v90)) │
00:08:27 #12133 [verbose] > │ let v92 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12134 [verbose] > │ while method4(v90, v92) do │
00:08:27 #12135 [verbose] > │ let v94 : uint64 = v92.l0 │
00:08:27 #12136 [verbose] > │ let struct (v95 : string, v96 : string, v97 : string, v98 : (int64 [ │
00:08:27 #12137 [verbose] > │ ])) = v11.[int v94] │
00:08:27 #12138 [verbose] > │ let v99 : uint64 = System.Convert.ToUInt64 v98.Length │
00:08:27 #12139 [verbose] > │ let v100 : UH3 = UH3_0 │
00:08:27 #12140 [verbose] > │ let v101 : Mut2 = {l0 = 0UL; l1 = v100; l2 = 0L} : Mut2 │
00:08:27 #12141 [verbose] > │ while method10(v99, v101) do │
00:08:27 #12142 [verbose] > │ let v103 : uint64 = v101.l0 │
00:08:27 #12143 [verbose] > │ let struct (v104 : UH3, v105 : int64) = v101.l1, v101.l2 │
00:08:27 #12144 [verbose] > │ let v106 : int64 = v98.[int v103] │
00:08:27 #12145 [verbose] > │ let v107 : int64 = v105 + 1L │
00:08:27 #12146 [verbose] > │ let v108 : uint64 = v103 + 1UL │
00:08:27 #12147 [verbose] > │ let v109 : UH3 = UH3_1(v105, v106, v104) │
00:08:27 #12148 [verbose] > │ v101.l0 <- v108 │
00:08:27 #12149 [verbose] > │ v101.l1 <- v109 │
00:08:27 #12150 [verbose] > │ v101.l2 <- v107 │
00:08:27 #12151 [verbose] > │ () │
00:08:27 #12152 [verbose] > │ let struct (v110 : UH3, v111 : int64) = v101.l1, v101.l2 │
00:08:27 #12153 [verbose] > │ let v112 : UH3 = UH3_0 │
00:08:27 #12154 [verbose] > │ let v113 : UH3 = method11(v110, v112) │
00:08:27 #12155 [verbose] > │ let v114 : (struct (int64 * int64) []) = method12(v113) │
00:08:27 #12156 [verbose] > │ let v115 : int32 = v114.Length │
00:08:27 #12157 [verbose] > │ let v116 : (struct (int64 * int64) []) = Array.zeroCreate<struct │
00:08:27 #12158 [verbose] > │ (int64 * int64)> (v115) │
00:08:27 #12159 [verbose] > │ let v117 : Mut1 = {l0 = 0} : Mut1 │
00:08:27 #12160 [verbose] > │ while method15(v115, v117) do │
00:08:27 #12161 [verbose] > │ let v119 : int32 = v117.l0 │
00:08:27 #12162 [verbose] > │ let struct (v120 : int64, v121 : int64) = v114.[int v119] │
00:08:27 #12163 [verbose] > │ let v122 : int64 = v120 + 1L │
00:08:27 #12164 [verbose] > │ v116.[int v119] <- struct (v122, v121) │
00:08:27 #12165 [verbose] > │ let v123 : int32 = v119 + 1 │
00:08:27 #12166 [verbose] > │ v117.l0 <- v123 │
00:08:27 #12167 [verbose] > │ () │
00:08:27 #12168 [verbose] > │ let v124 : ((struct (int64 * int64) -> int64) -> ((struct (int64 * │
00:08:27 #12169 [verbose] > │ int64) []) -> (struct (int64 * int64) []))) = Array.sortBy │
00:08:27 #12170 [verbose] > │ let v125 : (struct (int64 * int64) -> int64) = closure4() │
00:08:27 #12171 [verbose] > │ let v126 : ((struct (int64 * int64) []) -> (struct (int64 * int64) [ │
00:08:27 #12172 [verbose] > │ ])) = v124 v125 │
00:08:27 #12173 [verbose] > │ let v127 : (struct (int64 * int64) []) = v126 v116 │
00:08:27 #12174 [verbose] > │ let struct (v128 : int64, v129 : int64) = v127.[int 0] │
00:08:27 #12175 [verbose] > │ let v130 : string = $"%A{struct (v128, v129)}" │
00:08:27 #12176 [verbose] > │ let v131 : bool = v95 = v97 │
00:08:27 #12177 [verbose] > │ let v136 : US0 = │
00:08:27 #12178 [verbose] > │ if v131 then │
00:08:27 #12179 [verbose] > │ let v132 : System.ConsoleColor = │
00:08:27 #12180 [verbose] > │ System.ConsoleColor.DarkGreen │
00:08:27 #12181 [verbose] > │ US0_0(v132) │
00:08:27 #12182 [verbose] > │ else │
00:08:27 #12183 [verbose] > │ let v134 : System.ConsoleColor = System.ConsoleColor.DarkRed │
00:08:27 #12184 [verbose] > │ US0_0(v134) │
00:08:27 #12185 [verbose] > │ let v137 : UH2 = UH2_0 │
00:08:27 #12186 [verbose] > │ let v138 : UH2 = UH2_1(v130, v137) │
00:08:27 #12187 [verbose] > │ let v139 : UH2 = UH2_1(v97, v138) │
00:08:27 #12188 [verbose] > │ let v140 : UH2 = UH2_1(v95, v139) │
00:08:27 #12189 [verbose] > │ let v141 : UH2 = UH2_1(v96, v140) │
00:08:27 #12190 [verbose] > │ v91.[int v94] <- struct (v141, v136) │
00:08:27 #12191 [verbose] > │ let v142 : uint64 = v94 + 1UL │
00:08:27 #12192 [verbose] > │ v92.l0 <- v142 │
00:08:27 #12193 [verbose] > │ () │
00:08:27 #12194 [verbose] > │ let v143 : string = "Input" │
00:08:27 #12195 [verbose] > │ let v144 : string = "Expected" │
00:08:27 #12196 [verbose] > │ let v145 : string = "Result" │
00:08:27 #12197 [verbose] > │ let v146 : string = "Best" │
00:08:27 #12198 [verbose] > │ let v147 : UH2 = UH2_0 │
00:08:27 #12199 [verbose] > │ let v148 : UH2 = UH2_1(v146, v147) │
00:08:27 #12200 [verbose] > │ let v149 : UH2 = UH2_1(v145, v148) │
00:08:27 #12201 [verbose] > │ let v150 : UH2 = UH2_1(v144, v149) │
00:08:27 #12202 [verbose] > │ let v151 : UH2 = UH2_1(v143, v150) │
00:08:27 #12203 [verbose] > │ let v152 : US0 = US0_1 │
00:08:27 #12204 [verbose] > │ let v153 : string = "---" │
00:08:27 #12205 [verbose] > │ let v154 : UH2 = UH2_0 │
00:08:27 #12206 [verbose] > │ let v155 : UH2 = UH2_1(v153, v154) │
00:08:27 #12207 [verbose] > │ let v156 : UH2 = UH2_1(v153, v155) │
00:08:27 #12208 [verbose] > │ let v157 : UH2 = UH2_1(v153, v156) │
00:08:27 #12209 [verbose] > │ let v158 : UH2 = UH2_1(v153, v157) │
00:08:27 #12210 [verbose] > │ let v159 : US0 = US0_1 │
00:08:27 #12211 [verbose] > │ let v160 : UH4 = UH4_0 │
00:08:27 #12212 [verbose] > │ let v161 : UH4 = UH4_1(v158, v159, v160) │
00:08:27 #12213 [verbose] > │ let v162 : UH4 = UH4_1(v151, v152, v161) │
00:08:27 #12214 [verbose] > │ let v163 : (struct (UH2 * US0) []) = method16(v162) │
00:08:27 #12215 [verbose] > │ let v164 : uint64 = System.Convert.ToUInt64 v163.Length │
00:08:27 #12216 [verbose] > │ let v165 : uint64 = System.Convert.ToUInt64 v91.Length │
00:08:27 #12217 [verbose] > │ let v166 : uint64 = v164 + v165 │
00:08:27 #12218 [verbose] > │ let v167 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * │
00:08:27 #12219 [verbose] > │ US0)> (System.Convert.ToInt32(v166)) │
00:08:27 #12220 [verbose] > │ let v168 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12221 [verbose] > │ while method4(v166, v168) do │
00:08:27 #12222 [verbose] > │ let v170 : uint64 = v168.l0 │
00:08:27 #12223 [verbose] > │ let v171 : bool = v170 < v164 │
00:08:27 #12224 [verbose] > │ let struct (v177 : UH2, v178 : US0) = │
00:08:27 #12225 [verbose] > │ if v171 then │
00:08:27 #12226 [verbose] > │ let struct (v172 : UH2, v173 : US0) = v163.[int v170] │
00:08:27 #12227 [verbose] > │ struct (v172, v173) │
00:08:27 #12228 [verbose] > │ else │
00:08:27 #12229 [verbose] > │ let v174 : uint64 = v170 - v164 │
00:08:27 #12230 [verbose] > │ let struct (v175 : UH2, v176 : US0) = v91.[int v174] │
00:08:27 #12231 [verbose] > │ struct (v175, v176) │
00:08:27 #12232 [verbose] > │ v167.[int v170] <- struct (v177, v178) │
00:08:27 #12233 [verbose] > │ let v179 : uint64 = v170 + 1UL │
00:08:27 #12234 [verbose] > │ v168.l0 <- v179 │
00:08:27 #12235 [verbose] > │ () │
00:08:27 #12236 [verbose] > │ let v180 : uint64 = System.Convert.ToUInt64 v167.Length │
00:08:27 #12237 [verbose] > │ let v181 : ((string []) []) = Array.zeroCreate<(string [])> │
00:08:27 #12238 [verbose] > │ (System.Convert.ToInt32(v180)) │
00:08:27 #12239 [verbose] > │ let v182 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12240 [verbose] > │ while method4(v180, v182) do │
00:08:27 #12241 [verbose] > │ let v184 : uint64 = v182.l0 │
00:08:27 #12242 [verbose] > │ let struct (v185 : UH2, v186 : US0) = v167.[int v184] │
00:08:27 #12243 [verbose] > │ let v187 : (string []) = method19(v185) │
00:08:27 #12244 [verbose] > │ v181.[int v184] <- v187 │
00:08:27 #12245 [verbose] > │ let v188 : uint64 = v184 + 1UL │
00:08:27 #12246 [verbose] > │ v182.l0 <- v188 │
00:08:27 #12247 [verbose] > │ () │
00:08:27 #12248 [verbose] > │ let v189 : (((string []) []) -> ((string []) [])) = Array.transpose │
00:08:27 #12249 [verbose] > │ let v190 : ((string []) []) = v189 v181 │
00:08:27 #12250 [verbose] > │ let v191 : uint64 = System.Convert.ToUInt64 v190.Length │
00:08:27 #12251 [verbose] > │ let v192 : (int64 []) = Array.zeroCreate<int64> │
00:08:27 #12252 [verbose] > │ (System.Convert.ToInt32(v191)) │
00:08:27 #12253 [verbose] > │ let v193 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12254 [verbose] > │ while method4(v191, v193) do │
00:08:27 #12255 [verbose] > │ let v195 : uint64 = v193.l0 │
00:08:27 #12256 [verbose] > │ let v196 : (string []) = v190.[int v195] │
00:08:27 #12257 [verbose] > │ let v197 : uint64 = System.Convert.ToUInt64 v196.Length │
00:08:27 #12258 [verbose] > │ let v198 : (int64 []) = Array.zeroCreate<int64> │
00:08:27 #12259 [verbose] > │ (System.Convert.ToInt32(v197)) │
00:08:27 #12260 [verbose] > │ let v199 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12261 [verbose] > │ while method4(v197, v199) do │
00:08:27 #12262 [verbose] > │ let v201 : uint64 = v199.l0 │
00:08:27 #12263 [verbose] > │ let v202 : string = v196.[int v201] │
00:08:27 #12264 [verbose] > │ let v203 : int64 = System.Convert.ToInt64 v202.Length │
00:08:27 #12265 [verbose] > │ v198.[int v201] <- v203 │
00:08:27 #12266 [verbose] > │ let v204 : uint64 = v201 + 1UL │
00:08:27 #12267 [verbose] > │ v199.l0 <- v204 │
00:08:27 #12268 [verbose] > │ () │
00:08:27 #12269 [verbose] > │ let v205 : ((int64 []) -> (int64 [])) = Array.sortDescending │
00:08:27 #12270 [verbose] > │ let v206 : (int64 []) = v205 v198 │
00:08:27 #12271 [verbose] > │ let v207 : (int32 -> ((int64 []) -> int64 option)) = Array.tryItem │
00:08:27 #12272 [verbose] > │ let v208 : ((int64 []) -> int64 option) = v207 0 │
00:08:27 #12273 [verbose] > │ let v209 : int64 option = v208 v206 │
00:08:27 #12274 [verbose] > │ let v210 : (int64 -> US1) = method22() │
00:08:27 #12275 [verbose] > │ let v211 : US1 = US1_1 │
00:08:27 #12276 [verbose] > │ let v212 : US1 = v209 |> Option.map v210 |> Option.defaultValue v211 │
00:08:27 #12277 [verbose] > │ let v215 : int64 = │
00:08:27 #12278 [verbose] > │ match v212 with │
00:08:27 #12279 [verbose] > │ | US1_1 -> (* None *) │
00:08:27 #12280 [verbose] > │ 0L │
00:08:27 #12281 [verbose] > │ | US1_0(v213) -> (* Some *) │
00:08:27 #12282 [verbose] > │ v213 │
00:08:27 #12283 [verbose] > │ v192.[int v195] <- v215 │
00:08:27 #12284 [verbose] > │ let v216 : uint64 = v195 + 1UL │
00:08:27 #12285 [verbose] > │ v193.l0 <- v216 │
00:08:27 #12286 [verbose] > │ () │
00:08:27 #12287 [verbose] > │ let v217 : uint64 = System.Convert.ToUInt64 v192.Length │
00:08:27 #12288 [verbose] > │ let v218 : UH5 = UH5_0 │
00:08:27 #12289 [verbose] > │ let v219 : Mut3 = {l0 = 0UL; l1 = v218; l2 = 0} : Mut3 │
00:08:27 #12290 [verbose] > │ while method23(v217, v219) do │
00:08:27 #12291 [verbose] > │ let v221 : uint64 = v219.l0 │
00:08:27 #12292 [verbose] > │ let struct (v222 : UH5, v223 : int32) = v219.l1, v219.l2 │
00:08:27 #12293 [verbose] > │ let v224 : int64 = v192.[int v221] │
00:08:27 #12294 [verbose] > │ let v225 : int32 = v223 + 1 │
00:08:27 #12295 [verbose] > │ let v226 : uint64 = v221 + 1UL │
00:08:27 #12296 [verbose] > │ let v227 : UH5 = UH5_1(v223, v224, v222) │
00:08:27 #12297 [verbose] > │ v219.l0 <- v226 │
00:08:27 #12298 [verbose] > │ v219.l1 <- v227 │
00:08:27 #12299 [verbose] > │ v219.l2 <- v225 │
00:08:27 #12300 [verbose] > │ () │
00:08:27 #12301 [verbose] > │ let struct (v228 : UH5, v229 : int32) = v219.l1, v219.l2 │
00:08:27 #12302 [verbose] > │ let v230 : UH5 = UH5_0 │
00:08:27 #12303 [verbose] > │ let v231 : UH5 = method24(v228, v230) │
00:08:27 #12304 [verbose] > │ let v232 : (struct (int32 * int64) []) = method25(v231) │
00:08:27 #12305 [verbose] > │ let v233 : Map<int32, int64> = v232 |> Array.map (fun (struct (a, b)) -> │
00:08:27 #12306 [verbose] > │ a, b) |> Map.ofArray │
00:08:27 #12307 [verbose] > │ let v234 : (struct ((string []) * US0) []) = Array.zeroCreate<struct │
00:08:27 #12308 [verbose] > │ ((string []) * US0)> (System.Convert.ToInt32(v180)) │
00:08:27 #12309 [verbose] > │ let v235 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12310 [verbose] > │ while method4(v180, v235) do │
00:08:27 #12311 [verbose] > │ let v237 : uint64 = v235.l0 │
00:08:27 #12312 [verbose] > │ let struct (v238 : UH2, v239 : US0) = v167.[int v237] │
00:08:27 #12313 [verbose] > │ let v240 : UH6 = UH6_0 │
00:08:27 #12314 [verbose] > │ let v241 : int32 = 0 │
00:08:27 #12315 [verbose] > │ let struct (v242 : UH6, v243 : int32) = method28(v238, v240, v241) │
00:08:27 #12316 [verbose] > │ let v244 : UH6 = UH6_0 │
00:08:27 #12317 [verbose] > │ let v245 : UH6 = method29(v242, v244) │
00:08:27 #12318 [verbose] > │ let v246 : UH2 = UH2_0 │
00:08:27 #12319 [verbose] > │ let v247 : UH2 = method30(v233, v245, v246) │
00:08:27 #12320 [verbose] > │ let v248 : (string []) = method31(v247) │
00:08:27 #12321 [verbose] > │ v234.[int v237] <- struct (v248, v239) │
00:08:27 #12322 [verbose] > │ let v249 : uint64 = v237 + 1UL │
00:08:27 #12323 [verbose] > │ v235.l0 <- v249 │
00:08:27 #12324 [verbose] > │ () │
00:08:27 #12325 [verbose] > │ System.Console.WriteLine v2 │
00:08:27 #12326 [verbose] > │ let v250 : uint64 = System.Convert.ToUInt64 v234.Length │
00:08:27 #12327 [verbose] > │ let v251 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12328 [verbose] > │ while method4(v250, v251) do │
00:08:27 #12329 [verbose] > │ let v253 : uint64 = v251.l0 │
00:08:27 #12330 [verbose] > │ let struct (v254 : (string []), v255 : US0) = v234.[int v253] │
00:08:27 #12331 [verbose] > │ match v255 with │
00:08:27 #12332 [verbose] > │ | US0_1 -> (* None *) │
00:08:27 #12333 [verbose] > │ let v258 : unit option = None │
00:08:27 #12334 [verbose] > │ let mutable _v258 = v258 │
00:08:27 #12335 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:27 #12336 [verbose] > │ () │
00:08:27 #12337 [verbose] > │ #endif │
00:08:27 #12338 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:27 #12339 [verbose] > │ () │
00:08:27 #12340 [verbose] > │ #endif │
00:08:27 #12341 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:27 #12342 [verbose] > │ () │
00:08:27 #12343 [verbose] > │ #endif │
00:08:27 #12344 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:27 #12345 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:27 #12346 [verbose] > │ System.Console.ResetColor () │
00:08:27 #12347 [verbose] > │ () │
00:08:27 #12348 [verbose] > │ #endif │
00:08:27 #12349 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:27 #12350 [verbose] > │ () │
00:08:27 #12351 [verbose] > │ #endif │
00:08:27 #12352 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:27 #12353 [verbose] > │ FABLE_COMPILER_DART │
00:08:27 #12354 [verbose] > │ Unchecked.defaultof<unit> │
00:08:27 #12355 [verbose] > │ #endif │
00:08:27 #12356 [verbose] > │ |> fun x -> _v258 <- Some x │
00:08:27 #12357 [verbose] > │ _v258.Value │
00:08:27 #12358 [verbose] > │ () │
00:08:27 #12359 [verbose] > │ | US0_0(v256) -> (* Some *) │
00:08:27 #12360 [verbose] > │ let v257 : unit option = None │
00:08:27 #12361 [verbose] > │ let mutable _v257 = v257 │
00:08:27 #12362 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:27 #12363 [verbose] > │ () │
00:08:27 #12364 [verbose] > │ #endif │
00:08:27 #12365 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:27 #12366 [verbose] > │ () │
00:08:27 #12367 [verbose] > │ #endif │
00:08:27 #12368 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:27 #12369 [verbose] > │ () │
00:08:27 #12370 [verbose] > │ #endif │
00:08:27 #12371 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:27 #12372 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:27 #12373 [verbose] > │ System.Console.ForegroundColor <- v256 │
00:08:27 #12374 [verbose] > │ () │
00:08:27 #12375 [verbose] > │ #endif │
00:08:27 #12376 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:27 #12377 [verbose] > │ () │
00:08:27 #12378 [verbose] > │ #endif │
00:08:27 #12379 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:27 #12380 [verbose] > │ FABLE_COMPILER_DART │
00:08:27 #12381 [verbose] > │ Unchecked.defaultof<unit> │
00:08:27 #12382 [verbose] > │ #endif │
00:08:27 #12383 [verbose] > │ |> fun x -> _v257 <- Some x │
00:08:27 #12384 [verbose] > │ _v257.Value │
00:08:27 #12385 [verbose] > │ () │
00:08:27 #12386 [verbose] > │ let v259 : string = "\t| " │
00:08:27 #12387 [verbose] > │ let v260 : string = System.String.Join (v259, v254) │
00:08:27 #12388 [verbose] > │ System.Console.WriteLine v260 │
00:08:27 #12389 [verbose] > │ let v261 : unit option = None │
00:08:27 #12390 [verbose] > │ let mutable _v261 = v261 │
00:08:27 #12391 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:27 #12392 [verbose] > │ () │
00:08:27 #12393 [verbose] > │ #endif │
00:08:27 #12394 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:27 #12395 [verbose] > │ () │
00:08:27 #12396 [verbose] > │ #endif │
00:08:27 #12397 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:27 #12398 [verbose] > │ () │
00:08:27 #12399 [verbose] > │ #endif │
00:08:27 #12400 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:27 #12401 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:27 #12402 [verbose] > │ System.Console.ResetColor () │
00:08:27 #12403 [verbose] > │ () │
00:08:27 #12404 [verbose] > │ #endif │
00:08:27 #12405 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:27 #12406 [verbose] > │ () │
00:08:27 #12407 [verbose] > │ #endif │
00:08:27 #12408 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:27 #12409 [verbose] > │ FABLE_COMPILER_DART │
00:08:27 #12410 [verbose] > │ Unchecked.defaultof<unit> │
00:08:27 #12411 [verbose] > │ #endif │
00:08:27 #12412 [verbose] > │ |> fun x -> _v261 <- Some x │
00:08:27 #12413 [verbose] > │ _v261.Value │
00:08:27 #12414 [verbose] > │ let v262 : uint64 = v253 + 1UL │
00:08:27 #12415 [verbose] > │ v251.l0 <- v262 │
00:08:27 #12416 [verbose] > │ () │
00:08:27 #12417 [verbose] > │ let v263 : ((float []) []) = Array.zeroCreate<(float [])> │
00:08:27 #12418 [verbose] > │ (System.Convert.ToInt32(v90)) │
00:08:27 #12419 [verbose] > │ let v264 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12420 [verbose] > │ while method4(v90, v264) do │
00:08:27 #12421 [verbose] > │ let v266 : uint64 = v264.l0 │
00:08:27 #12422 [verbose] > │ let struct (v267 : string, v268 : string, v269 : string, v270 : │
00:08:27 #12423 [verbose] > │ (int64 [])) = v11.[int v266] │
00:08:27 #12424 [verbose] > │ let v271 : (int64 -> float) = float │
00:08:27 #12425 [verbose] > │ let v272 : uint64 = System.Convert.ToUInt64 v270.Length │
00:08:27 #12426 [verbose] > │ let v273 : (float []) = Array.zeroCreate<float> │
00:08:27 #12427 [verbose] > │ (System.Convert.ToInt32(v272)) │
00:08:27 #12428 [verbose] > │ let v274 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12429 [verbose] > │ while method4(v272, v274) do │
00:08:27 #12430 [verbose] > │ let v276 : uint64 = v274.l0 │
00:08:27 #12431 [verbose] > │ let v277 : int64 = v270.[int v276] │
00:08:27 #12432 [verbose] > │ let v278 : float = v271 v277 │
00:08:27 #12433 [verbose] > │ v273.[int v276] <- v278 │
00:08:27 #12434 [verbose] > │ let v279 : uint64 = v276 + 1UL │
00:08:27 #12435 [verbose] > │ v274.l0 <- v279 │
00:08:27 #12436 [verbose] > │ () │
00:08:27 #12437 [verbose] > │ v263.[int v266] <- v273 │
00:08:27 #12438 [verbose] > │ let v280 : uint64 = v266 + 1UL │
00:08:27 #12439 [verbose] > │ v264.l0 <- v280 │
00:08:27 #12440 [verbose] > │ () │
00:08:27 #12441 [verbose] > │ let v281 : (((float []) []) -> ((float []) [])) = Array.transpose │
00:08:27 #12442 [verbose] > │ let v282 : ((float []) []) = v281 v263 │
00:08:27 #12443 [verbose] > │ let v283 : uint64 = System.Convert.ToUInt64 v282.Length │
00:08:27 #12444 [verbose] > │ let v284 : (float []) = Array.zeroCreate<float> │
00:08:27 #12445 [verbose] > │ (System.Convert.ToInt32(v283)) │
00:08:27 #12446 [verbose] > │ let v285 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12447 [verbose] > │ while method4(v283, v285) do │
00:08:27 #12448 [verbose] > │ let v287 : uint64 = v285.l0 │
00:08:27 #12449 [verbose] > │ let v288 : (float []) = v282.[int v287] │
00:08:27 #12450 [verbose] > │ let v289 : ((float []) -> float) = Array.average │
00:08:27 #12451 [verbose] > │ let v290 : float = v289 v288 │
00:08:27 #12452 [verbose] > │ v284.[int v287] <- v290 │
00:08:27 #12453 [verbose] > │ let v291 : uint64 = v287 + 1UL │
00:08:27 #12454 [verbose] > │ v285.l0 <- v291 │
00:08:27 #12455 [verbose] > │ () │
00:08:27 #12456 [verbose] > │ let v292 : (float -> int64) = int64 │
00:08:27 #12457 [verbose] > │ let v293 : uint64 = System.Convert.ToUInt64 v284.Length │
00:08:27 #12458 [verbose] > │ let v294 : (int64 []) = Array.zeroCreate<int64> │
00:08:27 #12459 [verbose] > │ (System.Convert.ToInt32(v293)) │
00:08:27 #12460 [verbose] > │ let v295 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12461 [verbose] > │ while method4(v293, v295) do │
00:08:27 #12462 [verbose] > │ let v297 : uint64 = v295.l0 │
00:08:27 #12463 [verbose] > │ let v298 : float = v284.[int v297] │
00:08:27 #12464 [verbose] > │ let v299 : int64 = v292 v298 │
00:08:27 #12465 [verbose] > │ v294.[int v297] <- v299 │
00:08:27 #12466 [verbose] > │ let v300 : uint64 = v297 + 1UL │
00:08:27 #12467 [verbose] > │ v295.l0 <- v300 │
00:08:27 #12468 [verbose] > │ () │
00:08:27 #12469 [verbose] > │ let v301 : uint64 = System.Convert.ToUInt64 v294.Length │
00:08:27 #12470 [verbose] > │ let v302 : UH5 = UH5_0 │
00:08:27 #12471 [verbose] > │ let v303 : Mut3 = {l0 = 0UL; l1 = v302; l2 = 0} : Mut3 │
00:08:27 #12472 [verbose] > │ while method23(v301, v303) do │
00:08:27 #12473 [verbose] > │ let v305 : uint64 = v303.l0 │
00:08:27 #12474 [verbose] > │ let struct (v306 : UH5, v307 : int32) = v303.l1, v303.l2 │
00:08:27 #12475 [verbose] > │ let v308 : int64 = v294.[int v305] │
00:08:27 #12476 [verbose] > │ let v309 : int32 = v307 + 1 │
00:08:27 #12477 [verbose] > │ let v310 : uint64 = v305 + 1UL │
00:08:27 #12478 [verbose] > │ let v311 : UH5 = UH5_1(v307, v308, v306) │
00:08:27 #12479 [verbose] > │ v303.l0 <- v310 │
00:08:27 #12480 [verbose] > │ v303.l1 <- v311 │
00:08:27 #12481 [verbose] > │ v303.l2 <- v309 │
00:08:27 #12482 [verbose] > │ () │
00:08:27 #12483 [verbose] > │ let struct (v312 : UH5, v313 : int32) = v303.l1, v303.l2 │
00:08:27 #12484 [verbose] > │ let v314 : UH5 = UH5_0 │
00:08:27 #12485 [verbose] > │ let v315 : UH5 = method24(v312, v314) │
00:08:27 #12486 [verbose] > │ let v316 : (struct (int32 * int64) []) = method34(v315) │
00:08:27 #12487 [verbose] > │ System.Console.WriteLine v2 │
00:08:27 #12488 [verbose] > │ let v317 : string = "Average Ranking " │
00:08:27 #12489 [verbose] > │ System.Console.WriteLine v317 │
00:08:27 #12490 [verbose] > │ let v318 : ((struct (int32 * int64) -> int64) -> ((struct (int32 * │
00:08:27 #12491 [verbose] > │ int64) []) -> (struct (int32 * int64) []))) = Array.sortBy │
00:08:27 #12492 [verbose] > │ let v319 : (struct (int32 * int64) -> int64) = closure6() │
00:08:27 #12493 [verbose] > │ let v320 : ((struct (int32 * int64) []) -> (struct (int32 * int64) [])) │
00:08:27 #12494 [verbose] > │ = v318 v319 │
00:08:27 #12495 [verbose] > │ let v321 : (struct (int32 * int64) []) = v320 v316 │
00:08:27 #12496 [verbose] > │ let v322 : uint64 = System.Convert.ToUInt64 v321.Length │
00:08:27 #12497 [verbose] > │ let v323 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:27 #12498 [verbose] > │ while method4(v322, v323) do │
00:08:27 #12499 [verbose] > │ let v325 : uint64 = v323.l0 │
00:08:27 #12500 [verbose] > │ let struct (v326 : int32, v327 : int64) = v321.[int v325] │
00:08:27 #12501 [verbose] > │ let v328 : string = $"Test case %d{v326 + 1}. Average Time: %A{v327} │
00:08:27 #12502 [verbose] > │ " │
00:08:27 #12503 [verbose] > │ System.Console.WriteLine v328 │
00:08:27 #12504 [verbose] > │ let v329 : uint64 = v325 + 1UL │
00:08:27 #12505 [verbose] > │ v323.l0 <- v329 │
00:08:27 #12506 [verbose] > │ () │
00:08:27 #12507 [verbose] > │ () │
00:08:27 #12508 [verbose] > │ method0() │
00:08:27 #12509 [verbose] > │ │
00:08:27 #12510 [verbose] > │ │
00:08:27 #12511 [verbose] > │ │
00:08:27 #12512 [verbose] > │ Test: v0 │
00:08:27 #12513 [verbose] > │ │
00:08:27 #12514 [verbose] > │ Solution: struct ("a", "a") │
00:08:27 #12515 [verbose] > │ Test case 1. A. Time: 234 │
00:08:27 #12516 [verbose] > │ Test case 2. B. Time: 207 │
00:08:27 #12517 [verbose] > │ │
00:08:27 #12518 [verbose] > │ Solution: struct ("b", "b") │
00:08:27 #12519 [verbose] > │ Test case 1. A. Time: 215 │
00:08:27 #12520 [verbose] > │ Test case 2. B. Time: 156 │
00:08:27 #12521 [verbose] > │ │
00:08:27 #12522 [verbose] > │ Input | Expected | Result | Best │
00:08:27 #12523 [verbose] > │ --- | --- | --- | --- │
00:08:27 #12524 [verbose] > │ struct ("a", "a") | "a" | "a" | struct (2L, 207L) │
00:08:27 #12525 [verbose] > │ struct ("b", "b") | "b" | "b" | struct (2L, 156L) │
00:08:27 #12526 [verbose] > │ │
00:08:27 #12527 [verbose] > │ Average Ranking │
00:08:27 #12528 [verbose] > │ Test case 2. Average Time: 181L │
00:08:27 #12529 [verbose] > │ Test case 1. Average Time: 224L │
00:08:27 #12530 [verbose] > │ │
00:08:27 #12531 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:27 #12532 [verbose] >
00:08:27 #12533 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:08:27 #12534 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:08:27 #12535 [verbose] > │ ## emptyTests │
00:08:27 #12536 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:27 #12537 [verbose] >
00:08:27 #12538 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:08:27 #12539 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:08:27 #12540 [verbose] > │ Test: Empty │
00:08:27 #12541 [verbose] > │ │
00:08:27 #12542 [verbose] > │ Solution: 0 │
00:08:27 #12543 [verbose] > │ Test case 1. A. Time: 61L │
00:08:27 #12544 [verbose] > │ │
00:08:27 #12545 [verbose] > │ Solution: 2 │
00:08:27 #12546 [verbose] > │ Test case 1. A. Time: 62L │
00:08:27 #12547 [verbose] > │ │
00:08:27 #12548 [verbose] > │ Solution: 5 │
00:08:27 #12549 [verbose] > │ Test case 1. A. Time: 70L │
00:08:27 #12550 [verbose] > │ │
00:08:27 #12551 [verbose] > │ Input | Expected | Result | Best │
00:08:27 #12552 [verbose] > │ --- | --- | --- | --- │
00:08:27 #12553 [verbose] > │ 0 | 0 | 0 | (1, 61) │
00:08:27 #12554 [verbose] > │ 2 | 2 | 2 | (1, 62) │
00:08:27 #12555 [verbose] > │ 5 | 5 | 5 | (1, 70) │
00:08:27 #12556 [verbose] > │ │
00:08:27 #12557 [verbose] > │ Averages │
00:08:27 #12558 [verbose] > │ Test case 1. Average Time: 64L │
00:08:27 #12559 [verbose] > │ │
00:08:27 #12560 [verbose] > │ Ranking │
00:08:27 #12561 [verbose] > │ Test case 1. Average Time: 64L │
00:08:27 #12562 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:27 #12563 [verbose] >
00:08:27 #12564 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:08:27 #12565 [verbose] > // // test
00:08:27 #12566 [verbose] >
00:08:27 #12567 [verbose] > inl get_solutions () =
00:08:27 #12568 [verbose] > [[
00:08:27 #12569 [verbose] > "A",
00:08:27 #12570 [verbose] > fun n =>
00:08:27 #12571 [verbose] > n + 1f64
00:08:27 #12572 [verbose] > ]]
00:08:27 #12573 [verbose] >
00:08:27 #12574 [verbose] > inl rec empty_1_tests () =
00:08:27 #12575 [verbose] > inl test_cases = [[
00:08:27 #12576 [verbose] > 0, 1
00:08:27 #12577 [verbose] > 2, 3
00:08:27 #12578 [verbose] > 5, 6
00:08:27 #12579 [verbose] > ]]
00:08:27 #12580 [verbose] >
00:08:27 #12581 [verbose] > inl solutions = get_solutions ()
00:08:27 #12582 [verbose] >
00:08:27 #12583 [verbose] > // inl is_fast () = true
00:08:27 #12584 [verbose] >
00:08:27 #12585 [verbose] > inl count =
00:08:27 #12586 [verbose] > if is_fast ()
00:08:27 #12587 [verbose] > then 1000i32
00:08:27 #12588 [verbose] > else 2000000i32
00:08:27 #12589 [verbose] >
00:08:27 #12590 [verbose] > run_all (nameof empty_1_tests) count solutions test_cases
00:08:27 #12591 [verbose] > |> sort_result_list
00:08:27 #12592 [verbose] >
00:08:27 #12593 [verbose] > empty_1_tests ()
00:08:27 #12594 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\add20fff0f27a8abe1411796e3c8df50eddcafd4e78f8d42c4f62ae6367103c9\main.spi
00:08:39 #12595 [verbose] >
00:08:39 #12596 [verbose] > ╭─[ 12.30s - stdout ]──────────────────────────────────────────────────────────╮
00:08:39 #12597 [verbose] > │ type UH0 = │
00:08:39 #12598 [verbose] > │ | UH0_0 │
00:08:39 #12599 [verbose] > │ | UH0_1 of float * float * UH0 │
00:08:39 #12600 [verbose] > │ and Mut0 = {mutable l0 : uint64} │
00:08:39 #12601 [verbose] > │ and UH1 = │
00:08:39 #12602 [verbose] > │ | UH1_0 │
00:08:39 #12603 [verbose] > │ | UH1_1 of int32 * string * (float -> float) * UH1 │
00:08:39 #12604 [verbose] > │ and Mut1 = {mutable l0 : int32} │
00:08:39 #12605 [verbose] > │ and UH2 = │
00:08:39 #12606 [verbose] > │ | UH2_0 │
00:08:39 #12607 [verbose] > │ | UH2_1 of string * UH2 │
00:08:39 #12608 [verbose] > │ and [<Struct>] US0 = │
00:08:39 #12609 [verbose] > │ | US0_0 of f0_0 : System.ConsoleColor │
00:08:39 #12610 [verbose] > │ | US0_1 │
00:08:39 #12611 [verbose] > │ and UH3 = │
00:08:39 #12612 [verbose] > │ | UH3_0 │
00:08:39 #12613 [verbose] > │ | UH3_1 of int64 * int64 * UH3 │
00:08:39 #12614 [verbose] > │ and Mut2 = {mutable l0 : uint64; mutable l1 : UH3; mutable l2 : int64} │
00:08:39 #12615 [verbose] > │ and UH4 = │
00:08:39 #12616 [verbose] > │ | UH4_0 │
00:08:39 #12617 [verbose] > │ | UH4_1 of UH2 * US0 * UH4 │
00:08:39 #12618 [verbose] > │ and [<Struct>] US1 = │
00:08:39 #12619 [verbose] > │ | US1_0 of f0_0 : int64 │
00:08:39 #12620 [verbose] > │ | US1_1 │
00:08:39 #12621 [verbose] > │ and UH5 = │
00:08:39 #12622 [verbose] > │ | UH5_0 │
00:08:39 #12623 [verbose] > │ | UH5_1 of int32 * int64 * UH5 │
00:08:39 #12624 [verbose] > │ and Mut3 = {mutable l0 : uint64; mutable l1 : UH5; mutable l2 : int32} │
00:08:39 #12625 [verbose] > │ and UH6 = │
00:08:39 #12626 [verbose] > │ | UH6_0 │
00:08:39 #12627 [verbose] > │ | UH6_1 of int32 * string * UH6 │
00:08:39 #12628 [verbose] > │ let rec method2 (v0 : UH0, v1 : uint64) : uint64 = │
00:08:39 #12629 [verbose] > │ match v0 with │
00:08:39 #12630 [verbose] > │ | UH0_1(v2, v3, v4) -> (* Cons *) │
00:08:39 #12631 [verbose] > │ let v5 : uint64 = v1 + 1UL │
00:08:39 #12632 [verbose] > │ method2(v4, v5) │
00:08:39 #12633 [verbose] > │ | UH0_0 -> (* Nil *) │
00:08:39 #12634 [verbose] > │ v1 │
00:08:39 #12635 [verbose] > │ and method3 (v0 : (struct (float * float) []), v1 : UH0, v2 : uint64) : │
00:08:39 #12636 [verbose] > │ uint64 = │
00:08:39 #12637 [verbose] > │ match v1 with │
00:08:39 #12638 [verbose] > │ | UH0_1(v3, v4, v5) -> (* Cons *) │
00:08:39 #12639 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:08:39 #12640 [verbose] > │ let v6 : uint64 = v2 + 1UL │
00:08:39 #12641 [verbose] > │ method3(v0, v5, v6) │
00:08:39 #12642 [verbose] > │ | UH0_0 -> (* Nil *) │
00:08:39 #12643 [verbose] > │ v2 │
00:08:39 #12644 [verbose] > │ and method1 (v0 : UH0) : (struct (float * float) []) = │
00:08:39 #12645 [verbose] > │ let v1 : uint64 = 0UL │
00:08:39 #12646 [verbose] > │ let v2 : uint64 = method2(v0, v1) │
00:08:39 #12647 [verbose] > │ let v3 : (struct (float * float) []) = Array.zeroCreate<struct (float * │
00:08:39 #12648 [verbose] > │ float)> (System.Convert.ToInt32(v2)) │
00:08:39 #12649 [verbose] > │ let v4 : uint64 = 0UL │
00:08:39 #12650 [verbose] > │ let v5 : uint64 = method3(v3, v0, v4) │
00:08:39 #12651 [verbose] > │ v3 │
00:08:39 #12652 [verbose] > │ and method4 (v0 : uint64, v1 : Mut0) : bool = │
00:08:39 #12653 [verbose] > │ let v2 : uint64 = v1.l0 │
00:08:39 #12654 [verbose] > │ let v3 : bool = v2 < v0 │
00:08:39 #12655 [verbose] > │ v3 │
00:08:39 #12656 [verbose] > │ and closure1 () (v0 : float) : float = │
00:08:39 #12657 [verbose] > │ let v1 : float = v0 + 1.0 │
00:08:39 #12658 [verbose] > │ v1 │
00:08:39 #12659 [verbose] > │ and method6 (v0 : UH1, v1 : uint64) : uint64 = │
00:08:39 #12660 [verbose] > │ match v0 with │
00:08:39 #12661 [verbose] > │ | UH1_1(v2, v3, v4, v5) -> (* Cons *) │
00:08:39 #12662 [verbose] > │ let v6 : uint64 = v1 + 1UL │
00:08:39 #12663 [verbose] > │ method6(v5, v6) │
00:08:39 #12664 [verbose] > │ | UH1_0 -> (* Nil *) │
00:08:39 #12665 [verbose] > │ v1 │
00:08:39 #12666 [verbose] > │ and method7 (v0 : (struct (int32 * string * (float -> float)) []), v1 : UH1, │
00:08:39 #12667 [verbose] > │ v2 : uint64) : uint64 = │
00:08:39 #12668 [verbose] > │ match v1 with │
00:08:39 #12669 [verbose] > │ | UH1_1(v3, v4, v5, v6) -> (* Cons *) │
00:08:39 #12670 [verbose] > │ v0.[int v2] <- struct (v3, v4, v5) │
00:08:39 #12671 [verbose] > │ let v7 : uint64 = v2 + 1UL │
00:08:39 #12672 [verbose] > │ method7(v0, v6, v7) │
00:08:39 #12673 [verbose] > │ | UH1_0 -> (* Nil *) │
00:08:39 #12674 [verbose] > │ v2 │
00:08:39 #12675 [verbose] > │ and method5 (v0 : UH1) : (struct (int32 * string * (float -> float)) []) = │
00:08:39 #12676 [verbose] > │ let v1 : uint64 = 0UL │
00:08:39 #12677 [verbose] > │ let v2 : uint64 = method6(v0, v1) │
00:08:39 #12678 [verbose] > │ let v3 : (struct (int32 * string * (float -> float)) []) = │
00:08:39 #12679 [verbose] > │ Array.zeroCreate<struct (int32 * string * (float -> float))> │
00:08:39 #12680 [verbose] > │ (System.Convert.ToInt32(v2)) │
00:08:39 #12681 [verbose] > │ let v4 : uint64 = 0UL │
00:08:39 #12682 [verbose] > │ let v5 : uint64 = method7(v3, v0, v4) │
00:08:39 #12683 [verbose] > │ v3 │
00:08:39 #12684 [verbose] > │ and method8 (v0 : Mut1) : bool = │
00:08:39 #12685 [verbose] > │ let v1 : int32 = v0.l0 │
00:08:39 #12686 [verbose] > │ let v2 : bool = v1 < 2000001 │
00:08:39 #12687 [verbose] > │ v2 │
00:08:39 #12688 [verbose] > │ and closure2 (v0 : float, v1 : (float -> float)) (v2 : int32) : float = │
00:08:39 #12689 [verbose] > │ v1 v0 │
00:08:39 #12690 [verbose] > │ and method9 (v0 : float, v1 : (float []), v2 : uint64) : bool = │
00:08:39 #12691 [verbose] > │ let v3 : uint64 = System.Convert.ToUInt64 v1.Length │
00:08:39 #12692 [verbose] > │ let v4 : bool = v2 < v3 │
00:08:39 #12693 [verbose] > │ if v4 then │
00:08:39 #12694 [verbose] > │ let v5 : float = v1.[int v2] │
00:08:39 #12695 [verbose] > │ let v6 : bool = v0 = v5 │
00:08:39 #12696 [verbose] > │ if v6 then │
00:08:39 #12697 [verbose] > │ let v7 : uint64 = v2 + 1UL │
00:08:39 #12698 [verbose] > │ method9(v0, v1, v7) │
00:08:39 #12699 [verbose] > │ else │
00:08:39 #12700 [verbose] > │ false │
00:08:39 #12701 [verbose] > │ else │
00:08:39 #12702 [verbose] > │ true │
00:08:39 #12703 [verbose] > │ and method10 (v0 : uint64, v1 : Mut2) : bool = │
00:08:39 #12704 [verbose] > │ let v2 : uint64 = v1.l0 │
00:08:39 #12705 [verbose] > │ let v3 : bool = v2 < v0 │
00:08:39 #12706 [verbose] > │ v3 │
00:08:39 #12707 [verbose] > │ and method11 (v0 : UH3, v1 : UH3) : UH3 = │
00:08:39 #12708 [verbose] > │ match v0 with │
00:08:39 #12709 [verbose] > │ | UH3_1(v2, v3, v4) -> (* Cons *) │
00:08:39 #12710 [verbose] > │ let v5 : UH3 = UH3_1(v2, v3, v1) │
00:08:39 #12711 [verbose] > │ method11(v4, v5) │
00:08:39 #12712 [verbose] > │ | UH3_0 -> (* Nil *) │
00:08:39 #12713 [verbose] > │ v1 │
00:08:39 #12714 [verbose] > │ and method13 (v0 : UH3, v1 : int32) : int32 = │
00:08:39 #12715 [verbose] > │ match v0 with │
00:08:39 #12716 [verbose] > │ | UH3_1(v2, v3, v4) -> (* Cons *) │
00:08:39 #12717 [verbose] > │ let v5 : int32 = v1 + 1 │
00:08:39 #12718 [verbose] > │ method13(v4, v5) │
00:08:39 #12719 [verbose] > │ | UH3_0 -> (* Nil *) │
00:08:39 #12720 [verbose] > │ v1 │
00:08:39 #12721 [verbose] > │ and method14 (v0 : (struct (int64 * int64) []), v1 : UH3, v2 : int32) : │
00:08:39 #12722 [verbose] > │ int32 = │
00:08:39 #12723 [verbose] > │ match v1 with │
00:08:39 #12724 [verbose] > │ | UH3_1(v3, v4, v5) -> (* Cons *) │
00:08:39 #12725 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:08:39 #12726 [verbose] > │ let v6 : int32 = v2 + 1 │
00:08:39 #12727 [verbose] > │ method14(v0, v5, v6) │
00:08:39 #12728 [verbose] > │ | UH3_0 -> (* Nil *) │
00:08:39 #12729 [verbose] > │ v2 │
00:08:39 #12730 [verbose] > │ and method12 (v0 : UH3) : (struct (int64 * int64) []) = │
00:08:39 #12731 [verbose] > │ let v1 : int32 = 0 │
00:08:39 #12732 [verbose] > │ let v2 : int32 = method13(v0, v1) │
00:08:39 #12733 [verbose] > │ let v3 : (struct (int64 * int64) []) = Array.zeroCreate<struct (int64 * │
00:08:39 #12734 [verbose] > │ int64)> (v2) │
00:08:39 #12735 [verbose] > │ let v4 : int32 = 0 │
00:08:39 #12736 [verbose] > │ let v5 : int32 = method14(v3, v0, v4) │
00:08:39 #12737 [verbose] > │ v3 │
00:08:39 #12738 [verbose] > │ and method15 (v0 : int32, v1 : Mut1) : bool = │
00:08:39 #12739 [verbose] > │ let v2 : int32 = v1.l0 │
00:08:39 #12740 [verbose] > │ let v3 : bool = v2 < v0 │
00:08:39 #12741 [verbose] > │ v3 │
00:08:39 #12742 [verbose] > │ and closure3 () struct (v0 : int64, v1 : int64) : int64 = │
00:08:39 #12743 [verbose] > │ v1 │
00:08:39 #12744 [verbose] > │ and method17 (v0 : UH4, v1 : uint64) : uint64 = │
00:08:39 #12745 [verbose] > │ match v0 with │
00:08:39 #12746 [verbose] > │ | UH4_1(v2, v3, v4) -> (* Cons *) │
00:08:39 #12747 [verbose] > │ let v5 : uint64 = v1 + 1UL │
00:08:39 #12748 [verbose] > │ method17(v4, v5) │
00:08:39 #12749 [verbose] > │ | UH4_0 -> (* Nil *) │
00:08:39 #12750 [verbose] > │ v1 │
00:08:39 #12751 [verbose] > │ and method18 (v0 : (struct (UH2 * US0) []), v1 : UH4, v2 : uint64) : uint64 │
00:08:39 #12752 [verbose] > │ = │
00:08:39 #12753 [verbose] > │ match v1 with │
00:08:39 #12754 [verbose] > │ | UH4_1(v3, v4, v5) -> (* Cons *) │
00:08:39 #12755 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:08:39 #12756 [verbose] > │ let v6 : uint64 = v2 + 1UL │
00:08:39 #12757 [verbose] > │ method18(v0, v5, v6) │
00:08:39 #12758 [verbose] > │ | UH4_0 -> (* Nil *) │
00:08:39 #12759 [verbose] > │ v2 │
00:08:39 #12760 [verbose] > │ and method16 (v0 : UH4) : (struct (UH2 * US0) []) = │
00:08:39 #12761 [verbose] > │ let v1 : uint64 = 0UL │
00:08:39 #12762 [verbose] > │ let v2 : uint64 = method17(v0, v1) │
00:08:39 #12763 [verbose] > │ let v3 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)> │
00:08:39 #12764 [verbose] > │ (System.Convert.ToInt32(v2)) │
00:08:39 #12765 [verbose] > │ let v4 : uint64 = 0UL │
00:08:39 #12766 [verbose] > │ let v5 : uint64 = method18(v3, v0, v4) │
00:08:39 #12767 [verbose] > │ v3 │
00:08:39 #12768 [verbose] > │ and method20 (v0 : UH2, v1 : uint64) : uint64 = │
00:08:39 #12769 [verbose] > │ match v0 with │
00:08:39 #12770 [verbose] > │ | UH2_1(v2, v3) -> (* Cons *) │
00:08:39 #12771 [verbose] > │ let v4 : uint64 = v1 + 1UL │
00:08:40 #12772 [verbose] > │ method20(v3, v4) │
00:08:40 #12773 [verbose] > │ | UH2_0 -> (* Nil *) │
00:08:40 #12774 [verbose] > │ v1 │
00:08:40 #12775 [verbose] > │ and method21 (v0 : (string []), v1 : UH2, v2 : uint64) : uint64 = │
00:08:40 #12776 [verbose] > │ match v1 with │
00:08:40 #12777 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:08:40 #12778 [verbose] > │ v0.[int v2] <- v3 │
00:08:40 #12779 [verbose] > │ let v5 : uint64 = v2 + 1UL │
00:08:40 #12780 [verbose] > │ method21(v0, v4, v5) │
00:08:40 #12781 [verbose] > │ | UH2_0 -> (* Nil *) │
00:08:40 #12782 [verbose] > │ v2 │
00:08:40 #12783 [verbose] > │ and method19 (v0 : UH2) : (string []) = │
00:08:40 #12784 [verbose] > │ let v1 : uint64 = 0UL │
00:08:40 #12785 [verbose] > │ let v2 : uint64 = method20(v0, v1) │
00:08:40 #12786 [verbose] > │ let v3 : (string []) = Array.zeroCreate<string> │
00:08:40 #12787 [verbose] > │ (System.Convert.ToInt32(v2)) │
00:08:40 #12788 [verbose] > │ let v4 : uint64 = 0UL │
00:08:40 #12789 [verbose] > │ let v5 : uint64 = method21(v3, v0, v4) │
00:08:40 #12790 [verbose] > │ v3 │
00:08:40 #12791 [verbose] > │ and closure4 () (v0 : int64) : US1 = │
00:08:40 #12792 [verbose] > │ US1_0(v0) │
00:08:40 #12793 [verbose] > │ and method22 () : (int64 -> US1) = │
00:08:40 #12794 [verbose] > │ closure4() │
00:08:40 #12795 [verbose] > │ and method23 (v0 : uint64, v1 : Mut3) : bool = │
00:08:40 #12796 [verbose] > │ let v2 : uint64 = v1.l0 │
00:08:40 #12797 [verbose] > │ let v3 : bool = v2 < v0 │
00:08:40 #12798 [verbose] > │ v3 │
00:08:40 #12799 [verbose] > │ and method24 (v0 : UH5, v1 : UH5) : UH5 = │
00:08:40 #12800 [verbose] > │ match v0 with │
00:08:40 #12801 [verbose] > │ | UH5_1(v2, v3, v4) -> (* Cons *) │
00:08:40 #12802 [verbose] > │ let v5 : UH5 = UH5_1(v2, v3, v1) │
00:08:40 #12803 [verbose] > │ method24(v4, v5) │
00:08:40 #12804 [verbose] > │ | UH5_0 -> (* Nil *) │
00:08:40 #12805 [verbose] > │ v1 │
00:08:40 #12806 [verbose] > │ and method26 (v0 : UH5, v1 : int32) : int32 = │
00:08:40 #12807 [verbose] > │ match v0 with │
00:08:40 #12808 [verbose] > │ | UH5_1(v2, v3, v4) -> (* Cons *) │
00:08:40 #12809 [verbose] > │ let v5 : int32 = v1 + 1 │
00:08:40 #12810 [verbose] > │ method26(v4, v5) │
00:08:40 #12811 [verbose] > │ | UH5_0 -> (* Nil *) │
00:08:40 #12812 [verbose] > │ v1 │
00:08:40 #12813 [verbose] > │ and method27 (v0 : (struct (int32 * int64) []), v1 : UH5, v2 : int32) : │
00:08:40 #12814 [verbose] > │ int32 = │
00:08:40 #12815 [verbose] > │ match v1 with │
00:08:40 #12816 [verbose] > │ | UH5_1(v3, v4, v5) -> (* Cons *) │
00:08:40 #12817 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:08:40 #12818 [verbose] > │ let v6 : int32 = v2 + 1 │
00:08:40 #12819 [verbose] > │ method27(v0, v5, v6) │
00:08:40 #12820 [verbose] > │ | UH5_0 -> (* Nil *) │
00:08:40 #12821 [verbose] > │ v2 │
00:08:40 #12822 [verbose] > │ and method25 (v0 : UH5) : (struct (int32 * int64) []) = │
00:08:40 #12823 [verbose] > │ let v1 : int32 = 0 │
00:08:40 #12824 [verbose] > │ let v2 : int32 = method26(v0, v1) │
00:08:40 #12825 [verbose] > │ let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 * │
00:08:40 #12826 [verbose] > │ int64)> (v2) │
00:08:40 #12827 [verbose] > │ let v4 : int32 = 0 │
00:08:40 #12828 [verbose] > │ let v5 : int32 = method27(v3, v0, v4) │
00:08:40 #12829 [verbose] > │ v3 │
00:08:40 #12830 [verbose] > │ and method28 (v0 : UH2, v1 : UH6, v2 : int32) : struct (UH6 * int32) = │
00:08:40 #12831 [verbose] > │ match v0 with │
00:08:40 #12832 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:08:40 #12833 [verbose] > │ let v5 : int32 = v2 + 1 │
00:08:40 #12834 [verbose] > │ let v6 : UH6 = UH6_1(v2, v3, v1) │
00:08:40 #12835 [verbose] > │ method28(v4, v6, v5) │
00:08:40 #12836 [verbose] > │ | UH2_0 -> (* Nil *) │
00:08:40 #12837 [verbose] > │ struct (v1, v2) │
00:08:40 #12838 [verbose] > │ and method29 (v0 : UH6, v1 : UH6) : UH6 = │
00:08:40 #12839 [verbose] > │ match v0 with │
00:08:40 #12840 [verbose] > │ | UH6_1(v2, v3, v4) -> (* Cons *) │
00:08:40 #12841 [verbose] > │ let v5 : UH6 = UH6_1(v2, v3, v1) │
00:08:40 #12842 [verbose] > │ method29(v4, v5) │
00:08:40 #12843 [verbose] > │ | UH6_0 -> (* Nil *) │
00:08:40 #12844 [verbose] > │ v1 │
00:08:40 #12845 [verbose] > │ and method30 (v0 : Map<int32, int64>, v1 : UH6, v2 : UH2) : UH2 = │
00:08:40 #12846 [verbose] > │ match v1 with │
00:08:40 #12847 [verbose] > │ | UH6_1(v3, v4, v5) -> (* Cons *) │
00:08:40 #12848 [verbose] > │ let v6 : UH2 = method30(v0, v5, v2) │
00:08:40 #12849 [verbose] > │ let v7 : int64 = v0.[v3] │
00:08:40 #12850 [verbose] > │ let v8 : int32 = int32 v7 │
00:08:40 #12851 [verbose] > │ let v9 : string = v4.PadRight v8 │
00:08:40 #12852 [verbose] > │ UH2_1(v9, v6) │
00:08:40 #12853 [verbose] > │ | UH6_0 -> (* Nil *) │
00:08:40 #12854 [verbose] > │ v2 │
00:08:40 #12855 [verbose] > │ and method32 (v0 : UH2, v1 : int32) : int32 = │
00:08:40 #12856 [verbose] > │ match v0 with │
00:08:40 #12857 [verbose] > │ | UH2_1(v2, v3) -> (* Cons *) │
00:08:40 #12858 [verbose] > │ let v4 : int32 = v1 + 1 │
00:08:40 #12859 [verbose] > │ method32(v3, v4) │
00:08:40 #12860 [verbose] > │ | UH2_0 -> (* Nil *) │
00:08:40 #12861 [verbose] > │ v1 │
00:08:40 #12862 [verbose] > │ and method33 (v0 : (string []), v1 : UH2, v2 : int32) : int32 = │
00:08:40 #12863 [verbose] > │ match v1 with │
00:08:40 #12864 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:08:40 #12865 [verbose] > │ v0.[int v2] <- v3 │
00:08:40 #12866 [verbose] > │ let v5 : int32 = v2 + 1 │
00:08:40 #12867 [verbose] > │ method33(v0, v4, v5) │
00:08:40 #12868 [verbose] > │ | UH2_0 -> (* Nil *) │
00:08:40 #12869 [verbose] > │ v2 │
00:08:40 #12870 [verbose] > │ and method31 (v0 : UH2) : (string []) = │
00:08:40 #12871 [verbose] > │ let v1 : int32 = 0 │
00:08:40 #12872 [verbose] > │ let v2 : int32 = method32(v0, v1) │
00:08:40 #12873 [verbose] > │ let v3 : (string []) = Array.zeroCreate<string> (v2) │
00:08:40 #12874 [verbose] > │ let v4 : int32 = 0 │
00:08:40 #12875 [verbose] > │ let v5 : int32 = method33(v3, v0, v4) │
00:08:40 #12876 [verbose] > │ v3 │
00:08:40 #12877 [verbose] > │ and method35 (v0 : UH5, v1 : uint64) : uint64 = │
00:08:40 #12878 [verbose] > │ match v0 with │
00:08:40 #12879 [verbose] > │ | UH5_1(v2, v3, v4) -> (* Cons *) │
00:08:40 #12880 [verbose] > │ let v5 : uint64 = v1 + 1UL │
00:08:40 #12881 [verbose] > │ method35(v4, v5) │
00:08:40 #12882 [verbose] > │ | UH5_0 -> (* Nil *) │
00:08:40 #12883 [verbose] > │ v1 │
00:08:40 #12884 [verbose] > │ and method36 (v0 : (struct (int32 * int64) []), v1 : UH5, v2 : uint64) : │
00:08:40 #12885 [verbose] > │ uint64 = │
00:08:40 #12886 [verbose] > │ match v1 with │
00:08:40 #12887 [verbose] > │ | UH5_1(v3, v4, v5) -> (* Cons *) │
00:08:40 #12888 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:08:40 #12889 [verbose] > │ let v6 : uint64 = v2 + 1UL │
00:08:40 #12890 [verbose] > │ method36(v0, v5, v6) │
00:08:40 #12891 [verbose] > │ | UH5_0 -> (* Nil *) │
00:08:40 #12892 [verbose] > │ v2 │
00:08:40 #12893 [verbose] > │ and method34 (v0 : UH5) : (struct (int32 * int64) []) = │
00:08:40 #12894 [verbose] > │ let v1 : uint64 = 0UL │
00:08:40 #12895 [verbose] > │ let v2 : uint64 = method35(v0, v1) │
00:08:40 #12896 [verbose] > │ let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 * │
00:08:40 #12897 [verbose] > │ int64)> (System.Convert.ToInt32(v2)) │
00:08:40 #12898 [verbose] > │ let v4 : uint64 = 0UL │
00:08:40 #12899 [verbose] > │ let v5 : uint64 = method36(v3, v0, v4) │
00:08:40 #12900 [verbose] > │ v3 │
00:08:40 #12901 [verbose] > │ and closure5 () struct (v0 : int32, v1 : int64) : int64 = │
00:08:40 #12902 [verbose] > │ v1 │
00:08:40 #12903 [verbose] > │ and closure0 () () : unit = │
00:08:40 #12904 [verbose] > │ let v0 : (unit -> unit) = closure0() │
00:08:40 #12905 [verbose] > │ let v1 : string = nameof v0 │
00:08:40 #12906 [verbose] > │ let v2 : string = "" │
00:08:40 #12907 [verbose] > │ System.Console.WriteLine v2 │
00:08:40 #12908 [verbose] > │ System.Console.WriteLine v2 │
00:08:40 #12909 [verbose] > │ let v3 : string = $"Test: {v1}" │
00:08:40 #12910 [verbose] > │ System.Console.WriteLine v3 │
00:08:40 #12911 [verbose] > │ let v4 : float = 0.0 │
00:08:40 #12912 [verbose] > │ let v5 : float = 1.0 │
00:08:40 #12913 [verbose] > │ let v6 : float = 2.0 │
00:08:40 #12914 [verbose] > │ let v7 : float = 3.0 │
00:08:40 #12915 [verbose] > │ let v8 : float = 5.0 │
00:08:40 #12916 [verbose] > │ let v9 : float = 6.0 │
00:08:40 #12917 [verbose] > │ let v10 : UH0 = UH0_0 │
00:08:40 #12918 [verbose] > │ let v11 : UH0 = UH0_1(v8, v9, v10) │
00:08:40 #12919 [verbose] > │ let v12 : UH0 = UH0_1(v6, v7, v11) │
00:08:40 #12920 [verbose] > │ let v13 : UH0 = UH0_1(v4, v5, v12) │
00:08:40 #12921 [verbose] > │ let v14 : (struct (float * float) []) = method1(v13) │
00:08:40 #12922 [verbose] > │ let v15 : uint64 = System.Convert.ToUInt64 v14.Length │
00:08:40 #12923 [verbose] > │ let v16 : (struct (string * string * string * (int64 [])) []) = │
00:08:40 #12924 [verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))> │
00:08:40 #12925 [verbose] > │ (System.Convert.ToInt32(v15)) │
00:08:40 #12926 [verbose] > │ let v17 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #12927 [verbose] > │ while method4(v15, v17) do │
00:08:40 #12928 [verbose] > │ let v19 : uint64 = v17.l0 │
00:08:40 #12929 [verbose] > │ let struct (v20 : float, v21 : float) = v14.[int v19] │
00:08:40 #12930 [verbose] > │ let v22 : string = $"%A{v20}" │
00:08:40 #12931 [verbose] > │ System.Console.WriteLine v2 │
00:08:40 #12932 [verbose] > │ let v23 : string = $"Solution: {v22} " │
00:08:40 #12933 [verbose] > │ System.Console.WriteLine v23 │
00:08:40 #12934 [verbose] > │ let v24 : int32 = 0 │
00:08:40 #12935 [verbose] > │ let v25 : string = "A" │
00:08:40 #12936 [verbose] > │ let v26 : (float -> float) = closure1() │
00:08:40 #12937 [verbose] > │ let v27 : UH1 = UH1_0 │
00:08:40 #12938 [verbose] > │ let v28 : UH1 = UH1_1(v24, v25, v26, v27) │
00:08:40 #12939 [verbose] > │ let v29 : (struct (int32 * string * (float -> float)) []) = │
00:08:40 #12940 [verbose] > │ method5(v28) │
00:08:40 #12941 [verbose] > │ let v30 : uint64 = System.Convert.ToUInt64 v29.Length │
00:08:40 #12942 [verbose] > │ let v31 : (struct (float * int64) []) = Array.zeroCreate<struct │
00:08:40 #12943 [verbose] > │ (float * int64)> (System.Convert.ToInt32(v30)) │
00:08:40 #12944 [verbose] > │ let v32 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #12945 [verbose] > │ while method4(v30, v32) do │
00:08:40 #12946 [verbose] > │ let v34 : uint64 = v32.l0 │
00:08:40 #12947 [verbose] > │ let struct (v35 : int32, v36 : string, v37 : (float -> float)) = │
00:08:40 #12948 [verbose] > │ v29.[int v34] │
00:08:40 #12949 [verbose] > │ let v38 : unit option = None │
00:08:40 #12950 [verbose] > │ let mutable _v38 = v38 │
00:08:40 #12951 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:40 #12952 [verbose] > │ () │
00:08:40 #12953 [verbose] > │ #endif │
00:08:40 #12954 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:40 #12955 [verbose] > │ () │
00:08:40 #12956 [verbose] > │ #endif │
00:08:40 #12957 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:40 #12958 [verbose] > │ () │
00:08:40 #12959 [verbose] > │ #endif │
00:08:40 #12960 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:40 #12961 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:40 #12962 [verbose] > │ System.GC.Collect () │
00:08:40 #12963 [verbose] > │ () │
00:08:40 #12964 [verbose] > │ #endif │
00:08:40 #12965 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:40 #12966 [verbose] > │ () │
00:08:40 #12967 [verbose] > │ #endif │
00:08:40 #12968 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:40 #12969 [verbose] > │ FABLE_COMPILER_DART │
00:08:40 #12970 [verbose] > │ Unchecked.defaultof<unit> │
00:08:40 #12971 [verbose] > │ #endif │
00:08:40 #12972 [verbose] > │ |> fun x -> _v38 <- Some x │
00:08:40 #12973 [verbose] > │ _v38.Value │
00:08:40 #12974 [verbose] > │ let v39 : (unit -> System.Diagnostics.Stopwatch) = │
00:08:40 #12975 [verbose] > │ System.Diagnostics.Stopwatch │
00:08:40 #12976 [verbose] > │ let v40 : System.Diagnostics.Stopwatch = v39 () │
00:08:40 #12977 [verbose] > │ v40.Start () │
00:08:40 #12978 [verbose] > │ let v41 : int64 = v40.ElapsedMilliseconds │
00:08:40 #12979 [verbose] > │ let v42 : (int32 []) = Array.zeroCreate<int32> (2000001) │
00:08:40 #12980 [verbose] > │ let v43 : Mut1 = {l0 = 0} : Mut1 │
00:08:40 #12981 [verbose] > │ while method8(v43) do │
00:08:40 #12982 [verbose] > │ let v45 : int32 = v43.l0 │
00:08:40 #12983 [verbose] > │ v42.[int v45] <- v45 │
00:08:40 #12984 [verbose] > │ let v46 : int32 = v45 + 1 │
00:08:40 #12985 [verbose] > │ v43.l0 <- v46 │
00:08:40 #12986 [verbose] > │ () │
00:08:40 #12987 [verbose] > │ let v47 : ((int32 -> float) -> ((int32 []) -> (float []))) = │
00:08:40 #12988 [verbose] > │ Array.Parallel.map │
00:08:40 #12989 [verbose] > │ let v48 : (int32 -> float) = closure2(v20, v37) │
00:08:40 #12990 [verbose] > │ let v49 : ((int32 []) -> (float [])) = v47 v48 │
00:08:40 #12991 [verbose] > │ let v50 : (float []) = v49 v42 │
00:08:40 #12992 [verbose] > │ let v51 : int32 = v50.Length │
00:08:40 #12993 [verbose] > │ let v52 : int32 = v51 - 1 │
00:08:40 #12994 [verbose] > │ let v53 : float = v50.[int v52] │
00:08:40 #12995 [verbose] > │ let v54 : int64 = v40.ElapsedMilliseconds │
00:08:40 #12996 [verbose] > │ let v55 : int64 = v54 - v41 │
00:08:40 #12997 [verbose] > │ let v56 : string = $"Test case {v35 + 1}. {v36}. Time: {v55} " │
00:08:40 #12998 [verbose] > │ System.Console.WriteLine v56 │
00:08:40 #12999 [verbose] > │ v31.[int v34] <- struct (v53, v55) │
00:08:40 #13000 [verbose] > │ let v57 : uint64 = v34 + 1UL │
00:08:40 #13001 [verbose] > │ v32.l0 <- v57 │
00:08:40 #13002 [verbose] > │ () │
00:08:40 #13003 [verbose] > │ let v58 : uint64 = System.Convert.ToUInt64 v31.Length │
00:08:40 #13004 [verbose] > │ let v59 : (float []) = Array.zeroCreate<float> │
00:08:40 #13005 [verbose] > │ (System.Convert.ToInt32(v58)) │
00:08:40 #13006 [verbose] > │ let v60 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13007 [verbose] > │ while method4(v58, v60) do │
00:08:40 #13008 [verbose] > │ let v62 : uint64 = v60.l0 │
00:08:40 #13009 [verbose] > │ let struct (v63 : float, v64 : int64) = v31.[int v62] │
00:08:40 #13010 [verbose] > │ v59.[int v62] <- v63 │
00:08:40 #13011 [verbose] > │ let v65 : uint64 = v62 + 1UL │
00:08:40 #13012 [verbose] > │ v60.l0 <- v65 │
00:08:40 #13013 [verbose] > │ () │
00:08:40 #13014 [verbose] > │ let v66 : uint64 = System.Convert.ToUInt64 v59.Length │
00:08:40 #13015 [verbose] > │ let v67 : bool = v66 <= 1UL │
00:08:40 #13016 [verbose] > │ if v67 then │
00:08:40 #13017 [verbose] > │ () │
00:08:40 #13018 [verbose] > │ else │
00:08:40 #13019 [verbose] > │ let v68 : float = v59.[int 0UL] │
00:08:40 #13020 [verbose] > │ let v69 : uint64 = 0UL │
00:08:40 #13021 [verbose] > │ let v70 : bool = method9(v68, v59, v69) │
00:08:40 #13022 [verbose] > │ if v70 then │
00:08:40 #13023 [verbose] > │ () │
00:08:40 #13024 [verbose] > │ else │
00:08:40 #13025 [verbose] > │ let v71 : string = $"Challenge error: {v59}" │
00:08:40 #13026 [verbose] > │ failwith<unit> v71 │
00:08:40 #13027 [verbose] > │ let v72 : string = $"%A{v21}" │
00:08:40 #13028 [verbose] > │ let v73 : (float []) = Array.zeroCreate<float> │
00:08:40 #13029 [verbose] > │ (System.Convert.ToInt32(v58)) │
00:08:40 #13030 [verbose] > │ let v74 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13031 [verbose] > │ while method4(v58, v74) do │
00:08:40 #13032 [verbose] > │ let v76 : uint64 = v74.l0 │
00:08:40 #13033 [verbose] > │ let struct (v77 : float, v78 : int64) = v31.[int v76] │
00:08:40 #13034 [verbose] > │ v73.[int v76] <- v77 │
00:08:40 #13035 [verbose] > │ let v79 : uint64 = v76 + 1UL │
00:08:40 #13036 [verbose] > │ v74.l0 <- v79 │
00:08:40 #13037 [verbose] > │ () │
00:08:40 #13038 [verbose] > │ let v80 : float = v73.[int 0UL] │
00:08:40 #13039 [verbose] > │ let v81 : string = $"%A{v80}" │
00:08:40 #13040 [verbose] > │ let v82 : (int64 []) = Array.zeroCreate<int64> │
00:08:40 #13041 [verbose] > │ (System.Convert.ToInt32(v58)) │
00:08:40 #13042 [verbose] > │ let v83 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13043 [verbose] > │ while method4(v58, v83) do │
00:08:40 #13044 [verbose] > │ let v85 : uint64 = v83.l0 │
00:08:40 #13045 [verbose] > │ let struct (v86 : float, v87 : int64) = v31.[int v85] │
00:08:40 #13046 [verbose] > │ v82.[int v85] <- v87 │
00:08:40 #13047 [verbose] > │ let v88 : uint64 = v85 + 1UL │
00:08:40 #13048 [verbose] > │ v83.l0 <- v88 │
00:08:40 #13049 [verbose] > │ () │
00:08:40 #13050 [verbose] > │ v16.[int v19] <- struct (v72, v22, v81, v82) │
00:08:40 #13051 [verbose] > │ let v89 : uint64 = v19 + 1UL │
00:08:40 #13052 [verbose] > │ v17.l0 <- v89 │
00:08:40 #13053 [verbose] > │ () │
00:08:40 #13054 [verbose] > │ let v90 : uint64 = System.Convert.ToUInt64 v16.Length │
00:08:40 #13055 [verbose] > │ let v91 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)> │
00:08:40 #13056 [verbose] > │ (System.Convert.ToInt32(v90)) │
00:08:40 #13057 [verbose] > │ let v92 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13058 [verbose] > │ while method4(v90, v92) do │
00:08:40 #13059 [verbose] > │ let v94 : uint64 = v92.l0 │
00:08:40 #13060 [verbose] > │ let struct (v95 : string, v96 : string, v97 : string, v98 : (int64 [ │
00:08:40 #13061 [verbose] > │ ])) = v16.[int v94] │
00:08:40 #13062 [verbose] > │ let v99 : uint64 = System.Convert.ToUInt64 v98.Length │
00:08:40 #13063 [verbose] > │ let v100 : UH3 = UH3_0 │
00:08:40 #13064 [verbose] > │ let v101 : Mut2 = {l0 = 0UL; l1 = v100; l2 = 0L} : Mut2 │
00:08:40 #13065 [verbose] > │ while method10(v99, v101) do │
00:08:40 #13066 [verbose] > │ let v103 : uint64 = v101.l0 │
00:08:40 #13067 [verbose] > │ let struct (v104 : UH3, v105 : int64) = v101.l1, v101.l2 │
00:08:40 #13068 [verbose] > │ let v106 : int64 = v98.[int v103] │
00:08:40 #13069 [verbose] > │ let v107 : int64 = v105 + 1L │
00:08:40 #13070 [verbose] > │ let v108 : uint64 = v103 + 1UL │
00:08:40 #13071 [verbose] > │ let v109 : UH3 = UH3_1(v105, v106, v104) │
00:08:40 #13072 [verbose] > │ v101.l0 <- v108 │
00:08:40 #13073 [verbose] > │ v101.l1 <- v109 │
00:08:40 #13074 [verbose] > │ v101.l2 <- v107 │
00:08:40 #13075 [verbose] > │ () │
00:08:40 #13076 [verbose] > │ let struct (v110 : UH3, v111 : int64) = v101.l1, v101.l2 │
00:08:40 #13077 [verbose] > │ let v112 : UH3 = UH3_0 │
00:08:40 #13078 [verbose] > │ let v113 : UH3 = method11(v110, v112) │
00:08:40 #13079 [verbose] > │ let v114 : (struct (int64 * int64) []) = method12(v113) │
00:08:40 #13080 [verbose] > │ let v115 : int32 = v114.Length │
00:08:40 #13081 [verbose] > │ let v116 : (struct (int64 * int64) []) = Array.zeroCreate<struct │
00:08:40 #13082 [verbose] > │ (int64 * int64)> (v115) │
00:08:40 #13083 [verbose] > │ let v117 : Mut1 = {l0 = 0} : Mut1 │
00:08:40 #13084 [verbose] > │ while method15(v115, v117) do │
00:08:40 #13085 [verbose] > │ let v119 : int32 = v117.l0 │
00:08:40 #13086 [verbose] > │ let struct (v120 : int64, v121 : int64) = v114.[int v119] │
00:08:40 #13087 [verbose] > │ let v122 : int64 = v120 + 1L │
00:08:40 #13088 [verbose] > │ v116.[int v119] <- struct (v122, v121) │
00:08:40 #13089 [verbose] > │ let v123 : int32 = v119 + 1 │
00:08:40 #13090 [verbose] > │ v117.l0 <- v123 │
00:08:40 #13091 [verbose] > │ () │
00:08:40 #13092 [verbose] > │ let v124 : ((struct (int64 * int64) -> int64) -> ((struct (int64 * │
00:08:40 #13093 [verbose] > │ int64) []) -> (struct (int64 * int64) []))) = Array.sortBy │
00:08:40 #13094 [verbose] > │ let v125 : (struct (int64 * int64) -> int64) = closure3() │
00:08:40 #13095 [verbose] > │ let v126 : ((struct (int64 * int64) []) -> (struct (int64 * int64) [ │
00:08:40 #13096 [verbose] > │ ])) = v124 v125 │
00:08:40 #13097 [verbose] > │ let v127 : (struct (int64 * int64) []) = v126 v116 │
00:08:40 #13098 [verbose] > │ let struct (v128 : int64, v129 : int64) = v127.[int 0] │
00:08:40 #13099 [verbose] > │ let v130 : string = $"%A{struct (v128, v129)}" │
00:08:40 #13100 [verbose] > │ let v131 : bool = v95 = v97 │
00:08:40 #13101 [verbose] > │ let v136 : US0 = │
00:08:40 #13102 [verbose] > │ if v131 then │
00:08:40 #13103 [verbose] > │ let v132 : System.ConsoleColor = │
00:08:40 #13104 [verbose] > │ System.ConsoleColor.DarkGreen │
00:08:40 #13105 [verbose] > │ US0_0(v132) │
00:08:40 #13106 [verbose] > │ else │
00:08:40 #13107 [verbose] > │ let v134 : System.ConsoleColor = System.ConsoleColor.DarkRed │
00:08:40 #13108 [verbose] > │ US0_0(v134) │
00:08:40 #13109 [verbose] > │ let v137 : UH2 = UH2_0 │
00:08:40 #13110 [verbose] > │ let v138 : UH2 = UH2_1(v130, v137) │
00:08:40 #13111 [verbose] > │ let v139 : UH2 = UH2_1(v97, v138) │
00:08:40 #13112 [verbose] > │ let v140 : UH2 = UH2_1(v95, v139) │
00:08:40 #13113 [verbose] > │ let v141 : UH2 = UH2_1(v96, v140) │
00:08:40 #13114 [verbose] > │ v91.[int v94] <- struct (v141, v136) │
00:08:40 #13115 [verbose] > │ let v142 : uint64 = v94 + 1UL │
00:08:40 #13116 [verbose] > │ v92.l0 <- v142 │
00:08:40 #13117 [verbose] > │ () │
00:08:40 #13118 [verbose] > │ let v143 : string = "Input" │
00:08:40 #13119 [verbose] > │ let v144 : string = "Expected" │
00:08:40 #13120 [verbose] > │ let v145 : string = "Result" │
00:08:40 #13121 [verbose] > │ let v146 : string = "Best" │
00:08:40 #13122 [verbose] > │ let v147 : UH2 = UH2_0 │
00:08:40 #13123 [verbose] > │ let v148 : UH2 = UH2_1(v146, v147) │
00:08:40 #13124 [verbose] > │ let v149 : UH2 = UH2_1(v145, v148) │
00:08:40 #13125 [verbose] > │ let v150 : UH2 = UH2_1(v144, v149) │
00:08:40 #13126 [verbose] > │ let v151 : UH2 = UH2_1(v143, v150) │
00:08:40 #13127 [verbose] > │ let v152 : US0 = US0_1 │
00:08:40 #13128 [verbose] > │ let v153 : string = "---" │
00:08:40 #13129 [verbose] > │ let v154 : UH2 = UH2_0 │
00:08:40 #13130 [verbose] > │ let v155 : UH2 = UH2_1(v153, v154) │
00:08:40 #13131 [verbose] > │ let v156 : UH2 = UH2_1(v153, v155) │
00:08:40 #13132 [verbose] > │ let v157 : UH2 = UH2_1(v153, v156) │
00:08:40 #13133 [verbose] > │ let v158 : UH2 = UH2_1(v153, v157) │
00:08:40 #13134 [verbose] > │ let v159 : US0 = US0_1 │
00:08:40 #13135 [verbose] > │ let v160 : UH4 = UH4_0 │
00:08:40 #13136 [verbose] > │ let v161 : UH4 = UH4_1(v158, v159, v160) │
00:08:40 #13137 [verbose] > │ let v162 : UH4 = UH4_1(v151, v152, v161) │
00:08:40 #13138 [verbose] > │ let v163 : (struct (UH2 * US0) []) = method16(v162) │
00:08:40 #13139 [verbose] > │ let v164 : uint64 = System.Convert.ToUInt64 v163.Length │
00:08:40 #13140 [verbose] > │ let v165 : uint64 = System.Convert.ToUInt64 v91.Length │
00:08:40 #13141 [verbose] > │ let v166 : uint64 = v164 + v165 │
00:08:40 #13142 [verbose] > │ let v167 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * │
00:08:40 #13143 [verbose] > │ US0)> (System.Convert.ToInt32(v166)) │
00:08:40 #13144 [verbose] > │ let v168 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13145 [verbose] > │ while method4(v166, v168) do │
00:08:40 #13146 [verbose] > │ let v170 : uint64 = v168.l0 │
00:08:40 #13147 [verbose] > │ let v171 : bool = v170 < v164 │
00:08:40 #13148 [verbose] > │ let struct (v177 : UH2, v178 : US0) = │
00:08:40 #13149 [verbose] > │ if v171 then │
00:08:40 #13150 [verbose] > │ let struct (v172 : UH2, v173 : US0) = v163.[int v170] │
00:08:40 #13151 [verbose] > │ struct (v172, v173) │
00:08:40 #13152 [verbose] > │ else │
00:08:40 #13153 [verbose] > │ let v174 : uint64 = v170 - v164 │
00:08:40 #13154 [verbose] > │ let struct (v175 : UH2, v176 : US0) = v91.[int v174] │
00:08:40 #13155 [verbose] > │ struct (v175, v176) │
00:08:40 #13156 [verbose] > │ v167.[int v170] <- struct (v177, v178) │
00:08:40 #13157 [verbose] > │ let v179 : uint64 = v170 + 1UL │
00:08:40 #13158 [verbose] > │ v168.l0 <- v179 │
00:08:40 #13159 [verbose] > │ () │
00:08:40 #13160 [verbose] > │ let v180 : uint64 = System.Convert.ToUInt64 v167.Length │
00:08:40 #13161 [verbose] > │ let v181 : ((string []) []) = Array.zeroCreate<(string [])> │
00:08:40 #13162 [verbose] > │ (System.Convert.ToInt32(v180)) │
00:08:40 #13163 [verbose] > │ let v182 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13164 [verbose] > │ while method4(v180, v182) do │
00:08:40 #13165 [verbose] > │ let v184 : uint64 = v182.l0 │
00:08:40 #13166 [verbose] > │ let struct (v185 : UH2, v186 : US0) = v167.[int v184] │
00:08:40 #13167 [verbose] > │ let v187 : (string []) = method19(v185) │
00:08:40 #13168 [verbose] > │ v181.[int v184] <- v187 │
00:08:40 #13169 [verbose] > │ let v188 : uint64 = v184 + 1UL │
00:08:40 #13170 [verbose] > │ v182.l0 <- v188 │
00:08:40 #13171 [verbose] > │ () │
00:08:40 #13172 [verbose] > │ let v189 : (((string []) []) -> ((string []) [])) = Array.transpose │
00:08:40 #13173 [verbose] > │ let v190 : ((string []) []) = v189 v181 │
00:08:40 #13174 [verbose] > │ let v191 : uint64 = System.Convert.ToUInt64 v190.Length │
00:08:40 #13175 [verbose] > │ let v192 : (int64 []) = Array.zeroCreate<int64> │
00:08:40 #13176 [verbose] > │ (System.Convert.ToInt32(v191)) │
00:08:40 #13177 [verbose] > │ let v193 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13178 [verbose] > │ while method4(v191, v193) do │
00:08:40 #13179 [verbose] > │ let v195 : uint64 = v193.l0 │
00:08:40 #13180 [verbose] > │ let v196 : (string []) = v190.[int v195] │
00:08:40 #13181 [verbose] > │ let v197 : uint64 = System.Convert.ToUInt64 v196.Length │
00:08:40 #13182 [verbose] > │ let v198 : (int64 []) = Array.zeroCreate<int64> │
00:08:40 #13183 [verbose] > │ (System.Convert.ToInt32(v197)) │
00:08:40 #13184 [verbose] > │ let v199 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13185 [verbose] > │ while method4(v197, v199) do │
00:08:40 #13186 [verbose] > │ let v201 : uint64 = v199.l0 │
00:08:40 #13187 [verbose] > │ let v202 : string = v196.[int v201] │
00:08:40 #13188 [verbose] > │ let v203 : int64 = System.Convert.ToInt64 v202.Length │
00:08:40 #13189 [verbose] > │ v198.[int v201] <- v203 │
00:08:40 #13190 [verbose] > │ let v204 : uint64 = v201 + 1UL │
00:08:40 #13191 [verbose] > │ v199.l0 <- v204 │
00:08:40 #13192 [verbose] > │ () │
00:08:40 #13193 [verbose] > │ let v205 : ((int64 []) -> (int64 [])) = Array.sortDescending │
00:08:40 #13194 [verbose] > │ let v206 : (int64 []) = v205 v198 │
00:08:40 #13195 [verbose] > │ let v207 : (int32 -> ((int64 []) -> int64 option)) = Array.tryItem │
00:08:40 #13196 [verbose] > │ let v208 : ((int64 []) -> int64 option) = v207 0 │
00:08:40 #13197 [verbose] > │ let v209 : int64 option = v208 v206 │
00:08:40 #13198 [verbose] > │ let v210 : (int64 -> US1) = method22() │
00:08:40 #13199 [verbose] > │ let v211 : US1 = US1_1 │
00:08:40 #13200 [verbose] > │ let v212 : US1 = v209 |> Option.map v210 |> Option.defaultValue v211 │
00:08:40 #13201 [verbose] > │ let v215 : int64 = │
00:08:40 #13202 [verbose] > │ match v212 with │
00:08:40 #13203 [verbose] > │ | US1_1 -> (* None *) │
00:08:40 #13204 [verbose] > │ 0L │
00:08:40 #13205 [verbose] > │ | US1_0(v213) -> (* Some *) │
00:08:40 #13206 [verbose] > │ v213 │
00:08:40 #13207 [verbose] > │ v192.[int v195] <- v215 │
00:08:40 #13208 [verbose] > │ let v216 : uint64 = v195 + 1UL │
00:08:40 #13209 [verbose] > │ v193.l0 <- v216 │
00:08:40 #13210 [verbose] > │ () │
00:08:40 #13211 [verbose] > │ let v217 : uint64 = System.Convert.ToUInt64 v192.Length │
00:08:40 #13212 [verbose] > │ let v218 : UH5 = UH5_0 │
00:08:40 #13213 [verbose] > │ let v219 : Mut3 = {l0 = 0UL; l1 = v218; l2 = 0} : Mut3 │
00:08:40 #13214 [verbose] > │ while method23(v217, v219) do │
00:08:40 #13215 [verbose] > │ let v221 : uint64 = v219.l0 │
00:08:40 #13216 [verbose] > │ let struct (v222 : UH5, v223 : int32) = v219.l1, v219.l2 │
00:08:40 #13217 [verbose] > │ let v224 : int64 = v192.[int v221] │
00:08:40 #13218 [verbose] > │ let v225 : int32 = v223 + 1 │
00:08:40 #13219 [verbose] > │ let v226 : uint64 = v221 + 1UL │
00:08:40 #13220 [verbose] > │ let v227 : UH5 = UH5_1(v223, v224, v222) │
00:08:40 #13221 [verbose] > │ v219.l0 <- v226 │
00:08:40 #13222 [verbose] > │ v219.l1 <- v227 │
00:08:40 #13223 [verbose] > │ v219.l2 <- v225 │
00:08:40 #13224 [verbose] > │ () │
00:08:40 #13225 [verbose] > │ let struct (v228 : UH5, v229 : int32) = v219.l1, v219.l2 │
00:08:40 #13226 [verbose] > │ let v230 : UH5 = UH5_0 │
00:08:40 #13227 [verbose] > │ let v231 : UH5 = method24(v228, v230) │
00:08:40 #13228 [verbose] > │ let v232 : (struct (int32 * int64) []) = method25(v231) │
00:08:40 #13229 [verbose] > │ let v233 : Map<int32, int64> = v232 |> Array.map (fun (struct (a, b)) -> │
00:08:40 #13230 [verbose] > │ a, b) |> Map.ofArray │
00:08:40 #13231 [verbose] > │ let v234 : (struct ((string []) * US0) []) = Array.zeroCreate<struct │
00:08:40 #13232 [verbose] > │ ((string []) * US0)> (System.Convert.ToInt32(v180)) │
00:08:40 #13233 [verbose] > │ let v235 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13234 [verbose] > │ while method4(v180, v235) do │
00:08:40 #13235 [verbose] > │ let v237 : uint64 = v235.l0 │
00:08:40 #13236 [verbose] > │ let struct (v238 : UH2, v239 : US0) = v167.[int v237] │
00:08:40 #13237 [verbose] > │ let v240 : UH6 = UH6_0 │
00:08:40 #13238 [verbose] > │ let v241 : int32 = 0 │
00:08:40 #13239 [verbose] > │ let struct (v242 : UH6, v243 : int32) = method28(v238, v240, v241) │
00:08:40 #13240 [verbose] > │ let v244 : UH6 = UH6_0 │
00:08:40 #13241 [verbose] > │ let v245 : UH6 = method29(v242, v244) │
00:08:40 #13242 [verbose] > │ let v246 : UH2 = UH2_0 │
00:08:40 #13243 [verbose] > │ let v247 : UH2 = method30(v233, v245, v246) │
00:08:40 #13244 [verbose] > │ let v248 : (string []) = method31(v247) │
00:08:40 #13245 [verbose] > │ v234.[int v237] <- struct (v248, v239) │
00:08:40 #13246 [verbose] > │ let v249 : uint64 = v237 + 1UL │
00:08:40 #13247 [verbose] > │ v235.l0 <- v249 │
00:08:40 #13248 [verbose] > │ () │
00:08:40 #13249 [verbose] > │ System.Console.WriteLine v2 │
00:08:40 #13250 [verbose] > │ let v250 : uint64 = System.Convert.ToUInt64 v234.Length │
00:08:40 #13251 [verbose] > │ let v251 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13252 [verbose] > │ while method4(v250, v251) do │
00:08:40 #13253 [verbose] > │ let v253 : uint64 = v251.l0 │
00:08:40 #13254 [verbose] > │ let struct (v254 : (string []), v255 : US0) = v234.[int v253] │
00:08:40 #13255 [verbose] > │ match v255 with │
00:08:40 #13256 [verbose] > │ | US0_1 -> (* None *) │
00:08:40 #13257 [verbose] > │ let v258 : unit option = None │
00:08:40 #13258 [verbose] > │ let mutable _v258 = v258 │
00:08:40 #13259 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:40 #13260 [verbose] > │ () │
00:08:40 #13261 [verbose] > │ #endif │
00:08:40 #13262 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:40 #13263 [verbose] > │ () │
00:08:40 #13264 [verbose] > │ #endif │
00:08:40 #13265 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:40 #13266 [verbose] > │ () │
00:08:40 #13267 [verbose] > │ #endif │
00:08:40 #13268 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:40 #13269 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:40 #13270 [verbose] > │ System.Console.ResetColor () │
00:08:40 #13271 [verbose] > │ () │
00:08:40 #13272 [verbose] > │ #endif │
00:08:40 #13273 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:40 #13274 [verbose] > │ () │
00:08:40 #13275 [verbose] > │ #endif │
00:08:40 #13276 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:40 #13277 [verbose] > │ FABLE_COMPILER_DART │
00:08:40 #13278 [verbose] > │ Unchecked.defaultof<unit> │
00:08:40 #13279 [verbose] > │ #endif │
00:08:40 #13280 [verbose] > │ |> fun x -> _v258 <- Some x │
00:08:40 #13281 [verbose] > │ _v258.Value │
00:08:40 #13282 [verbose] > │ () │
00:08:40 #13283 [verbose] > │ | US0_0(v256) -> (* Some *) │
00:08:40 #13284 [verbose] > │ let v257 : unit option = None │
00:08:40 #13285 [verbose] > │ let mutable _v257 = v257 │
00:08:40 #13286 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:40 #13287 [verbose] > │ () │
00:08:40 #13288 [verbose] > │ #endif │
00:08:40 #13289 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:40 #13290 [verbose] > │ () │
00:08:40 #13291 [verbose] > │ #endif │
00:08:40 #13292 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:40 #13293 [verbose] > │ () │
00:08:40 #13294 [verbose] > │ #endif │
00:08:40 #13295 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:40 #13296 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:40 #13297 [verbose] > │ System.Console.ForegroundColor <- v256 │
00:08:40 #13298 [verbose] > │ () │
00:08:40 #13299 [verbose] > │ #endif │
00:08:40 #13300 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:40 #13301 [verbose] > │ () │
00:08:40 #13302 [verbose] > │ #endif │
00:08:40 #13303 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:40 #13304 [verbose] > │ FABLE_COMPILER_DART │
00:08:40 #13305 [verbose] > │ Unchecked.defaultof<unit> │
00:08:40 #13306 [verbose] > │ #endif │
00:08:40 #13307 [verbose] > │ |> fun x -> _v257 <- Some x │
00:08:40 #13308 [verbose] > │ _v257.Value │
00:08:40 #13309 [verbose] > │ () │
00:08:40 #13310 [verbose] > │ let v259 : string = "\t| " │
00:08:40 #13311 [verbose] > │ let v260 : string = System.String.Join (v259, v254) │
00:08:40 #13312 [verbose] > │ System.Console.WriteLine v260 │
00:08:40 #13313 [verbose] > │ let v261 : unit option = None │
00:08:40 #13314 [verbose] > │ let mutable _v261 = v261 │
00:08:40 #13315 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:40 #13316 [verbose] > │ () │
00:08:40 #13317 [verbose] > │ #endif │
00:08:40 #13318 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:40 #13319 [verbose] > │ () │
00:08:40 #13320 [verbose] > │ #endif │
00:08:40 #13321 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:40 #13322 [verbose] > │ () │
00:08:40 #13323 [verbose] > │ #endif │
00:08:40 #13324 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:40 #13325 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:40 #13326 [verbose] > │ System.Console.ResetColor () │
00:08:40 #13327 [verbose] > │ () │
00:08:40 #13328 [verbose] > │ #endif │
00:08:40 #13329 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:40 #13330 [verbose] > │ () │
00:08:40 #13331 [verbose] > │ #endif │
00:08:40 #13332 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:40 #13333 [verbose] > │ FABLE_COMPILER_DART │
00:08:40 #13334 [verbose] > │ Unchecked.defaultof<unit> │
00:08:40 #13335 [verbose] > │ #endif │
00:08:40 #13336 [verbose] > │ |> fun x -> _v261 <- Some x │
00:08:40 #13337 [verbose] > │ _v261.Value │
00:08:40 #13338 [verbose] > │ let v262 : uint64 = v253 + 1UL │
00:08:40 #13339 [verbose] > │ v251.l0 <- v262 │
00:08:40 #13340 [verbose] > │ () │
00:08:40 #13341 [verbose] > │ let v263 : ((float []) []) = Array.zeroCreate<(float [])> │
00:08:40 #13342 [verbose] > │ (System.Convert.ToInt32(v90)) │
00:08:40 #13343 [verbose] > │ let v264 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13344 [verbose] > │ while method4(v90, v264) do │
00:08:40 #13345 [verbose] > │ let v266 : uint64 = v264.l0 │
00:08:40 #13346 [verbose] > │ let struct (v267 : string, v268 : string, v269 : string, v270 : │
00:08:40 #13347 [verbose] > │ (int64 [])) = v16.[int v266] │
00:08:40 #13348 [verbose] > │ let v271 : (int64 -> float) = float │
00:08:40 #13349 [verbose] > │ let v272 : uint64 = System.Convert.ToUInt64 v270.Length │
00:08:40 #13350 [verbose] > │ let v273 : (float []) = Array.zeroCreate<float> │
00:08:40 #13351 [verbose] > │ (System.Convert.ToInt32(v272)) │
00:08:40 #13352 [verbose] > │ let v274 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13353 [verbose] > │ while method4(v272, v274) do │
00:08:40 #13354 [verbose] > │ let v276 : uint64 = v274.l0 │
00:08:40 #13355 [verbose] > │ let v277 : int64 = v270.[int v276] │
00:08:40 #13356 [verbose] > │ let v278 : float = v271 v277 │
00:08:40 #13357 [verbose] > │ v273.[int v276] <- v278 │
00:08:40 #13358 [verbose] > │ let v279 : uint64 = v276 + 1UL │
00:08:40 #13359 [verbose] > │ v274.l0 <- v279 │
00:08:40 #13360 [verbose] > │ () │
00:08:40 #13361 [verbose] > │ v263.[int v266] <- v273 │
00:08:40 #13362 [verbose] > │ let v280 : uint64 = v266 + 1UL │
00:08:40 #13363 [verbose] > │ v264.l0 <- v280 │
00:08:40 #13364 [verbose] > │ () │
00:08:40 #13365 [verbose] > │ let v281 : (((float []) []) -> ((float []) [])) = Array.transpose │
00:08:40 #13366 [verbose] > │ let v282 : ((float []) []) = v281 v263 │
00:08:40 #13367 [verbose] > │ let v283 : uint64 = System.Convert.ToUInt64 v282.Length │
00:08:40 #13368 [verbose] > │ let v284 : (float []) = Array.zeroCreate<float> │
00:08:40 #13369 [verbose] > │ (System.Convert.ToInt32(v283)) │
00:08:40 #13370 [verbose] > │ let v285 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13371 [verbose] > │ while method4(v283, v285) do │
00:08:40 #13372 [verbose] > │ let v287 : uint64 = v285.l0 │
00:08:40 #13373 [verbose] > │ let v288 : (float []) = v282.[int v287] │
00:08:40 #13374 [verbose] > │ let v289 : ((float []) -> float) = Array.average │
00:08:40 #13375 [verbose] > │ let v290 : float = v289 v288 │
00:08:40 #13376 [verbose] > │ v284.[int v287] <- v290 │
00:08:40 #13377 [verbose] > │ let v291 : uint64 = v287 + 1UL │
00:08:40 #13378 [verbose] > │ v285.l0 <- v291 │
00:08:40 #13379 [verbose] > │ () │
00:08:40 #13380 [verbose] > │ let v292 : (float -> int64) = int64 │
00:08:40 #13381 [verbose] > │ let v293 : uint64 = System.Convert.ToUInt64 v284.Length │
00:08:40 #13382 [verbose] > │ let v294 : (int64 []) = Array.zeroCreate<int64> │
00:08:40 #13383 [verbose] > │ (System.Convert.ToInt32(v293)) │
00:08:40 #13384 [verbose] > │ let v295 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13385 [verbose] > │ while method4(v293, v295) do │
00:08:40 #13386 [verbose] > │ let v297 : uint64 = v295.l0 │
00:08:40 #13387 [verbose] > │ let v298 : float = v284.[int v297] │
00:08:40 #13388 [verbose] > │ let v299 : int64 = v292 v298 │
00:08:40 #13389 [verbose] > │ v294.[int v297] <- v299 │
00:08:40 #13390 [verbose] > │ let v300 : uint64 = v297 + 1UL │
00:08:40 #13391 [verbose] > │ v295.l0 <- v300 │
00:08:40 #13392 [verbose] > │ () │
00:08:40 #13393 [verbose] > │ let v301 : uint64 = System.Convert.ToUInt64 v294.Length │
00:08:40 #13394 [verbose] > │ let v302 : UH5 = UH5_0 │
00:08:40 #13395 [verbose] > │ let v303 : Mut3 = {l0 = 0UL; l1 = v302; l2 = 0} : Mut3 │
00:08:40 #13396 [verbose] > │ while method23(v301, v303) do │
00:08:40 #13397 [verbose] > │ let v305 : uint64 = v303.l0 │
00:08:40 #13398 [verbose] > │ let struct (v306 : UH5, v307 : int32) = v303.l1, v303.l2 │
00:08:40 #13399 [verbose] > │ let v308 : int64 = v294.[int v305] │
00:08:40 #13400 [verbose] > │ let v309 : int32 = v307 + 1 │
00:08:40 #13401 [verbose] > │ let v310 : uint64 = v305 + 1UL │
00:08:40 #13402 [verbose] > │ let v311 : UH5 = UH5_1(v307, v308, v306) │
00:08:40 #13403 [verbose] > │ v303.l0 <- v310 │
00:08:40 #13404 [verbose] > │ v303.l1 <- v311 │
00:08:40 #13405 [verbose] > │ v303.l2 <- v309 │
00:08:40 #13406 [verbose] > │ () │
00:08:40 #13407 [verbose] > │ let struct (v312 : UH5, v313 : int32) = v303.l1, v303.l2 │
00:08:40 #13408 [verbose] > │ let v314 : UH5 = UH5_0 │
00:08:40 #13409 [verbose] > │ let v315 : UH5 = method24(v312, v314) │
00:08:40 #13410 [verbose] > │ let v316 : (struct (int32 * int64) []) = method34(v315) │
00:08:40 #13411 [verbose] > │ System.Console.WriteLine v2 │
00:08:40 #13412 [verbose] > │ let v317 : string = "Average Ranking " │
00:08:40 #13413 [verbose] > │ System.Console.WriteLine v317 │
00:08:40 #13414 [verbose] > │ let v318 : ((struct (int32 * int64) -> int64) -> ((struct (int32 * │
00:08:40 #13415 [verbose] > │ int64) []) -> (struct (int32 * int64) []))) = Array.sortBy │
00:08:40 #13416 [verbose] > │ let v319 : (struct (int32 * int64) -> int64) = closure5() │
00:08:40 #13417 [verbose] > │ let v320 : ((struct (int32 * int64) []) -> (struct (int32 * int64) [])) │
00:08:40 #13418 [verbose] > │ = v318 v319 │
00:08:40 #13419 [verbose] > │ let v321 : (struct (int32 * int64) []) = v320 v316 │
00:08:40 #13420 [verbose] > │ let v322 : uint64 = System.Convert.ToUInt64 v321.Length │
00:08:40 #13421 [verbose] > │ let v323 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13422 [verbose] > │ while method4(v322, v323) do │
00:08:40 #13423 [verbose] > │ let v325 : uint64 = v323.l0 │
00:08:40 #13424 [verbose] > │ let struct (v326 : int32, v327 : int64) = v321.[int v325] │
00:08:40 #13425 [verbose] > │ let v328 : string = $"Test case %d{v326 + 1}. Average Time: %A{v327} │
00:08:40 #13426 [verbose] > │ " │
00:08:40 #13427 [verbose] > │ System.Console.WriteLine v328 │
00:08:40 #13428 [verbose] > │ let v329 : uint64 = v325 + 1UL │
00:08:40 #13429 [verbose] > │ v323.l0 <- v329 │
00:08:40 #13430 [verbose] > │ () │
00:08:40 #13431 [verbose] > │ () │
00:08:40 #13432 [verbose] > │ and method0 () : unit = │
00:08:40 #13433 [verbose] > │ let v0 : (unit -> unit) = closure0() │
00:08:40 #13434 [verbose] > │ let v1 : string = nameof v0 │
00:08:40 #13435 [verbose] > │ let v2 : string = "" │
00:08:40 #13436 [verbose] > │ System.Console.WriteLine v2 │
00:08:40 #13437 [verbose] > │ System.Console.WriteLine v2 │
00:08:40 #13438 [verbose] > │ let v3 : string = $"Test: {v1}" │
00:08:40 #13439 [verbose] > │ System.Console.WriteLine v3 │
00:08:40 #13440 [verbose] > │ let v4 : float = 0.0 │
00:08:40 #13441 [verbose] > │ let v5 : float = 1.0 │
00:08:40 #13442 [verbose] > │ let v6 : float = 2.0 │
00:08:40 #13443 [verbose] > │ let v7 : float = 3.0 │
00:08:40 #13444 [verbose] > │ let v8 : float = 5.0 │
00:08:40 #13445 [verbose] > │ let v9 : float = 6.0 │
00:08:40 #13446 [verbose] > │ let v10 : UH0 = UH0_0 │
00:08:40 #13447 [verbose] > │ let v11 : UH0 = UH0_1(v8, v9, v10) │
00:08:40 #13448 [verbose] > │ let v12 : UH0 = UH0_1(v6, v7, v11) │
00:08:40 #13449 [verbose] > │ let v13 : UH0 = UH0_1(v4, v5, v12) │
00:08:40 #13450 [verbose] > │ let v14 : (struct (float * float) []) = method1(v13) │
00:08:40 #13451 [verbose] > │ let v15 : uint64 = System.Convert.ToUInt64 v14.Length │
00:08:40 #13452 [verbose] > │ let v16 : (struct (string * string * string * (int64 [])) []) = │
00:08:40 #13453 [verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))> │
00:08:40 #13454 [verbose] > │ (System.Convert.ToInt32(v15)) │
00:08:40 #13455 [verbose] > │ let v17 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13456 [verbose] > │ while method4(v15, v17) do │
00:08:40 #13457 [verbose] > │ let v19 : uint64 = v17.l0 │
00:08:40 #13458 [verbose] > │ let struct (v20 : float, v21 : float) = v14.[int v19] │
00:08:40 #13459 [verbose] > │ let v22 : string = $"%A{v20}" │
00:08:40 #13460 [verbose] > │ System.Console.WriteLine v2 │
00:08:40 #13461 [verbose] > │ let v23 : string = $"Solution: {v22} " │
00:08:40 #13462 [verbose] > │ System.Console.WriteLine v23 │
00:08:40 #13463 [verbose] > │ let v24 : int32 = 0 │
00:08:40 #13464 [verbose] > │ let v25 : string = "A" │
00:08:40 #13465 [verbose] > │ let v26 : (float -> float) = closure1() │
00:08:40 #13466 [verbose] > │ let v27 : UH1 = UH1_0 │
00:08:40 #13467 [verbose] > │ let v28 : UH1 = UH1_1(v24, v25, v26, v27) │
00:08:40 #13468 [verbose] > │ let v29 : (struct (int32 * string * (float -> float)) []) = │
00:08:40 #13469 [verbose] > │ method5(v28) │
00:08:40 #13470 [verbose] > │ let v30 : uint64 = System.Convert.ToUInt64 v29.Length │
00:08:40 #13471 [verbose] > │ let v31 : (struct (float * int64) []) = Array.zeroCreate<struct │
00:08:40 #13472 [verbose] > │ (float * int64)> (System.Convert.ToInt32(v30)) │
00:08:40 #13473 [verbose] > │ let v32 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13474 [verbose] > │ while method4(v30, v32) do │
00:08:40 #13475 [verbose] > │ let v34 : uint64 = v32.l0 │
00:08:40 #13476 [verbose] > │ let struct (v35 : int32, v36 : string, v37 : (float -> float)) = │
00:08:40 #13477 [verbose] > │ v29.[int v34] │
00:08:40 #13478 [verbose] > │ let v38 : unit option = None │
00:08:40 #13479 [verbose] > │ let mutable _v38 = v38 │
00:08:40 #13480 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:40 #13481 [verbose] > │ () │
00:08:40 #13482 [verbose] > │ #endif │
00:08:40 #13483 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:40 #13484 [verbose] > │ () │
00:08:40 #13485 [verbose] > │ #endif │
00:08:40 #13486 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:40 #13487 [verbose] > │ () │
00:08:40 #13488 [verbose] > │ #endif │
00:08:40 #13489 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:40 #13490 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:40 #13491 [verbose] > │ System.GC.Collect () │
00:08:40 #13492 [verbose] > │ () │
00:08:40 #13493 [verbose] > │ #endif │
00:08:40 #13494 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:40 #13495 [verbose] > │ () │
00:08:40 #13496 [verbose] > │ #endif │
00:08:40 #13497 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:40 #13498 [verbose] > │ FABLE_COMPILER_DART │
00:08:40 #13499 [verbose] > │ Unchecked.defaultof<unit> │
00:08:40 #13500 [verbose] > │ #endif │
00:08:40 #13501 [verbose] > │ |> fun x -> _v38 <- Some x │
00:08:40 #13502 [verbose] > │ _v38.Value │
00:08:40 #13503 [verbose] > │ let v39 : (unit -> System.Diagnostics.Stopwatch) = │
00:08:40 #13504 [verbose] > │ System.Diagnostics.Stopwatch │
00:08:40 #13505 [verbose] > │ let v40 : System.Diagnostics.Stopwatch = v39 () │
00:08:40 #13506 [verbose] > │ v40.Start () │
00:08:40 #13507 [verbose] > │ let v41 : int64 = v40.ElapsedMilliseconds │
00:08:40 #13508 [verbose] > │ let v42 : (int32 []) = Array.zeroCreate<int32> (2000001) │
00:08:40 #13509 [verbose] > │ let v43 : Mut1 = {l0 = 0} : Mut1 │
00:08:40 #13510 [verbose] > │ while method8(v43) do │
00:08:40 #13511 [verbose] > │ let v45 : int32 = v43.l0 │
00:08:40 #13512 [verbose] > │ v42.[int v45] <- v45 │
00:08:40 #13513 [verbose] > │ let v46 : int32 = v45 + 1 │
00:08:40 #13514 [verbose] > │ v43.l0 <- v46 │
00:08:40 #13515 [verbose] > │ () │
00:08:40 #13516 [verbose] > │ let v47 : ((int32 -> float) -> ((int32 []) -> (float []))) = │
00:08:40 #13517 [verbose] > │ Array.Parallel.map │
00:08:40 #13518 [verbose] > │ let v48 : (int32 -> float) = closure2(v20, v37) │
00:08:40 #13519 [verbose] > │ let v49 : ((int32 []) -> (float [])) = v47 v48 │
00:08:40 #13520 [verbose] > │ let v50 : (float []) = v49 v42 │
00:08:40 #13521 [verbose] > │ let v51 : int32 = v50.Length │
00:08:40 #13522 [verbose] > │ let v52 : int32 = v51 - 1 │
00:08:40 #13523 [verbose] > │ let v53 : float = v50.[int v52] │
00:08:40 #13524 [verbose] > │ let v54 : int64 = v40.ElapsedMilliseconds │
00:08:40 #13525 [verbose] > │ let v55 : int64 = v54 - v41 │
00:08:40 #13526 [verbose] > │ let v56 : string = $"Test case {v35 + 1}. {v36}. Time: {v55} " │
00:08:40 #13527 [verbose] > │ System.Console.WriteLine v56 │
00:08:40 #13528 [verbose] > │ v31.[int v34] <- struct (v53, v55) │
00:08:40 #13529 [verbose] > │ let v57 : uint64 = v34 + 1UL │
00:08:40 #13530 [verbose] > │ v32.l0 <- v57 │
00:08:40 #13531 [verbose] > │ () │
00:08:40 #13532 [verbose] > │ let v58 : uint64 = System.Convert.ToUInt64 v31.Length │
00:08:40 #13533 [verbose] > │ let v59 : (float []) = Array.zeroCreate<float> │
00:08:40 #13534 [verbose] > │ (System.Convert.ToInt32(v58)) │
00:08:40 #13535 [verbose] > │ let v60 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13536 [verbose] > │ while method4(v58, v60) do │
00:08:40 #13537 [verbose] > │ let v62 : uint64 = v60.l0 │
00:08:40 #13538 [verbose] > │ let struct (v63 : float, v64 : int64) = v31.[int v62] │
00:08:40 #13539 [verbose] > │ v59.[int v62] <- v63 │
00:08:40 #13540 [verbose] > │ let v65 : uint64 = v62 + 1UL │
00:08:40 #13541 [verbose] > │ v60.l0 <- v65 │
00:08:40 #13542 [verbose] > │ () │
00:08:40 #13543 [verbose] > │ let v66 : uint64 = System.Convert.ToUInt64 v59.Length │
00:08:40 #13544 [verbose] > │ let v67 : bool = v66 <= 1UL │
00:08:40 #13545 [verbose] > │ if v67 then │
00:08:40 #13546 [verbose] > │ () │
00:08:40 #13547 [verbose] > │ else │
00:08:40 #13548 [verbose] > │ let v68 : float = v59.[int 0UL] │
00:08:40 #13549 [verbose] > │ let v69 : uint64 = 0UL │
00:08:40 #13550 [verbose] > │ let v70 : bool = method9(v68, v59, v69) │
00:08:40 #13551 [verbose] > │ if v70 then │
00:08:40 #13552 [verbose] > │ () │
00:08:40 #13553 [verbose] > │ else │
00:08:40 #13554 [verbose] > │ let v71 : string = $"Challenge error: {v59}" │
00:08:40 #13555 [verbose] > │ failwith<unit> v71 │
00:08:40 #13556 [verbose] > │ let v72 : string = $"%A{v21}" │
00:08:40 #13557 [verbose] > │ let v73 : (float []) = Array.zeroCreate<float> │
00:08:40 #13558 [verbose] > │ (System.Convert.ToInt32(v58)) │
00:08:40 #13559 [verbose] > │ let v74 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13560 [verbose] > │ while method4(v58, v74) do │
00:08:40 #13561 [verbose] > │ let v76 : uint64 = v74.l0 │
00:08:40 #13562 [verbose] > │ let struct (v77 : float, v78 : int64) = v31.[int v76] │
00:08:40 #13563 [verbose] > │ v73.[int v76] <- v77 │
00:08:40 #13564 [verbose] > │ let v79 : uint64 = v76 + 1UL │
00:08:40 #13565 [verbose] > │ v74.l0 <- v79 │
00:08:40 #13566 [verbose] > │ () │
00:08:40 #13567 [verbose] > │ let v80 : float = v73.[int 0UL] │
00:08:40 #13568 [verbose] > │ let v81 : string = $"%A{v80}" │
00:08:40 #13569 [verbose] > │ let v82 : (int64 []) = Array.zeroCreate<int64> │
00:08:40 #13570 [verbose] > │ (System.Convert.ToInt32(v58)) │
00:08:40 #13571 [verbose] > │ let v83 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13572 [verbose] > │ while method4(v58, v83) do │
00:08:40 #13573 [verbose] > │ let v85 : uint64 = v83.l0 │
00:08:40 #13574 [verbose] > │ let struct (v86 : float, v87 : int64) = v31.[int v85] │
00:08:40 #13575 [verbose] > │ v82.[int v85] <- v87 │
00:08:40 #13576 [verbose] > │ let v88 : uint64 = v85 + 1UL │
00:08:40 #13577 [verbose] > │ v83.l0 <- v88 │
00:08:40 #13578 [verbose] > │ () │
00:08:40 #13579 [verbose] > │ v16.[int v19] <- struct (v72, v22, v81, v82) │
00:08:40 #13580 [verbose] > │ let v89 : uint64 = v19 + 1UL │
00:08:40 #13581 [verbose] > │ v17.l0 <- v89 │
00:08:40 #13582 [verbose] > │ () │
00:08:40 #13583 [verbose] > │ let v90 : uint64 = System.Convert.ToUInt64 v16.Length │
00:08:40 #13584 [verbose] > │ let v91 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)> │
00:08:40 #13585 [verbose] > │ (System.Convert.ToInt32(v90)) │
00:08:40 #13586 [verbose] > │ let v92 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13587 [verbose] > │ while method4(v90, v92) do │
00:08:40 #13588 [verbose] > │ let v94 : uint64 = v92.l0 │
00:08:40 #13589 [verbose] > │ let struct (v95 : string, v96 : string, v97 : string, v98 : (int64 [ │
00:08:40 #13590 [verbose] > │ ])) = v16.[int v94] │
00:08:40 #13591 [verbose] > │ let v99 : uint64 = System.Convert.ToUInt64 v98.Length │
00:08:40 #13592 [verbose] > │ let v100 : UH3 = UH3_0 │
00:08:40 #13593 [verbose] > │ let v101 : Mut2 = {l0 = 0UL; l1 = v100; l2 = 0L} : Mut2 │
00:08:40 #13594 [verbose] > │ while method10(v99, v101) do │
00:08:40 #13595 [verbose] > │ let v103 : uint64 = v101.l0 │
00:08:40 #13596 [verbose] > │ let struct (v104 : UH3, v105 : int64) = v101.l1, v101.l2 │
00:08:40 #13597 [verbose] > │ let v106 : int64 = v98.[int v103] │
00:08:40 #13598 [verbose] > │ let v107 : int64 = v105 + 1L │
00:08:40 #13599 [verbose] > │ let v108 : uint64 = v103 + 1UL │
00:08:40 #13600 [verbose] > │ let v109 : UH3 = UH3_1(v105, v106, v104) │
00:08:40 #13601 [verbose] > │ v101.l0 <- v108 │
00:08:40 #13602 [verbose] > │ v101.l1 <- v109 │
00:08:40 #13603 [verbose] > │ v101.l2 <- v107 │
00:08:40 #13604 [verbose] > │ () │
00:08:40 #13605 [verbose] > │ let struct (v110 : UH3, v111 : int64) = v101.l1, v101.l2 │
00:08:40 #13606 [verbose] > │ let v112 : UH3 = UH3_0 │
00:08:40 #13607 [verbose] > │ let v113 : UH3 = method11(v110, v112) │
00:08:40 #13608 [verbose] > │ let v114 : (struct (int64 * int64) []) = method12(v113) │
00:08:40 #13609 [verbose] > │ let v115 : int32 = v114.Length │
00:08:40 #13610 [verbose] > │ let v116 : (struct (int64 * int64) []) = Array.zeroCreate<struct │
00:08:40 #13611 [verbose] > │ (int64 * int64)> (v115) │
00:08:40 #13612 [verbose] > │ let v117 : Mut1 = {l0 = 0} : Mut1 │
00:08:40 #13613 [verbose] > │ while method15(v115, v117) do │
00:08:40 #13614 [verbose] > │ let v119 : int32 = v117.l0 │
00:08:40 #13615 [verbose] > │ let struct (v120 : int64, v121 : int64) = v114.[int v119] │
00:08:40 #13616 [verbose] > │ let v122 : int64 = v120 + 1L │
00:08:40 #13617 [verbose] > │ v116.[int v119] <- struct (v122, v121) │
00:08:40 #13618 [verbose] > │ let v123 : int32 = v119 + 1 │
00:08:40 #13619 [verbose] > │ v117.l0 <- v123 │
00:08:40 #13620 [verbose] > │ () │
00:08:40 #13621 [verbose] > │ let v124 : ((struct (int64 * int64) -> int64) -> ((struct (int64 * │
00:08:40 #13622 [verbose] > │ int64) []) -> (struct (int64 * int64) []))) = Array.sortBy │
00:08:40 #13623 [verbose] > │ let v125 : (struct (int64 * int64) -> int64) = closure3() │
00:08:40 #13624 [verbose] > │ let v126 : ((struct (int64 * int64) []) -> (struct (int64 * int64) [ │
00:08:40 #13625 [verbose] > │ ])) = v124 v125 │
00:08:40 #13626 [verbose] > │ let v127 : (struct (int64 * int64) []) = v126 v116 │
00:08:40 #13627 [verbose] > │ let struct (v128 : int64, v129 : int64) = v127.[int 0] │
00:08:40 #13628 [verbose] > │ let v130 : string = $"%A{struct (v128, v129)}" │
00:08:40 #13629 [verbose] > │ let v131 : bool = v95 = v97 │
00:08:40 #13630 [verbose] > │ let v136 : US0 = │
00:08:40 #13631 [verbose] > │ if v131 then │
00:08:40 #13632 [verbose] > │ let v132 : System.ConsoleColor = │
00:08:40 #13633 [verbose] > │ System.ConsoleColor.DarkGreen │
00:08:40 #13634 [verbose] > │ US0_0(v132) │
00:08:40 #13635 [verbose] > │ else │
00:08:40 #13636 [verbose] > │ let v134 : System.ConsoleColor = System.ConsoleColor.DarkRed │
00:08:40 #13637 [verbose] > │ US0_0(v134) │
00:08:40 #13638 [verbose] > │ let v137 : UH2 = UH2_0 │
00:08:40 #13639 [verbose] > │ let v138 : UH2 = UH2_1(v130, v137) │
00:08:40 #13640 [verbose] > │ let v139 : UH2 = UH2_1(v97, v138) │
00:08:40 #13641 [verbose] > │ let v140 : UH2 = UH2_1(v95, v139) │
00:08:40 #13642 [verbose] > │ let v141 : UH2 = UH2_1(v96, v140) │
00:08:40 #13643 [verbose] > │ v91.[int v94] <- struct (v141, v136) │
00:08:40 #13644 [verbose] > │ let v142 : uint64 = v94 + 1UL │
00:08:40 #13645 [verbose] > │ v92.l0 <- v142 │
00:08:40 #13646 [verbose] > │ () │
00:08:40 #13647 [verbose] > │ let v143 : string = "Input" │
00:08:40 #13648 [verbose] > │ let v144 : string = "Expected" │
00:08:40 #13649 [verbose] > │ let v145 : string = "Result" │
00:08:40 #13650 [verbose] > │ let v146 : string = "Best" │
00:08:40 #13651 [verbose] > │ let v147 : UH2 = UH2_0 │
00:08:40 #13652 [verbose] > │ let v148 : UH2 = UH2_1(v146, v147) │
00:08:40 #13653 [verbose] > │ let v149 : UH2 = UH2_1(v145, v148) │
00:08:40 #13654 [verbose] > │ let v150 : UH2 = UH2_1(v144, v149) │
00:08:40 #13655 [verbose] > │ let v151 : UH2 = UH2_1(v143, v150) │
00:08:40 #13656 [verbose] > │ let v152 : US0 = US0_1 │
00:08:40 #13657 [verbose] > │ let v153 : string = "---" │
00:08:40 #13658 [verbose] > │ let v154 : UH2 = UH2_0 │
00:08:40 #13659 [verbose] > │ let v155 : UH2 = UH2_1(v153, v154) │
00:08:40 #13660 [verbose] > │ let v156 : UH2 = UH2_1(v153, v155) │
00:08:40 #13661 [verbose] > │ let v157 : UH2 = UH2_1(v153, v156) │
00:08:40 #13662 [verbose] > │ let v158 : UH2 = UH2_1(v153, v157) │
00:08:40 #13663 [verbose] > │ let v159 : US0 = US0_1 │
00:08:40 #13664 [verbose] > │ let v160 : UH4 = UH4_0 │
00:08:40 #13665 [verbose] > │ let v161 : UH4 = UH4_1(v158, v159, v160) │
00:08:40 #13666 [verbose] > │ let v162 : UH4 = UH4_1(v151, v152, v161) │
00:08:40 #13667 [verbose] > │ let v163 : (struct (UH2 * US0) []) = method16(v162) │
00:08:40 #13668 [verbose] > │ let v164 : uint64 = System.Convert.ToUInt64 v163.Length │
00:08:40 #13669 [verbose] > │ let v165 : uint64 = System.Convert.ToUInt64 v91.Length │
00:08:40 #13670 [verbose] > │ let v166 : uint64 = v164 + v165 │
00:08:40 #13671 [verbose] > │ let v167 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * │
00:08:40 #13672 [verbose] > │ US0)> (System.Convert.ToInt32(v166)) │
00:08:40 #13673 [verbose] > │ let v168 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13674 [verbose] > │ while method4(v166, v168) do │
00:08:40 #13675 [verbose] > │ let v170 : uint64 = v168.l0 │
00:08:40 #13676 [verbose] > │ let v171 : bool = v170 < v164 │
00:08:40 #13677 [verbose] > │ let struct (v177 : UH2, v178 : US0) = │
00:08:40 #13678 [verbose] > │ if v171 then │
00:08:40 #13679 [verbose] > │ let struct (v172 : UH2, v173 : US0) = v163.[int v170] │
00:08:40 #13680 [verbose] > │ struct (v172, v173) │
00:08:40 #13681 [verbose] > │ else │
00:08:40 #13682 [verbose] > │ let v174 : uint64 = v170 - v164 │
00:08:40 #13683 [verbose] > │ let struct (v175 : UH2, v176 : US0) = v91.[int v174] │
00:08:40 #13684 [verbose] > │ struct (v175, v176) │
00:08:40 #13685 [verbose] > │ v167.[int v170] <- struct (v177, v178) │
00:08:40 #13686 [verbose] > │ let v179 : uint64 = v170 + 1UL │
00:08:40 #13687 [verbose] > │ v168.l0 <- v179 │
00:08:40 #13688 [verbose] > │ () │
00:08:40 #13689 [verbose] > │ let v180 : uint64 = System.Convert.ToUInt64 v167.Length │
00:08:40 #13690 [verbose] > │ let v181 : ((string []) []) = Array.zeroCreate<(string [])> │
00:08:40 #13691 [verbose] > │ (System.Convert.ToInt32(v180)) │
00:08:40 #13692 [verbose] > │ let v182 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13693 [verbose] > │ while method4(v180, v182) do │
00:08:40 #13694 [verbose] > │ let v184 : uint64 = v182.l0 │
00:08:40 #13695 [verbose] > │ let struct (v185 : UH2, v186 : US0) = v167.[int v184] │
00:08:40 #13696 [verbose] > │ let v187 : (string []) = method19(v185) │
00:08:40 #13697 [verbose] > │ v181.[int v184] <- v187 │
00:08:40 #13698 [verbose] > │ let v188 : uint64 = v184 + 1UL │
00:08:40 #13699 [verbose] > │ v182.l0 <- v188 │
00:08:40 #13700 [verbose] > │ () │
00:08:40 #13701 [verbose] > │ let v189 : (((string []) []) -> ((string []) [])) = Array.transpose │
00:08:40 #13702 [verbose] > │ let v190 : ((string []) []) = v189 v181 │
00:08:40 #13703 [verbose] > │ let v191 : uint64 = System.Convert.ToUInt64 v190.Length │
00:08:40 #13704 [verbose] > │ let v192 : (int64 []) = Array.zeroCreate<int64> │
00:08:40 #13705 [verbose] > │ (System.Convert.ToInt32(v191)) │
00:08:40 #13706 [verbose] > │ let v193 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13707 [verbose] > │ while method4(v191, v193) do │
00:08:40 #13708 [verbose] > │ let v195 : uint64 = v193.l0 │
00:08:40 #13709 [verbose] > │ let v196 : (string []) = v190.[int v195] │
00:08:40 #13710 [verbose] > │ let v197 : uint64 = System.Convert.ToUInt64 v196.Length │
00:08:40 #13711 [verbose] > │ let v198 : (int64 []) = Array.zeroCreate<int64> │
00:08:40 #13712 [verbose] > │ (System.Convert.ToInt32(v197)) │
00:08:40 #13713 [verbose] > │ let v199 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13714 [verbose] > │ while method4(v197, v199) do │
00:08:40 #13715 [verbose] > │ let v201 : uint64 = v199.l0 │
00:08:40 #13716 [verbose] > │ let v202 : string = v196.[int v201] │
00:08:40 #13717 [verbose] > │ let v203 : int64 = System.Convert.ToInt64 v202.Length │
00:08:40 #13718 [verbose] > │ v198.[int v201] <- v203 │
00:08:40 #13719 [verbose] > │ let v204 : uint64 = v201 + 1UL │
00:08:40 #13720 [verbose] > │ v199.l0 <- v204 │
00:08:40 #13721 [verbose] > │ () │
00:08:40 #13722 [verbose] > │ let v205 : ((int64 []) -> (int64 [])) = Array.sortDescending │
00:08:40 #13723 [verbose] > │ let v206 : (int64 []) = v205 v198 │
00:08:40 #13724 [verbose] > │ let v207 : (int32 -> ((int64 []) -> int64 option)) = Array.tryItem │
00:08:40 #13725 [verbose] > │ let v208 : ((int64 []) -> int64 option) = v207 0 │
00:08:40 #13726 [verbose] > │ let v209 : int64 option = v208 v206 │
00:08:40 #13727 [verbose] > │ let v210 : (int64 -> US1) = method22() │
00:08:40 #13728 [verbose] > │ let v211 : US1 = US1_1 │
00:08:40 #13729 [verbose] > │ let v212 : US1 = v209 |> Option.map v210 |> Option.defaultValue v211 │
00:08:40 #13730 [verbose] > │ let v215 : int64 = │
00:08:40 #13731 [verbose] > │ match v212 with │
00:08:40 #13732 [verbose] > │ | US1_1 -> (* None *) │
00:08:40 #13733 [verbose] > │ 0L │
00:08:40 #13734 [verbose] > │ | US1_0(v213) -> (* Some *) │
00:08:40 #13735 [verbose] > │ v213 │
00:08:40 #13736 [verbose] > │ v192.[int v195] <- v215 │
00:08:40 #13737 [verbose] > │ let v216 : uint64 = v195 + 1UL │
00:08:40 #13738 [verbose] > │ v193.l0 <- v216 │
00:08:40 #13739 [verbose] > │ () │
00:08:40 #13740 [verbose] > │ let v217 : uint64 = System.Convert.ToUInt64 v192.Length │
00:08:40 #13741 [verbose] > │ let v218 : UH5 = UH5_0 │
00:08:40 #13742 [verbose] > │ let v219 : Mut3 = {l0 = 0UL; l1 = v218; l2 = 0} : Mut3 │
00:08:40 #13743 [verbose] > │ while method23(v217, v219) do │
00:08:40 #13744 [verbose] > │ let v221 : uint64 = v219.l0 │
00:08:40 #13745 [verbose] > │ let struct (v222 : UH5, v223 : int32) = v219.l1, v219.l2 │
00:08:40 #13746 [verbose] > │ let v224 : int64 = v192.[int v221] │
00:08:40 #13747 [verbose] > │ let v225 : int32 = v223 + 1 │
00:08:40 #13748 [verbose] > │ let v226 : uint64 = v221 + 1UL │
00:08:40 #13749 [verbose] > │ let v227 : UH5 = UH5_1(v223, v224, v222) │
00:08:40 #13750 [verbose] > │ v219.l0 <- v226 │
00:08:40 #13751 [verbose] > │ v219.l1 <- v227 │
00:08:40 #13752 [verbose] > │ v219.l2 <- v225 │
00:08:40 #13753 [verbose] > │ () │
00:08:40 #13754 [verbose] > │ let struct (v228 : UH5, v229 : int32) = v219.l1, v219.l2 │
00:08:40 #13755 [verbose] > │ let v230 : UH5 = UH5_0 │
00:08:40 #13756 [verbose] > │ let v231 : UH5 = method24(v228, v230) │
00:08:40 #13757 [verbose] > │ let v232 : (struct (int32 * int64) []) = method25(v231) │
00:08:40 #13758 [verbose] > │ let v233 : Map<int32, int64> = v232 |> Array.map (fun (struct (a, b)) -> │
00:08:40 #13759 [verbose] > │ a, b) |> Map.ofArray │
00:08:40 #13760 [verbose] > │ let v234 : (struct ((string []) * US0) []) = Array.zeroCreate<struct │
00:08:40 #13761 [verbose] > │ ((string []) * US0)> (System.Convert.ToInt32(v180)) │
00:08:40 #13762 [verbose] > │ let v235 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13763 [verbose] > │ while method4(v180, v235) do │
00:08:40 #13764 [verbose] > │ let v237 : uint64 = v235.l0 │
00:08:40 #13765 [verbose] > │ let struct (v238 : UH2, v239 : US0) = v167.[int v237] │
00:08:40 #13766 [verbose] > │ let v240 : UH6 = UH6_0 │
00:08:40 #13767 [verbose] > │ let v241 : int32 = 0 │
00:08:40 #13768 [verbose] > │ let struct (v242 : UH6, v243 : int32) = method28(v238, v240, v241) │
00:08:40 #13769 [verbose] > │ let v244 : UH6 = UH6_0 │
00:08:40 #13770 [verbose] > │ let v245 : UH6 = method29(v242, v244) │
00:08:40 #13771 [verbose] > │ let v246 : UH2 = UH2_0 │
00:08:40 #13772 [verbose] > │ let v247 : UH2 = method30(v233, v245, v246) │
00:08:40 #13773 [verbose] > │ let v248 : (string []) = method31(v247) │
00:08:40 #13774 [verbose] > │ v234.[int v237] <- struct (v248, v239) │
00:08:40 #13775 [verbose] > │ let v249 : uint64 = v237 + 1UL │
00:08:40 #13776 [verbose] > │ v235.l0 <- v249 │
00:08:40 #13777 [verbose] > │ () │
00:08:40 #13778 [verbose] > │ System.Console.WriteLine v2 │
00:08:40 #13779 [verbose] > │ let v250 : uint64 = System.Convert.ToUInt64 v234.Length │
00:08:40 #13780 [verbose] > │ let v251 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13781 [verbose] > │ while method4(v250, v251) do │
00:08:40 #13782 [verbose] > │ let v253 : uint64 = v251.l0 │
00:08:40 #13783 [verbose] > │ let struct (v254 : (string []), v255 : US0) = v234.[int v253] │
00:08:40 #13784 [verbose] > │ match v255 with │
00:08:40 #13785 [verbose] > │ | US0_1 -> (* None *) │
00:08:40 #13786 [verbose] > │ let v258 : unit option = None │
00:08:40 #13787 [verbose] > │ let mutable _v258 = v258 │
00:08:40 #13788 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:40 #13789 [verbose] > │ () │
00:08:40 #13790 [verbose] > │ #endif │
00:08:40 #13791 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:40 #13792 [verbose] > │ () │
00:08:40 #13793 [verbose] > │ #endif │
00:08:40 #13794 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:40 #13795 [verbose] > │ () │
00:08:40 #13796 [verbose] > │ #endif │
00:08:40 #13797 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:40 #13798 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:40 #13799 [verbose] > │ System.Console.ResetColor () │
00:08:40 #13800 [verbose] > │ () │
00:08:40 #13801 [verbose] > │ #endif │
00:08:40 #13802 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:40 #13803 [verbose] > │ () │
00:08:40 #13804 [verbose] > │ #endif │
00:08:40 #13805 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:40 #13806 [verbose] > │ FABLE_COMPILER_DART │
00:08:40 #13807 [verbose] > │ Unchecked.defaultof<unit> │
00:08:40 #13808 [verbose] > │ #endif │
00:08:40 #13809 [verbose] > │ |> fun x -> _v258 <- Some x │
00:08:40 #13810 [verbose] > │ _v258.Value │
00:08:40 #13811 [verbose] > │ () │
00:08:40 #13812 [verbose] > │ | US0_0(v256) -> (* Some *) │
00:08:40 #13813 [verbose] > │ let v257 : unit option = None │
00:08:40 #13814 [verbose] > │ let mutable _v257 = v257 │
00:08:40 #13815 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:40 #13816 [verbose] > │ () │
00:08:40 #13817 [verbose] > │ #endif │
00:08:40 #13818 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:40 #13819 [verbose] > │ () │
00:08:40 #13820 [verbose] > │ #endif │
00:08:40 #13821 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:40 #13822 [verbose] > │ () │
00:08:40 #13823 [verbose] > │ #endif │
00:08:40 #13824 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:40 #13825 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:40 #13826 [verbose] > │ System.Console.ForegroundColor <- v256 │
00:08:40 #13827 [verbose] > │ () │
00:08:40 #13828 [verbose] > │ #endif │
00:08:40 #13829 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:40 #13830 [verbose] > │ () │
00:08:40 #13831 [verbose] > │ #endif │
00:08:40 #13832 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:40 #13833 [verbose] > │ FABLE_COMPILER_DART │
00:08:40 #13834 [verbose] > │ Unchecked.defaultof<unit> │
00:08:40 #13835 [verbose] > │ #endif │
00:08:40 #13836 [verbose] > │ |> fun x -> _v257 <- Some x │
00:08:40 #13837 [verbose] > │ _v257.Value │
00:08:40 #13838 [verbose] > │ () │
00:08:40 #13839 [verbose] > │ let v259 : string = "\t| " │
00:08:40 #13840 [verbose] > │ let v260 : string = System.String.Join (v259, v254) │
00:08:40 #13841 [verbose] > │ System.Console.WriteLine v260 │
00:08:40 #13842 [verbose] > │ let v261 : unit option = None │
00:08:40 #13843 [verbose] > │ let mutable _v261 = v261 │
00:08:40 #13844 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:08:40 #13845 [verbose] > │ () │
00:08:40 #13846 [verbose] > │ #endif │
00:08:40 #13847 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:08:40 #13848 [verbose] > │ () │
00:08:40 #13849 [verbose] > │ #endif │
00:08:40 #13850 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:08:40 #13851 [verbose] > │ () │
00:08:40 #13852 [verbose] > │ #endif │
00:08:40 #13853 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:08:40 #13854 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:08:40 #13855 [verbose] > │ System.Console.ResetColor () │
00:08:40 #13856 [verbose] > │ () │
00:08:40 #13857 [verbose] > │ #endif │
00:08:40 #13858 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:08:40 #13859 [verbose] > │ () │
00:08:40 #13860 [verbose] > │ #endif │
00:08:40 #13861 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:08:40 #13862 [verbose] > │ FABLE_COMPILER_DART │
00:08:40 #13863 [verbose] > │ Unchecked.defaultof<unit> │
00:08:40 #13864 [verbose] > │ #endif │
00:08:40 #13865 [verbose] > │ |> fun x -> _v261 <- Some x │
00:08:40 #13866 [verbose] > │ _v261.Value │
00:08:40 #13867 [verbose] > │ let v262 : uint64 = v253 + 1UL │
00:08:40 #13868 [verbose] > │ v251.l0 <- v262 │
00:08:40 #13869 [verbose] > │ () │
00:08:40 #13870 [verbose] > │ let v263 : ((float []) []) = Array.zeroCreate<(float [])> │
00:08:40 #13871 [verbose] > │ (System.Convert.ToInt32(v90)) │
00:08:40 #13872 [verbose] > │ let v264 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13873 [verbose] > │ while method4(v90, v264) do │
00:08:40 #13874 [verbose] > │ let v266 : uint64 = v264.l0 │
00:08:40 #13875 [verbose] > │ let struct (v267 : string, v268 : string, v269 : string, v270 : │
00:08:40 #13876 [verbose] > │ (int64 [])) = v16.[int v266] │
00:08:40 #13877 [verbose] > │ let v271 : (int64 -> float) = float │
00:08:40 #13878 [verbose] > │ let v272 : uint64 = System.Convert.ToUInt64 v270.Length │
00:08:40 #13879 [verbose] > │ let v273 : (float []) = Array.zeroCreate<float> │
00:08:40 #13880 [verbose] > │ (System.Convert.ToInt32(v272)) │
00:08:40 #13881 [verbose] > │ let v274 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:40 #13882 [verbose] > │ while method4(v272, v274) do │
00:08:40 #13883 [verbose] > │ let v276 : uint64 = v274.l0 │
00:08:40 #13884 [verbose] > │ let v277 : int64 = v270.[int v276] │
00:08:40 #13885 [verbose] > │ let v278 : float = v271 v277 │
00:08:40 #13886 [verbose] > │ v273.[int v276] <- v278 │
00:08:40 #13887 [verbose] > │ let v279 : uint64 = v276 + 1UL │
00:08:41 #13888 [verbose] > │ v274.l0 <- v279 │
00:08:41 #13889 [verbose] > │ () │
00:08:41 #13890 [verbose] > │ v263.[int v266] <- v273 │
00:08:41 #13891 [verbose] > │ let v280 : uint64 = v266 + 1UL │
00:08:41 #13892 [verbose] > │ v264.l0 <- v280 │
00:08:41 #13893 [verbose] > │ () │
00:08:41 #13894 [verbose] > │ let v281 : (((float []) []) -> ((float []) [])) = Array.transpose │
00:08:41 #13895 [verbose] > │ let v282 : ((float []) []) = v281 v263 │
00:08:41 #13896 [verbose] > │ let v283 : uint64 = System.Convert.ToUInt64 v282.Length │
00:08:41 #13897 [verbose] > │ let v284 : (float []) = Array.zeroCreate<float> │
00:08:41 #13898 [verbose] > │ (System.Convert.ToInt32(v283)) │
00:08:41 #13899 [verbose] > │ let v285 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:41 #13900 [verbose] > │ while method4(v283, v285) do │
00:08:41 #13901 [verbose] > │ let v287 : uint64 = v285.l0 │
00:08:41 #13902 [verbose] > │ let v288 : (float []) = v282.[int v287] │
00:08:41 #13903 [verbose] > │ let v289 : ((float []) -> float) = Array.average │
00:08:41 #13904 [verbose] > │ let v290 : float = v289 v288 │
00:08:41 #13905 [verbose] > │ v284.[int v287] <- v290 │
00:08:41 #13906 [verbose] > │ let v291 : uint64 = v287 + 1UL │
00:08:41 #13907 [verbose] > │ v285.l0 <- v291 │
00:08:41 #13908 [verbose] > │ () │
00:08:41 #13909 [verbose] > │ let v292 : (float -> int64) = int64 │
00:08:41 #13910 [verbose] > │ let v293 : uint64 = System.Convert.ToUInt64 v284.Length │
00:08:41 #13911 [verbose] > │ let v294 : (int64 []) = Array.zeroCreate<int64> │
00:08:41 #13912 [verbose] > │ (System.Convert.ToInt32(v293)) │
00:08:41 #13913 [verbose] > │ let v295 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:41 #13914 [verbose] > │ while method4(v293, v295) do │
00:08:41 #13915 [verbose] > │ let v297 : uint64 = v295.l0 │
00:08:41 #13916 [verbose] > │ let v298 : float = v284.[int v297] │
00:08:41 #13917 [verbose] > │ let v299 : int64 = v292 v298 │
00:08:41 #13918 [verbose] > │ v294.[int v297] <- v299 │
00:08:41 #13919 [verbose] > │ let v300 : uint64 = v297 + 1UL │
00:08:41 #13920 [verbose] > │ v295.l0 <- v300 │
00:08:41 #13921 [verbose] > │ () │
00:08:41 #13922 [verbose] > │ let v301 : uint64 = System.Convert.ToUInt64 v294.Length │
00:08:41 #13923 [verbose] > │ let v302 : UH5 = UH5_0 │
00:08:41 #13924 [verbose] > │ let v303 : Mut3 = {l0 = 0UL; l1 = v302; l2 = 0} : Mut3 │
00:08:41 #13925 [verbose] > │ while method23(v301, v303) do │
00:08:41 #13926 [verbose] > │ let v305 : uint64 = v303.l0 │
00:08:41 #13927 [verbose] > │ let struct (v306 : UH5, v307 : int32) = v303.l1, v303.l2 │
00:08:41 #13928 [verbose] > │ let v308 : int64 = v294.[int v305] │
00:08:41 #13929 [verbose] > │ let v309 : int32 = v307 + 1 │
00:08:41 #13930 [verbose] > │ let v310 : uint64 = v305 + 1UL │
00:08:41 #13931 [verbose] > │ let v311 : UH5 = UH5_1(v307, v308, v306) │
00:08:41 #13932 [verbose] > │ v303.l0 <- v310 │
00:08:41 #13933 [verbose] > │ v303.l1 <- v311 │
00:08:41 #13934 [verbose] > │ v303.l2 <- v309 │
00:08:41 #13935 [verbose] > │ () │
00:08:41 #13936 [verbose] > │ let struct (v312 : UH5, v313 : int32) = v303.l1, v303.l2 │
00:08:41 #13937 [verbose] > │ let v314 : UH5 = UH5_0 │
00:08:41 #13938 [verbose] > │ let v315 : UH5 = method24(v312, v314) │
00:08:41 #13939 [verbose] > │ let v316 : (struct (int32 * int64) []) = method34(v315) │
00:08:41 #13940 [verbose] > │ System.Console.WriteLine v2 │
00:08:41 #13941 [verbose] > │ let v317 : string = "Average Ranking " │
00:08:41 #13942 [verbose] > │ System.Console.WriteLine v317 │
00:08:41 #13943 [verbose] > │ let v318 : ((struct (int32 * int64) -> int64) -> ((struct (int32 * │
00:08:41 #13944 [verbose] > │ int64) []) -> (struct (int32 * int64) []))) = Array.sortBy │
00:08:41 #13945 [verbose] > │ let v319 : (struct (int32 * int64) -> int64) = closure5() │
00:08:41 #13946 [verbose] > │ let v320 : ((struct (int32 * int64) []) -> (struct (int32 * int64) [])) │
00:08:41 #13947 [verbose] > │ = v318 v319 │
00:08:41 #13948 [verbose] > │ let v321 : (struct (int32 * int64) []) = v320 v316 │
00:08:41 #13949 [verbose] > │ let v322 : uint64 = System.Convert.ToUInt64 v321.Length │
00:08:41 #13950 [verbose] > │ let v323 : Mut0 = {l0 = 0UL} : Mut0 │
00:08:41 #13951 [verbose] > │ while method4(v322, v323) do │
00:08:41 #13952 [verbose] > │ let v325 : uint64 = v323.l0 │
00:08:41 #13953 [verbose] > │ let struct (v326 : int32, v327 : int64) = v321.[int v325] │
00:08:41 #13954 [verbose] > │ let v328 : string = $"Test case %d{v326 + 1}. Average Time: %A{v327} │
00:08:41 #13955 [verbose] > │ " │
00:08:41 #13956 [verbose] > │ System.Console.WriteLine v328 │
00:08:41 #13957 [verbose] > │ let v329 : uint64 = v325 + 1UL │
00:08:41 #13958 [verbose] > │ v323.l0 <- v329 │
00:08:41 #13959 [verbose] > │ () │
00:08:41 #13960 [verbose] > │ () │
00:08:41 #13961 [verbose] > │ method0() │
00:08:41 #13962 [verbose] > │ │
00:08:41 #13963 [verbose] > │ │
00:08:41 #13964 [verbose] > │ │
00:08:41 #13965 [verbose] > │ Test: v0 │
00:08:41 #13966 [verbose] > │ │
00:08:41 #13967 [verbose] > │ Solution: 0.0 │
00:08:41 #13968 [verbose] > │ Test case 1. A. Time: 47 │
00:08:41 #13969 [verbose] > │ │
00:08:41 #13970 [verbose] > │ Solution: 2.0 │
00:08:41 #13971 [verbose] > │ Test case 1. A. Time: 37 │
00:08:41 #13972 [verbose] > │ │
00:08:41 #13973 [verbose] > │ Solution: 5.0 │
00:08:41 #13974 [verbose] > │ Test case 1. A. Time: 41 │
00:08:41 #13975 [verbose] > │ │
00:08:41 #13976 [verbose] > │ Input | Expected | Result | Best │
00:08:41 #13977 [verbose] > │ --- | --- | --- | --- │
00:08:41 #13978 [verbose] > │ 0.0 | 1.0 | 1.0 | struct (1L, 47L) │
00:08:41 #13979 [verbose] > │ 2.0 | 3.0 | 3.0 | struct (1L, 37L) │
00:08:41 #13980 [verbose] > │ 5.0 | 6.0 | 6.0 | struct (1L, 41L) │
00:08:41 #13981 [verbose] > │ │
00:08:41 #13982 [verbose] > │ Average Ranking │
00:08:41 #13983 [verbose] > │ Test case 1. Average Time: 41L │
00:08:41 #13984 [verbose] > │ │
00:08:41 #13985 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:45 #13986 [verbose] > [NbConvertApp] Converting notebook benchmark.dib.ipynb to html
00:08:45 #13987 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:08:45 #13988 [verbose] > validate(nb)
00:08:46 #13989 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:08:46 #13990 [verbose] > return _pygments_highlight(
00:08:47 #13991 [verbose] > [NbConvertApp] Writing 418417 bytes to benchmark.dib.html
00:08:48 #13992 [debug] executeAsync / exitCode: 0 / output.Length: 242641
00:08:48 #13993 [debug] main / executeCommand / exitCode: 0
00:08:48 #13994 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 stream.dib" -Retries 3"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:08:54 #13995 [verbose] >
00:08:54 #13996 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:08:54 #13997 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:08:54 #13998 [verbose] > │ # stream │
00:08:54 #13999 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:08:54 #14000 [verbose] >
00:08:54 #14001 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:08:54 #14002 [verbose] > // // test
00:08:54 #14003 [verbose] >
00:08:54 #14004 [verbose] > open testing
00:09:03 #14005 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:09:06 #14006 [verbose] >
00:09:06 #14007 [verbose] > ╭─[ 11.84s - stdout ]──────────────────────────────────────────────────────────╮
00:09:06 #14008 [verbose] > │ () │
00:09:06 #14009 [verbose] > │ │
00:09:06 #14010 [verbose] > │ │
00:09:06 #14011 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:06 #14012 [verbose] >
00:09:06 #14013 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:06 #14014 [verbose] > union rec stream t =
00:09:06 #14015 [verbose] > | StreamCons : t * (() -> stream t)
00:09:06 #14016 [verbose] > | StreamNil
00:09:06 #14017 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ec5e164ac07366f183dc76ef1b51602a0defc05ad4435dba9375a5275a4ed76a\main.spi
00:09:06 #14018 [verbose] >
00:09:06 #14019 [verbose] > ╭─[ 363.26ms - stdout ]────────────────────────────────────────────────────────╮
00:09:06 #14020 [verbose] > │ () │
00:09:06 #14021 [verbose] > │ │
00:09:06 #14022 [verbose] > │ │
00:09:06 #14023 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:06 #14024 [verbose] >
00:09:06 #14025 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:06 #14026 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:06 #14027 [verbose] > │ ## fold │
00:09:06 #14028 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:06 #14029 [verbose] >
00:09:06 #14030 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:06 #14031 [verbose] > inl fold fn init s =
00:09:06 #14032 [verbose] > inl rec body acc = function
00:09:06 #14033 [verbose] > | StreamCons (st, fn') => loop (fn acc st) (fn' ())
00:09:06 #14034 [verbose] > | StreamNil => acc
00:09:06 #14035 [verbose] > and inl loop acc = join_body body acc
00:09:06 #14036 [verbose] > loop init s
00:09:06 #14037 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\46d11b2427280a474479a75472c7fc6e27a423c40d13b933ba5fce989df2b52e\main.spi
00:09:06 #14038 [verbose] >
00:09:06 #14039 [verbose] > ╭─[ 346.46ms - stdout ]────────────────────────────────────────────────────────╮
00:09:06 #14040 [verbose] > │ () │
00:09:06 #14041 [verbose] > │ │
00:09:06 #14042 [verbose] > │ │
00:09:06 #14043 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:06 #14044 [verbose] >
00:09:06 #14045 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:06 #14046 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:06 #14047 [verbose] > │ ## fold_back │
00:09:06 #14048 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:06 #14049 [verbose] >
00:09:06 #14050 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:06 #14051 [verbose] > inl fold_back fn s init =
00:09:06 #14052 [verbose] > inl rec body acc = function
00:09:06 #14053 [verbose] > | StreamCons (st, fn') => fn st (loop acc (fn' ()))
00:09:06 #14054 [verbose] > | StreamNil => acc
00:09:06 #14055 [verbose] > and inl loop acc = join_body body acc
00:09:06 #14056 [verbose] > loop init s
00:09:07 #14057 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0164ff90265037c7589e8fb7b9ecacd0811f8b6de14de3a315624b9e0305f2e5\main.spi
00:09:07 #14058 [verbose] >
00:09:07 #14059 [verbose] > ╭─[ 426.78ms - stdout ]────────────────────────────────────────────────────────╮
00:09:07 #14060 [verbose] > │ () │
00:09:07 #14061 [verbose] > │ │
00:09:07 #14062 [verbose] > │ │
00:09:07 #14063 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:07 #14064 [verbose] >
00:09:07 #14065 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:07 #14066 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:07 #14067 [verbose] > │ ## to_list │
00:09:07 #14068 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:07 #14069 [verbose] >
00:09:07 #14070 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:07 #14071 [verbose] > inl to_list s =
00:09:07 #14072 [verbose] > (s, [[]])
00:09:07 #14073 [verbose] > ||> fold_back fun x acc =>
00:09:07 #14074 [verbose] > x :: acc
00:09:07 #14075 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b299ef3fbaa1ffb974df90dd8151b724f60ad923f7ea83a73164fc2e8cbfd85f\main.spi
00:09:07 #14076 [verbose] >
00:09:07 #14077 [verbose] > ╭─[ 280.33ms - stdout ]────────────────────────────────────────────────────────╮
00:09:07 #14078 [verbose] > │ () │
00:09:07 #14079 [verbose] > │ │
00:09:07 #14080 [verbose] > │ │
00:09:07 #14081 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:07 #14082 [verbose] >
00:09:07 #14083 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:07 #14084 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:07 #14085 [verbose] > │ ## rev │
00:09:07 #14086 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:07 #14087 [verbose] >
00:09:07 #14088 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:07 #14089 [verbose] > inl rev s =
00:09:07 #14090 [verbose] > (StreamNil, s)
00:09:07 #14091 [verbose] > ||> fold fun s x =>
00:09:07 #14092 [verbose] > StreamCons (x, fun () => s)
00:09:07 #14093 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\25e9fd50c5fbb3fadff28cedd6034e4c93894e8f5fb85b52feee0a0002645954\main.spi
00:09:07 #14094 [verbose] >
00:09:07 #14095 [verbose] > ╭─[ 328.59ms - stdout ]────────────────────────────────────────────────────────╮
00:09:07 #14096 [verbose] > │ () │
00:09:07 #14097 [verbose] > │ │
00:09:07 #14098 [verbose] > │ │
00:09:07 #14099 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:07 #14100 [verbose] >
00:09:07 #14101 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:07 #14102 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:07 #14103 [verbose] > │ ## from_list │
00:09:07 #14104 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:07 #14105 [verbose] >
00:09:07 #14106 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:07 #14107 [verbose] > inl from_list list =
00:09:07 #14108 [verbose] > (list, StreamNil)
00:09:07 #14109 [verbose] > ||> listm.foldBack fun x acc =>
00:09:07 #14110 [verbose] > StreamCons (x, fun () => acc)
00:09:08 #14111 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\eb18c021fc2ea3a3b4a122fd6696ae180d843f1e42519b73ddbce3f2b0689847\main.spi
00:09:08 #14112 [verbose] >
00:09:08 #14113 [verbose] > ╭─[ 398.45ms - stdout ]────────────────────────────────────────────────────────╮
00:09:08 #14114 [verbose] > │ () │
00:09:08 #14115 [verbose] > │ │
00:09:08 #14116 [verbose] > │ │
00:09:08 #14117 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:08 #14118 [verbose] >
00:09:08 #14119 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:08 #14120 [verbose] > // // test
00:09:08 #14121 [verbose] >
00:09:08 #14122 [verbose] > listm.init 3i32 id
00:09:08 #14123 [verbose] > |> from_list
00:09:08 #14124 [verbose] > |> rev
00:09:08 #14125 [verbose] > |> to_list
00:09:08 #14126 [verbose] > |> _assert_eq [[ 2; 1; 0 ]]
00:09:08 #14127 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d4cdff881161d287ef2dae58c2a2a48a4ac818bfbde735b8868b449ef6d3095b\main.spi
00:09:11 #14128 [verbose] >
00:09:11 #14129 [verbose] > ╭─[ 2.90s - stdout ]───────────────────────────────────────────────────────────╮
00:09:11 #14130 [verbose] > │ type UH0 = │
00:09:11 #14131 [verbose] > │ | UH0_0 │
00:09:11 #14132 [verbose] > │ | UH0_1 of int32 * UH0 │
00:09:11 #14133 [verbose] > │ let rec method0 () : unit = │
00:09:11 #14134 [verbose] > │ let v0 : UH0 = UH0_0 │
00:09:11 #14135 [verbose] > │ let v1 : UH0 = UH0_1(0, v0) │
00:09:11 #14136 [verbose] > │ let v2 : UH0 = UH0_1(1, v1) │
00:09:11 #14137 [verbose] > │ let v3 : UH0 = UH0_1(2, v2) │
00:09:11 #14138 [verbose] > │ let v4 : string = $"%A{v3}" │
00:09:11 #14139 [verbose] > │ System.Console.WriteLine v4 │
00:09:11 #14140 [verbose] > │ let v23 : UH0 = UH0_0 │
00:09:11 #14141 [verbose] > │ let v24 : UH0 = UH0_1(0, v23) │
00:09:11 #14142 [verbose] > │ let v25 : UH0 = UH0_1(1, v24) │
00:09:11 #14143 [verbose] > │ let v26 : UH0 = UH0_1(2, v25) │
00:09:11 #14144 [verbose] > │ let v27 : UH0 = UH0_0 │
00:09:11 #14145 [verbose] > │ let v28 : UH0 = UH0_1(0, v27) │
00:09:11 #14146 [verbose] > │ let v29 : UH0 = UH0_1(1, v28) │
00:09:11 #14147 [verbose] > │ let v30 : UH0 = UH0_1(2, v29) │
00:09:11 #14148 [verbose] > │ let v31 : string = $"__expect / actual: %A{v26} / expected: %A{v30}" │
00:09:11 #14149 [verbose] > │ () │
00:09:11 #14150 [verbose] > │ method0() │
00:09:11 #14151 [verbose] > │ │
00:09:11 #14152 [verbose] > │ UH0_1 (2, UH0_1 (1, UH0_1 (0, UH0_0))) │
00:09:11 #14153 [verbose] > │ │
00:09:11 #14154 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:11 #14155 [verbose] >
00:09:11 #14156 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:11 #14157 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:11 #14158 [verbose] > │ ## try_item │
00:09:11 #14159 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:11 #14160 [verbose] >
00:09:11 #14161 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:11 #14162 [verbose] > inl try_item i s =
00:09:11 #14163 [verbose] > inl rec body i = function
00:09:11 #14164 [verbose] > | StreamCons (x, _) when i <= 0 => Some x
00:09:11 #14165 [verbose] > | StreamCons (_, fn) => loop (i - 1) (fn ())
00:09:11 #14166 [verbose] > | StreamNil => None
00:09:11 #14167 [verbose] > and inl loop acc s' =
00:09:11 #14168 [verbose] > match var_is acc, var_is s' with
00:09:11 #14169 [verbose] > | false, false => body acc s'
00:09:11 #14170 [verbose] > | _ =>
00:09:11 #14171 [verbose] > inl acc = dyn acc
00:09:11 #14172 [verbose] > inl s' = dyn s'
00:09:11 #14173 [verbose] > join body acc s'
00:09:11 #14174 [verbose] > loop i s
00:09:11 #14175 [verbose] >
00:09:11 #14176 [verbose] > inl item i =
00:09:11 #14177 [verbose] > try_item i >> optionm.value
00:09:11 #14178 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ea7fbf904784eb86dc9f830fab62fcf1b636a2e693f7e86963e088ab53b86c27\main.spi
00:09:11 #14179 [verbose] >
00:09:11 #14180 [verbose] > ╭─[ 470.58ms - stdout ]────────────────────────────────────────────────────────╮
00:09:11 #14181 [verbose] > │ () │
00:09:11 #14182 [verbose] > │ │
00:09:11 #14183 [verbose] > │ │
00:09:11 #14184 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:11 #14185 [verbose] >
00:09:11 #14186 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:11 #14187 [verbose] > // // test
00:09:11 #14188 [verbose] >
00:09:11 #14189 [verbose] > listm.init 10i32 id
00:09:11 #14190 [verbose] > |> from_list
00:09:11 #14191 [verbose] > |> item 9i32
00:09:11 #14192 [verbose] > |> _assert_eq 9
00:09:12 #14193 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\639af1cf7869250282ea44349c3271e8e9114f7c9fe7038785d3f490ea78a775\main.spi
00:09:12 #14194 [verbose] >
00:09:12 #14195 [verbose] > ╭─[ 506.16ms - stdout ]────────────────────────────────────────────────────────╮
00:09:12 #14196 [verbose] > │ let rec method0 () : unit = │
00:09:12 #14197 [verbose] > │ let v0 : string = $"%A{9}" │
00:09:12 #14198 [verbose] > │ System.Console.WriteLine v0 │
00:09:12 #14199 [verbose] > │ let v1 : string = $"__expect / actual: %A{9} / expected: %A{9}" │
00:09:12 #14200 [verbose] > │ () │
00:09:12 #14201 [verbose] > │ method0() │
00:09:12 #14202 [verbose] > │ │
00:09:12 #14203 [verbose] > │ 9 │
00:09:12 #14204 [verbose] > │ │
00:09:12 #14205 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:12 #14206 [verbose] >
00:09:12 #14207 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:12 #14208 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:12 #14209 [verbose] > │ ## new_infinite_stream │
00:09:12 #14210 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:12 #14211 [verbose] >
00:09:12 #14212 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:12 #14213 [verbose] > inl new_infinite_stream fn =
00:09:12 #14214 [verbose] > inl rec loop n =
00:09:12 #14215 [verbose] > StreamCons (fn n, fun () => loop (n + 1))
00:09:12 #14216 [verbose] > loop 0
00:09:12 #14217 [verbose] >
00:09:12 #14218 [verbose] > inl new_infinite_stream_ fn =
00:09:12 #14219 [verbose] > let rec loop n =
00:09:12 #14220 [verbose] > StreamCons (fn n, fun () => loop (n + 1))
00:09:12 #14221 [verbose] > loop 0
00:09:12 #14222 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\7cb1e7b6a82f7df548f42f0a1026996e2529db405f972ecd4f2ddcdde8316a2f\main.spi
00:09:12 #14223 [verbose] >
00:09:12 #14224 [verbose] > ╭─[ 389.87ms - stdout ]────────────────────────────────────────────────────────╮
00:09:12 #14225 [verbose] > │ () │
00:09:12 #14226 [verbose] > │ │
00:09:12 #14227 [verbose] > │ │
00:09:12 #14228 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:12 #14229 [verbose] >
00:09:12 #14230 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:12 #14231 [verbose] > // // test
00:09:12 #14232 [verbose] >
00:09:12 #14233 [verbose] > new_infinite_stream print_and_return
00:09:12 #14234 [verbose] > |> item 4i32
00:09:12 #14235 [verbose] > |> _assert_eq 4i32
00:09:12 #14236 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\cd124474f0fc7c55758f9f3563c4f792dd1e2f51f1d019b539e00df4cce8448d\main.spi
00:09:13 #14237 [verbose] >
00:09:13 #14238 [verbose] > ╭─[ 448.59ms - stdout ]────────────────────────────────────────────────────────╮
00:09:13 #14239 [verbose] > │ let rec method0 () : unit = │
00:09:13 #14240 [verbose] > │ printfn $"print_and_return / x: {0}" │
00:09:13 #14241 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:13 #14242 [verbose] > │ printfn $"print_and_return / x: {2}" │
00:09:13 #14243 [verbose] > │ printfn $"print_and_return / x: {3}" │
00:09:13 #14244 [verbose] > │ printfn $"print_and_return / x: {4}" │
00:09:13 #14245 [verbose] > │ let v0 : string = $"%A{4}" │
00:09:13 #14246 [verbose] > │ System.Console.WriteLine v0 │
00:09:13 #14247 [verbose] > │ let v1 : string = $"__expect / actual: %A{4} / expected: %A{4}" │
00:09:13 #14248 [verbose] > │ () │
00:09:13 #14249 [verbose] > │ method0() │
00:09:13 #14250 [verbose] > │ │
00:09:13 #14251 [verbose] > │ print_and_return / x: 0 │
00:09:13 #14252 [verbose] > │ print_and_return / x: 1 │
00:09:13 #14253 [verbose] > │ print_and_return / x: 2 │
00:09:13 #14254 [verbose] > │ print_and_return / x: 3 │
00:09:13 #14255 [verbose] > │ print_and_return / x: 4 │
00:09:13 #14256 [verbose] > │ 4 │
00:09:13 #14257 [verbose] > │ │
00:09:13 #14258 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:13 #14259 [verbose] >
00:09:13 #14260 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:13 #14261 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:13 #14262 [verbose] > │ ## new_finite_stream │
00:09:13 #14263 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:13 #14264 [verbose] >
00:09:13 #14265 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:13 #14266 [verbose] > inl new_finite_stream fn max =
00:09:13 #14267 [verbose] > inl rec loop n =
00:09:13 #14268 [verbose] > if n >= max
00:09:13 #14269 [verbose] > then StreamNil
00:09:13 #14270 [verbose] > else StreamCons (fn n, fun () => loop (n + 1))
00:09:13 #14271 [verbose] > loop 0
00:09:13 #14272 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e322a9835bb539466a32722801f79e3b1a068747b7ae8d308f941a95a9319ee6\main.spi
00:09:13 #14273 [verbose] >
00:09:13 #14274 [verbose] > ╭─[ 511.79ms - stdout ]────────────────────────────────────────────────────────╮
00:09:13 #14275 [verbose] > │ () │
00:09:13 #14276 [verbose] > │ │
00:09:13 #14277 [verbose] > │ │
00:09:13 #14278 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:13 #14279 [verbose] >
00:09:13 #14280 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:13 #14281 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:13 #14282 [verbose] > │ ## memoize │
00:09:13 #14283 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:13 #14284 [verbose] >
00:09:13 #14285 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:13 #14286 [verbose] > union memoized_stream t =
00:09:13 #14287 [verbose] > | NotComputed : () -> stream t
00:09:13 #14288 [verbose] > | Computed : stream t
00:09:13 #14289 [verbose] >
00:09:13 #14290 [verbose] > inl memoize s =
00:09:13 #14291 [verbose] > inl rec body s =
00:09:13 #14292 [verbose] > inl state = mut (NotComputed s)
00:09:13 #14293 [verbose] > fun () =>
00:09:13 #14294 [verbose] > match *state with
00:09:13 #14295 [verbose] > | Computed x => x
00:09:13 #14296 [verbose] > | NotComputed fn =>
00:09:13 #14297 [verbose] > inl new_state =
00:09:13 #14298 [verbose] > match fn () with
00:09:13 #14299 [verbose] > | StreamNil => StreamNil
00:09:13 #14300 [verbose] > | StreamCons (x, fn) => StreamCons (x, loop fn)
00:09:13 #14301 [verbose] > state <- Computed new_state
00:09:13 #14302 [verbose] > new_state
00:09:13 #14303 [verbose] > and inl loop s' = join_body_unit body s s'
00:09:13 #14304 [verbose] > loop (fun () => s)
00:09:13 #14305 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a87a0d438a85f99ed29debb238f8a219ab4bedc1e327efe646a031e2281d507e\main.spi
00:09:14 #14306 [verbose] >
00:09:14 #14307 [verbose] > ╭─[ 317.49ms - stdout ]────────────────────────────────────────────────────────╮
00:09:14 #14308 [verbose] > │ () │
00:09:14 #14309 [verbose] > │ │
00:09:14 #14310 [verbose] > │ │
00:09:14 #14311 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:14 #14312 [verbose] >
00:09:14 #14313 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:14 #14314 [verbose] > // // test
00:09:14 #14315 [verbose] >
00:09:14 #14316 [verbose] > inl memo_stream = new_finite_stream print_and_return 10 |> memoize
00:09:14 #14317 [verbose] >
00:09:14 #14318 [verbose] > memo_stream ()
00:09:14 #14319 [verbose] > |> item 3i32
00:09:14 #14320 [verbose] > |> _assert_eq 3i32
00:09:14 #14321 [verbose] >
00:09:14 #14322 [verbose] > memo_stream ()
00:09:14 #14323 [verbose] > |> item 5i32
00:09:14 #14324 [verbose] > |> _assert_eq 5i32
00:09:14 #14325 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1d79ef58c19a796aede33305401f553e0b65733855a18ab95b2513c9ed417fcf\main.spi
00:09:15 #14326 [verbose] >
00:09:15 #14327 [verbose] > ╭─[ 1.20s - stdout ]───────────────────────────────────────────────────────────╮
00:09:15 #14328 [verbose] > │ type UH0 = │
00:09:15 #14329 [verbose] > │ | UH0_0 of int32 * (unit -> UH0) │
00:09:15 #14330 [verbose] > │ | UH0_1 │
00:09:15 #14331 [verbose] > │ and [<Struct>] US0 = │
00:09:15 #14332 [verbose] > │ | US0_0 of f0_0 : (unit -> UH0) │
00:09:15 #14333 [verbose] > │ | US0_1 of f1_0 : UH0 │
00:09:15 #14334 [verbose] > │ and Mut0 = {mutable l0 : US0} │
00:09:15 #14335 [verbose] > │ and [<Struct>] US1 = │
00:09:15 #14336 [verbose] > │ | US1_0 of f0_0 : int32 │
00:09:15 #14337 [verbose] > │ | US1_1 │
00:09:15 #14338 [verbose] > │ let rec closure10 () () : UH0 = │
00:09:15 #14339 [verbose] > │ UH0_1 │
00:09:15 #14340 [verbose] > │ and closure9 () () : UH0 = │
00:09:15 #14341 [verbose] > │ printfn $"print_and_return / x: {9}" │
00:09:15 #14342 [verbose] > │ let v0 : (unit -> UH0) = closure10() │
00:09:15 #14343 [verbose] > │ UH0_0(9, v0) │
00:09:15 #14344 [verbose] > │ and closure8 () () : UH0 = │
00:09:15 #14345 [verbose] > │ printfn $"print_and_return / x: {8}" │
00:09:15 #14346 [verbose] > │ let v0 : (unit -> UH0) = closure9() │
00:09:15 #14347 [verbose] > │ UH0_0(8, v0) │
00:09:15 #14348 [verbose] > │ and closure7 () () : UH0 = │
00:09:15 #14349 [verbose] > │ printfn $"print_and_return / x: {7}" │
00:09:15 #14350 [verbose] > │ let v0 : (unit -> UH0) = closure8() │
00:09:15 #14351 [verbose] > │ UH0_0(7, v0) │
00:09:15 #14352 [verbose] > │ and closure6 () () : UH0 = │
00:09:15 #14353 [verbose] > │ printfn $"print_and_return / x: {6}" │
00:09:15 #14354 [verbose] > │ let v0 : (unit -> UH0) = closure7() │
00:09:15 #14355 [verbose] > │ UH0_0(6, v0) │
00:09:15 #14356 [verbose] > │ and closure5 () () : UH0 = │
00:09:15 #14357 [verbose] > │ printfn $"print_and_return / x: {5}" │
00:09:15 #14358 [verbose] > │ let v0 : (unit -> UH0) = closure6() │
00:09:15 #14359 [verbose] > │ UH0_0(5, v0) │
00:09:15 #14360 [verbose] > │ and closure4 () () : UH0 = │
00:09:15 #14361 [verbose] > │ printfn $"print_and_return / x: {4}" │
00:09:15 #14362 [verbose] > │ let v0 : (unit -> UH0) = closure5() │
00:09:15 #14363 [verbose] > │ UH0_0(4, v0) │
00:09:15 #14364 [verbose] > │ and closure3 () () : UH0 = │
00:09:15 #14365 [verbose] > │ printfn $"print_and_return / x: {3}" │
00:09:15 #14366 [verbose] > │ let v0 : (unit -> UH0) = closure4() │
00:09:15 #14367 [verbose] > │ UH0_0(3, v0) │
00:09:15 #14368 [verbose] > │ and closure2 () () : UH0 = │
00:09:15 #14369 [verbose] > │ printfn $"print_and_return / x: {2}" │
00:09:15 #14370 [verbose] > │ let v0 : (unit -> UH0) = closure3() │
00:09:15 #14371 [verbose] > │ UH0_0(2, v0) │
00:09:15 #14372 [verbose] > │ and closure1 () () : UH0 = │
00:09:15 #14373 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:15 #14374 [verbose] > │ let v0 : (unit -> UH0) = closure2() │
00:09:15 #14375 [verbose] > │ UH0_0(1, v0) │
00:09:15 #14376 [verbose] > │ and closure0 () () : UH0 = │
00:09:15 #14377 [verbose] > │ let v0 : (unit -> UH0) = closure1() │
00:09:15 #14378 [verbose] > │ UH0_0(0, v0) │
00:09:15 #14379 [verbose] > │ and closure11 (v0 : Mut0) () : UH0 = │
00:09:15 #14380 [verbose] > │ let v1 : US0 = v0.l0 │
00:09:15 #14381 [verbose] > │ match v1 with │
00:09:15 #14382 [verbose] > │ | US0_1(v2) -> (* Computed *) │
00:09:15 #14383 [verbose] > │ v2 │
00:09:15 #14384 [verbose] > │ | US0_0(v3) -> (* NotComputed *) │
00:09:15 #14385 [verbose] > │ let v4 : UH0 = v3 () │
00:09:15 #14386 [verbose] > │ let v13 : UH0 = │
00:09:15 #14387 [verbose] > │ match v4 with │
00:09:15 #14388 [verbose] > │ | UH0_0(v6, v7) -> (* StreamCons *) │
00:09:15 #14389 [verbose] > │ let v8 : US0 = US0_0(v7) │
00:09:15 #14390 [verbose] > │ let v9 : Mut0 = {l0 = v8} : Mut0 │
00:09:15 #14391 [verbose] > │ let v10 : (unit -> UH0) = closure11(v9) │
00:09:15 #14392 [verbose] > │ UH0_0(v6, v10) │
00:09:15 #14393 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:09:15 #14394 [verbose] > │ UH0_1 │
00:09:15 #14395 [verbose] > │ let v14 : US0 = US0_1(v13) │
00:09:15 #14396 [verbose] > │ v0.l0 <- v14 │
00:09:15 #14397 [verbose] > │ v13 │
00:09:15 #14398 [verbose] > │ and method1 (v0 : int32, v1 : UH0) : US1 = │
00:09:15 #14399 [verbose] > │ match v1 with │
00:09:15 #14400 [verbose] > │ | UH0_0(v2, v3) -> (* StreamCons *) │
00:09:15 #14401 [verbose] > │ let v4 : bool = v0 <= 0 │
00:09:15 #14402 [verbose] > │ if v4 then │
00:09:15 #14403 [verbose] > │ US1_0(v2) │
00:09:15 #14404 [verbose] > │ else │
00:09:15 #14405 [verbose] > │ let v6 : int32 = v0 - 1 │
00:09:15 #14406 [verbose] > │ let v7 : UH0 = v3 () │
00:09:15 #14407 [verbose] > │ method1(v6, v7) │
00:09:15 #14408 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:09:15 #14409 [verbose] > │ US1_1 │
00:09:15 #14410 [verbose] > │ and method2 (v0 : bool) : bool = │
00:09:15 #14411 [verbose] > │ v0 │
00:09:15 #14412 [verbose] > │ and method0 () : unit = │
00:09:15 #14413 [verbose] > │ printfn $"print_and_return / x: {0}" │
00:09:15 #14414 [verbose] > │ let v0 : (unit -> UH0) = closure0() │
00:09:15 #14415 [verbose] > │ let v1 : US0 = US0_0(v0) │
00:09:15 #14416 [verbose] > │ let v2 : Mut0 = {l0 = v1} : Mut0 │
00:09:15 #14417 [verbose] > │ let v3 : US0 = v2.l0 │
00:09:15 #14418 [verbose] > │ let v18 : UH0 = │
00:09:15 #14419 [verbose] > │ match v3 with │
00:09:15 #14420 [verbose] > │ | US0_1(v4) -> (* Computed *) │
00:09:15 #14421 [verbose] > │ v4 │
00:09:15 #14422 [verbose] > │ | US0_0(v5) -> (* NotComputed *) │
00:09:15 #14423 [verbose] > │ let v6 : UH0 = v5 () │
00:09:15 #14424 [verbose] > │ let v15 : UH0 = │
00:09:15 #14425 [verbose] > │ match v6 with │
00:09:15 #14426 [verbose] > │ | UH0_0(v8, v9) -> (* StreamCons *) │
00:09:15 #14427 [verbose] > │ let v10 : US0 = US0_0(v9) │
00:09:15 #14428 [verbose] > │ let v11 : Mut0 = {l0 = v10} : Mut0 │
00:09:15 #14429 [verbose] > │ let v12 : (unit -> UH0) = closure11(v11) │
00:09:15 #14430 [verbose] > │ UH0_0(v8, v12) │
00:09:15 #14431 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:09:15 #14432 [verbose] > │ UH0_1 │
00:09:15 #14433 [verbose] > │ let v16 : US0 = US0_1(v15) │
00:09:15 #14434 [verbose] > │ v2.l0 <- v16 │
00:09:15 #14435 [verbose] > │ v15 │
00:09:15 #14436 [verbose] > │ let v19 : int32 = 3 │
00:09:15 #14437 [verbose] > │ let v20 : US1 = method1(v19, v18) │
00:09:15 #14438 [verbose] > │ let v24 : int32 = │
00:09:15 #14439 [verbose] > │ match v20 with │
00:09:15 #14440 [verbose] > │ | US1_1 -> (* None *) │
00:09:15 #14441 [verbose] > │ failwith<int32> "Option does not have a value." │
00:09:15 #14442 [verbose] > │ | US1_0(v21) -> (* Some *) │
00:09:15 #14443 [verbose] > │ v21 │
00:09:15 #14444 [verbose] > │ let v25 : string = $"%A{v24}" │
00:09:15 #14445 [verbose] > │ System.Console.WriteLine v25 │
00:09:15 #14446 [verbose] > │ let v26 : bool = v24 = 3 │
00:09:15 #14447 [verbose] > │ let v28 : bool = │
00:09:15 #14448 [verbose] > │ if v26 then │
00:09:15 #14449 [verbose] > │ true │
00:09:15 #14450 [verbose] > │ else │
00:09:15 #14451 [verbose] > │ method2(v26) │
00:09:15 #14452 [verbose] > │ let v29 : string = $"__expect / actual: %A{v24} / expected: %A{3}" │
00:09:15 #14453 [verbose] > │ let v30 : bool = v28 = false │
00:09:15 #14454 [verbose] > │ if v30 then │
00:09:15 #14455 [verbose] > │ failwith<unit> v29 │
00:09:15 #14456 [verbose] > │ let v31 : US0 = v2.l0 │
00:09:15 #14457 [verbose] > │ let v46 : UH0 = │
00:09:15 #14458 [verbose] > │ match v31 with │
00:09:15 #14459 [verbose] > │ | US0_1(v32) -> (* Computed *) │
00:09:15 #14460 [verbose] > │ v32 │
00:09:15 #14461 [verbose] > │ | US0_0(v33) -> (* NotComputed *) │
00:09:15 #14462 [verbose] > │ let v34 : UH0 = v33 () │
00:09:15 #14463 [verbose] > │ let v43 : UH0 = │
00:09:15 #14464 [verbose] > │ match v34 with │
00:09:15 #14465 [verbose] > │ | UH0_0(v36, v37) -> (* StreamCons *) │
00:09:15 #14466 [verbose] > │ let v38 : US0 = US0_0(v37) │
00:09:15 #14467 [verbose] > │ let v39 : Mut0 = {l0 = v38} : Mut0 │
00:09:15 #14468 [verbose] > │ let v40 : (unit -> UH0) = closure11(v39) │
00:09:15 #14469 [verbose] > │ UH0_0(v36, v40) │
00:09:15 #14470 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:09:15 #14471 [verbose] > │ UH0_1 │
00:09:15 #14472 [verbose] > │ let v44 : US0 = US0_1(v43) │
00:09:15 #14473 [verbose] > │ v2.l0 <- v44 │
00:09:15 #14474 [verbose] > │ v43 │
00:09:15 #14475 [verbose] > │ let v47 : int32 = 5 │
00:09:15 #14476 [verbose] > │ let v48 : US1 = method1(v47, v46) │
00:09:15 #14477 [verbose] > │ let v52 : int32 = │
00:09:15 #14478 [verbose] > │ match v48 with │
00:09:15 #14479 [verbose] > │ | US1_1 -> (* None *) │
00:09:15 #14480 [verbose] > │ failwith<int32> "Option does not have a value." │
00:09:15 #14481 [verbose] > │ | US1_0(v49) -> (* Some *) │
00:09:15 #14482 [verbose] > │ v49 │
00:09:15 #14483 [verbose] > │ let v53 : string = $"%A{v52}" │
00:09:15 #14484 [verbose] > │ System.Console.WriteLine v53 │
00:09:15 #14485 [verbose] > │ let v54 : bool = v52 = 5 │
00:09:15 #14486 [verbose] > │ let v56 : bool = │
00:09:15 #14487 [verbose] > │ if v54 then │
00:09:15 #14488 [verbose] > │ true │
00:09:15 #14489 [verbose] > │ else │
00:09:15 #14490 [verbose] > │ method2(v54) │
00:09:15 #14491 [verbose] > │ let v57 : string = $"__expect / actual: %A{v52} / expected: %A{5}" │
00:09:15 #14492 [verbose] > │ let v58 : bool = v56 = false │
00:09:15 #14493 [verbose] > │ if v58 then │
00:09:15 #14494 [verbose] > │ failwith<unit> v57 │
00:09:15 #14495 [verbose] > │ method0() │
00:09:15 #14496 [verbose] > │ │
00:09:15 #14497 [verbose] > │ print_and_return / x: 0 │
00:09:15 #14498 [verbose] > │ print_and_return / x: 1 │
00:09:15 #14499 [verbose] > │ print_and_return / x: 2 │
00:09:15 #14500 [verbose] > │ print_and_return / x: 3 │
00:09:15 #14501 [verbose] > │ 3 │
00:09:15 #14502 [verbose] > │ print_and_return / x: 4 │
00:09:15 #14503 [verbose] > │ print_and_return / x: 5 │
00:09:15 #14504 [verbose] > │ 5 │
00:09:15 #14505 [verbose] > │ │
00:09:15 #14506 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:15 #14507 [verbose] >
00:09:15 #14508 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:15 #14509 [verbose] > // // test
00:09:15 #14510 [verbose] >
00:09:15 #14511 [verbose] > inl memo_stream = new_infinite_stream_ print_and_return |> memoize
00:09:15 #14512 [verbose] >
00:09:15 #14513 [verbose] > memo_stream ()
00:09:15 #14514 [verbose] > |> item 3i32
00:09:15 #14515 [verbose] > |> _assert_eq 3i32
00:09:15 #14516 [verbose] >
00:09:15 #14517 [verbose] > memo_stream ()
00:09:15 #14518 [verbose] > |> item 5i32
00:09:15 #14519 [verbose] > |> _assert_eq 5i32
00:09:15 #14520 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0126cb97375c4b8db393cd683add61325ad24a7a7409b24fcca3b862b8267b42\main.spi
00:09:16 #14521 [verbose] >
00:09:16 #14522 [verbose] > ╭─[ 664.02ms - stdout ]────────────────────────────────────────────────────────╮
00:09:16 #14523 [verbose] > │ type UH0 = │
00:09:16 #14524 [verbose] > │ | UH0_0 of int32 * (unit -> UH0) │
00:09:16 #14525 [verbose] > │ | UH0_1 │
00:09:16 #14526 [verbose] > │ and [<Struct>] US0 = │
00:09:16 #14527 [verbose] > │ | US0_0 of f0_0 : (unit -> UH0) │
00:09:16 #14528 [verbose] > │ | US0_1 of f1_0 : UH0 │
00:09:16 #14529 [verbose] > │ and Mut0 = {mutable l0 : US0} │
00:09:16 #14530 [verbose] > │ and [<Struct>] US1 = │
00:09:16 #14531 [verbose] > │ | US1_0 of f0_0 : int32 │
00:09:16 #14532 [verbose] > │ | US1_1 │
00:09:16 #14533 [verbose] > │ let rec closure0 (v0 : int32) () : UH0 = │
00:09:16 #14534 [verbose] > │ let v1 : int32 = v0 + 1 │
00:09:16 #14535 [verbose] > │ method1(v1) │
00:09:16 #14536 [verbose] > │ and method1 (v0 : int32) : UH0 = │
00:09:16 #14537 [verbose] > │ printfn $"print_and_return / x: {v0}" │
00:09:16 #14538 [verbose] > │ let v1 : (unit -> UH0) = closure0(v0) │
00:09:16 #14539 [verbose] > │ UH0_0(v0, v1) │
00:09:16 #14540 [verbose] > │ and closure1 (v0 : UH0) () : UH0 = │
00:09:16 #14541 [verbose] > │ v0 │
00:09:16 #14542 [verbose] > │ and closure2 (v0 : UH0, v1 : Mut0) () : UH0 = │
00:09:16 #14543 [verbose] > │ let v2 : US0 = v1.l0 │
00:09:16 #14544 [verbose] > │ match v2 with │
00:09:16 #14545 [verbose] > │ | US0_1(v3) -> (* Computed *) │
00:09:16 #14546 [verbose] > │ v3 │
00:09:16 #14547 [verbose] > │ | US0_0(v4) -> (* NotComputed *) │
00:09:16 #14548 [verbose] > │ let v5 : UH0 = v4 () │
00:09:16 #14549 [verbose] > │ let v12 : UH0 = │
00:09:16 #14550 [verbose] > │ match v5 with │
00:09:16 #14551 [verbose] > │ | UH0_0(v7, v8) -> (* StreamCons *) │
00:09:16 #14552 [verbose] > │ let v9 : (unit -> UH0) = method2(v0, v8) │
00:09:16 #14553 [verbose] > │ UH0_0(v7, v9) │
00:09:16 #14554 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:09:16 #14555 [verbose] > │ UH0_1 │
00:09:16 #14556 [verbose] > │ let v13 : US0 = US0_1(v12) │
00:09:16 #14557 [verbose] > │ v1.l0 <- v13 │
00:09:16 #14558 [verbose] > │ v12 │
00:09:16 #14559 [verbose] > │ and method2 (v0 : UH0, v1 : (unit -> UH0)) : (unit -> UH0) = │
00:09:16 #14560 [verbose] > │ let v2 : US0 = US0_0(v1) │
00:09:16 #14561 [verbose] > │ let v3 : Mut0 = {l0 = v2} : Mut0 │
00:09:16 #14562 [verbose] > │ closure2(v0, v3) │
00:09:16 #14563 [verbose] > │ and method3 (v0 : int32, v1 : UH0) : US1 = │
00:09:16 #14564 [verbose] > │ match v1 with │
00:09:16 #14565 [verbose] > │ | UH0_0(v2, v3) -> (* StreamCons *) │
00:09:16 #14566 [verbose] > │ let v4 : bool = v0 <= 0 │
00:09:16 #14567 [verbose] > │ if v4 then │
00:09:16 #14568 [verbose] > │ US1_0(v2) │
00:09:16 #14569 [verbose] > │ else │
00:09:16 #14570 [verbose] > │ let v6 : int32 = v0 - 1 │
00:09:16 #14571 [verbose] > │ let v7 : UH0 = v3 () │
00:09:16 #14572 [verbose] > │ method3(v6, v7) │
00:09:16 #14573 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:09:16 #14574 [verbose] > │ US1_1 │
00:09:16 #14575 [verbose] > │ and method4 (v0 : bool) : bool = │
00:09:16 #14576 [verbose] > │ v0 │
00:09:16 #14577 [verbose] > │ and method0 () : unit = │
00:09:16 #14578 [verbose] > │ let v0 : int32 = 0 │
00:09:16 #14579 [verbose] > │ let v1 : UH0 = method1(v0) │
00:09:16 #14580 [verbose] > │ let v2 : (unit -> UH0) = closure1(v1) │
00:09:16 #14581 [verbose] > │ let v3 : (unit -> UH0) = method2(v1, v2) │
00:09:16 #14582 [verbose] > │ let v4 : UH0 = v3 () │
00:09:16 #14583 [verbose] > │ let v5 : int32 = 3 │
00:09:16 #14584 [verbose] > │ let v6 : US1 = method3(v5, v4) │
00:09:16 #14585 [verbose] > │ let v10 : int32 = │
00:09:16 #14586 [verbose] > │ match v6 with │
00:09:16 #14587 [verbose] > │ | US1_1 -> (* None *) │
00:09:16 #14588 [verbose] > │ failwith<int32> "Option does not have a value." │
00:09:16 #14589 [verbose] > │ | US1_0(v7) -> (* Some *) │
00:09:16 #14590 [verbose] > │ v7 │
00:09:16 #14591 [verbose] > │ let v11 : string = $"%A{v10}" │
00:09:16 #14592 [verbose] > │ System.Console.WriteLine v11 │
00:09:16 #14593 [verbose] > │ let v12 : bool = v10 = 3 │
00:09:16 #14594 [verbose] > │ let v14 : bool = │
00:09:16 #14595 [verbose] > │ if v12 then │
00:09:16 #14596 [verbose] > │ true │
00:09:16 #14597 [verbose] > │ else │
00:09:16 #14598 [verbose] > │ method4(v12) │
00:09:16 #14599 [verbose] > │ let v15 : string = $"__expect / actual: %A{v10} / expected: %A{3}" │
00:09:16 #14600 [verbose] > │ let v16 : bool = v14 = false │
00:09:16 #14601 [verbose] > │ if v16 then │
00:09:16 #14602 [verbose] > │ failwith<unit> v15 │
00:09:16 #14603 [verbose] > │ let v17 : UH0 = v3 () │
00:09:16 #14604 [verbose] > │ let v18 : int32 = 5 │
00:09:16 #14605 [verbose] > │ let v19 : US1 = method3(v18, v17) │
00:09:16 #14606 [verbose] > │ let v23 : int32 = │
00:09:16 #14607 [verbose] > │ match v19 with │
00:09:16 #14608 [verbose] > │ | US1_1 -> (* None *) │
00:09:16 #14609 [verbose] > │ failwith<int32> "Option does not have a value." │
00:09:16 #14610 [verbose] > │ | US1_0(v20) -> (* Some *) │
00:09:16 #14611 [verbose] > │ v20 │
00:09:16 #14612 [verbose] > │ let v24 : string = $"%A{v23}" │
00:09:16 #14613 [verbose] > │ System.Console.WriteLine v24 │
00:09:16 #14614 [verbose] > │ let v25 : bool = v23 = 5 │
00:09:16 #14615 [verbose] > │ let v27 : bool = │
00:09:16 #14616 [verbose] > │ if v25 then │
00:09:16 #14617 [verbose] > │ true │
00:09:16 #14618 [verbose] > │ else │
00:09:16 #14619 [verbose] > │ method4(v25) │
00:09:16 #14620 [verbose] > │ let v28 : string = $"__expect / actual: %A{v23} / expected: %A{5}" │
00:09:16 #14621 [verbose] > │ let v29 : bool = v27 = false │
00:09:16 #14622 [verbose] > │ if v29 then │
00:09:16 #14623 [verbose] > │ failwith<unit> v28 │
00:09:16 #14624 [verbose] > │ method0() │
00:09:16 #14625 [verbose] > │ │
00:09:16 #14626 [verbose] > │ print_and_return / x: 0 │
00:09:16 #14627 [verbose] > │ print_and_return / x: 1 │
00:09:16 #14628 [verbose] > │ print_and_return / x: 2 │
00:09:16 #14629 [verbose] > │ print_and_return / x: 3 │
00:09:16 #14630 [verbose] > │ 3 │
00:09:16 #14631 [verbose] > │ print_and_return / x: 4 │
00:09:16 #14632 [verbose] > │ print_and_return / x: 5 │
00:09:16 #14633 [verbose] > │ 5 │
00:09:16 #14634 [verbose] > │ │
00:09:16 #14635 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:16 #14636 [verbose] >
00:09:16 #14637 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:16 #14638 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:16 #14639 [verbose] > │ ## unfold │
00:09:16 #14640 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:16 #14641 [verbose] >
00:09:16 #14642 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:16 #14643 [verbose] > inl unfold f x0 =
00:09:16 #14644 [verbose] > inl rec body x =
00:09:16 #14645 [verbose] > match f x with
00:09:16 #14646 [verbose] > | Some (x', y) => StreamCons (x', fun () => loop y)
00:09:16 #14647 [verbose] > | None => StreamNil
00:09:16 #14648 [verbose] > and inl loop x = join_body_unit body x0 x
00:09:16 #14649 [verbose] > loop x0
00:09:16 #14650 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a718839f7e25674ae9006d1adf73ab7e38370db6ec655d3044b8a8d9a909d62f\main.spi
00:09:16 #14651 [verbose] >
00:09:16 #14652 [verbose] > ╭─[ 379.71ms - stdout ]────────────────────────────────────────────────────────╮
00:09:16 #14653 [verbose] > │ () │
00:09:16 #14654 [verbose] > │ │
00:09:16 #14655 [verbose] > │ │
00:09:16 #14656 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:16 #14657 [verbose] >
00:09:16 #14658 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:16 #14659 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:16 #14660 [verbose] > │ ## iterate │
00:09:16 #14661 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:16 #14662 [verbose] >
00:09:16 #14663 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:16 #14664 [verbose] > inl iterate f =
00:09:16 #14665 [verbose] > unfold (fun x => Some (x, f x))
00:09:16 #14666 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\05612d30f66338f5fc973470abb32611fad46a6306f252ee064ae815df3fccf4\main.spi
00:09:17 #14667 [verbose] >
00:09:17 #14668 [verbose] > ╭─[ 431.52ms - stdout ]────────────────────────────────────────────────────────╮
00:09:17 #14669 [verbose] > │ () │
00:09:17 #14670 [verbose] > │ │
00:09:17 #14671 [verbose] > │ │
00:09:17 #14672 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:17 #14673 [verbose] >
00:09:17 #14674 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:17 #14675 [verbose] > // // test
00:09:17 #14676 [verbose] >
00:09:17 #14677 [verbose] > iterate ((*) 2) 1i32
00:09:17 #14678 [verbose] > |> item 10i32
00:09:17 #14679 [verbose] > |> _assert_eq 1024
00:09:17 #14680 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9ecedaa8f53b2b35210e0cdb261560c5ecb3fb87d3ddf7174c76fc208c5c1dd9\main.spi
00:09:17 #14681 [verbose] >
00:09:17 #14682 [verbose] > ╭─[ 596.07ms - stdout ]────────────────────────────────────────────────────────╮
00:09:17 #14683 [verbose] > │ let rec method0 () : unit = │
00:09:17 #14684 [verbose] > │ let v0 : string = $"%A{1024}" │
00:09:17 #14685 [verbose] > │ System.Console.WriteLine v0 │
00:09:17 #14686 [verbose] > │ let v1 : string = $"__expect / actual: %A{1024} / expected: %A{1024}" │
00:09:17 #14687 [verbose] > │ () │
00:09:17 #14688 [verbose] > │ method0() │
00:09:17 #14689 [verbose] > │ │
00:09:17 #14690 [verbose] > │ 1024 │
00:09:17 #14691 [verbose] > │ │
00:09:17 #14692 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:17 #14693 [verbose] >
00:09:17 #14694 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:17 #14695 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:17 #14696 [verbose] > │ ## take_while │
00:09:17 #14697 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:17 #14698 [verbose] >
00:09:17 #14699 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:17 #14700 [verbose] > inl take_while cond s =
00:09:17 #14701 [verbose] > inl rec body i = function
00:09:17 #14702 [verbose] > | StreamCons (st, fn) when cond st i => StreamCons (st, fun () => loop
00:09:17 #14703 [verbose] > (i + 1) (fn ()))
00:09:17 #14704 [verbose] > | _ => StreamNil
00:09:17 #14705 [verbose] > and inl loop i = join_body body i
00:09:17 #14706 [verbose] > loop 0 s
00:09:17 #14707 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ffc67de91c64b757adfaecbe5a45c04b151bd865410c71d928529bdf9b2881e5\main.spi
00:09:18 #14708 [verbose] >
00:09:18 #14709 [verbose] > ╭─[ 518.93ms - stdout ]────────────────────────────────────────────────────────╮
00:09:18 #14710 [verbose] > │ () │
00:09:18 #14711 [verbose] > │ │
00:09:18 #14712 [verbose] > │ │
00:09:18 #14713 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:18 #14714 [verbose] >
00:09:18 #14715 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:18 #14716 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:18 #14717 [verbose] > │ ## sum │
00:09:18 #14718 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:18 #14719 [verbose] >
00:09:18 #14720 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:18 #14721 [verbose] > inl sum seq =
00:09:18 #14722 [verbose] > seq |> fold (+) 0
00:09:18 #14723 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\31b197d1538966e0e95d8e2273019ff9404eec16acfd8b1a283154828e1a22d3\main.spi
00:09:18 #14724 [verbose] >
00:09:18 #14725 [verbose] > ╭─[ 793.34ms - stdout ]────────────────────────────────────────────────────────╮
00:09:18 #14726 [verbose] > │ () │
00:09:18 #14727 [verbose] > │ │
00:09:18 #14728 [verbose] > │ │
00:09:18 #14729 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:18 #14730 [verbose] >
00:09:18 #14731 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:18 #14732 [verbose] > // // test
00:09:18 #14733 [verbose] >
00:09:18 #14734 [verbose] > listm.init 10i32 id
00:09:18 #14735 [verbose] > |> from_list
00:09:18 #14736 [verbose] > |> sum
00:09:18 #14737 [verbose] > |> _assert_eq 45
00:09:19 #14738 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a1059cdd2883e583c2c7efe84ffd1ee558e4999f7ee54795b75e5b46253cf359\main.spi
00:09:19 #14739 [verbose] >
00:09:19 #14740 [verbose] > ╭─[ 553.24ms - stdout ]────────────────────────────────────────────────────────╮
00:09:19 #14741 [verbose] > │ let rec method0 () : unit = │
00:09:19 #14742 [verbose] > │ let v0 : string = $"%A{45}" │
00:09:19 #14743 [verbose] > │ System.Console.WriteLine v0 │
00:09:19 #14744 [verbose] > │ let v1 : string = $"__expect / actual: %A{45} / expected: %A{45}" │
00:09:19 #14745 [verbose] > │ () │
00:09:19 #14746 [verbose] > │ method0() │
00:09:19 #14747 [verbose] > │ │
00:09:19 #14748 [verbose] > │ 45 │
00:09:19 #14749 [verbose] > │ │
00:09:19 #14750 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:19 #14751 [verbose] >
00:09:19 #14752 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:19 #14753 [verbose] > // // test
00:09:19 #14754 [verbose] >
00:09:19 #14755 [verbose] > new_finite_stream print_and_return 10i32
00:09:19 #14756 [verbose] > |> take_while (fun n (_ : i32) => n < 5)
00:09:19 #14757 [verbose] > |> sum
00:09:19 #14758 [verbose] > |> _assert_eq 10
00:09:19 #14759 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f2a097ca7b8159171c62f1422577672fa7296e30b8c27eec1f2edc788fb08974\main.spi
00:09:20 #14760 [verbose] >
00:09:20 #14761 [verbose] > ╭─[ 1.03s - stdout ]───────────────────────────────────────────────────────────╮
00:09:20 #14762 [verbose] > │ let rec method0 () : unit = │
00:09:20 #14763 [verbose] > │ printfn $"print_and_return / x: {0}" │
00:09:20 #14764 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:20 #14765 [verbose] > │ printfn $"print_and_return / x: {2}" │
00:09:20 #14766 [verbose] > │ printfn $"print_and_return / x: {3}" │
00:09:20 #14767 [verbose] > │ printfn $"print_and_return / x: {4}" │
00:09:20 #14768 [verbose] > │ printfn $"print_and_return / x: {5}" │
00:09:20 #14769 [verbose] > │ let v0 : string = $"%A{10}" │
00:09:20 #14770 [verbose] > │ System.Console.WriteLine v0 │
00:09:20 #14771 [verbose] > │ let v1 : string = $"__expect / actual: %A{10} / expected: %A{10}" │
00:09:20 #14772 [verbose] > │ () │
00:09:20 #14773 [verbose] > │ method0() │
00:09:20 #14774 [verbose] > │ │
00:09:20 #14775 [verbose] > │ print_and_return / x: 0 │
00:09:20 #14776 [verbose] > │ print_and_return / x: 1 │
00:09:20 #14777 [verbose] > │ print_and_return / x: 2 │
00:09:20 #14778 [verbose] > │ print_and_return / x: 3 │
00:09:20 #14779 [verbose] > │ print_and_return / x: 4 │
00:09:20 #14780 [verbose] > │ print_and_return / x: 5 │
00:09:20 #14781 [verbose] > │ 10 │
00:09:20 #14782 [verbose] > │ │
00:09:20 #14783 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:20 #14784 [verbose] >
00:09:20 #14785 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:20 #14786 [verbose] > // // test
00:09:20 #14787 [verbose] >
00:09:20 #14788 [verbose] > new_infinite_stream print_and_return
00:09:20 #14789 [verbose] > |> take_while (fun n (_ : i32) => n < 5i32)
00:09:20 #14790 [verbose] > |> sum
00:09:20 #14791 [verbose] > |> _assert_eq 10
00:09:20 #14792 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\96447ddb722e12274cb1b24533ded3eb83fbcfb617e8b53c41211ccba18ab14a\main.spi
00:09:21 #14793 [verbose] >
00:09:21 #14794 [verbose] > ╭─[ 445.68ms - stdout ]────────────────────────────────────────────────────────╮
00:09:21 #14795 [verbose] > │ let rec method0 () : unit = │
00:09:21 #14796 [verbose] > │ printfn $"print_and_return / x: {0}" │
00:09:21 #14797 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:21 #14798 [verbose] > │ printfn $"print_and_return / x: {2}" │
00:09:21 #14799 [verbose] > │ printfn $"print_and_return / x: {3}" │
00:09:21 #14800 [verbose] > │ printfn $"print_and_return / x: {4}" │
00:09:21 #14801 [verbose] > │ printfn $"print_and_return / x: {5}" │
00:09:21 #14802 [verbose] > │ let v0 : string = $"%A{10}" │
00:09:21 #14803 [verbose] > │ System.Console.WriteLine v0 │
00:09:21 #14804 [verbose] > │ let v1 : string = $"__expect / actual: %A{10} / expected: %A{10}" │
00:09:21 #14805 [verbose] > │ () │
00:09:21 #14806 [verbose] > │ method0() │
00:09:21 #14807 [verbose] > │ │
00:09:21 #14808 [verbose] > │ print_and_return / x: 0 │
00:09:21 #14809 [verbose] > │ print_and_return / x: 1 │
00:09:21 #14810 [verbose] > │ print_and_return / x: 2 │
00:09:21 #14811 [verbose] > │ print_and_return / x: 3 │
00:09:21 #14812 [verbose] > │ print_and_return / x: 4 │
00:09:21 #14813 [verbose] > │ print_and_return / x: 5 │
00:09:21 #14814 [verbose] > │ 10 │
00:09:21 #14815 [verbose] > │ │
00:09:21 #14816 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:21 #14817 [verbose] >
00:09:21 #14818 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:21 #14819 [verbose] > // // test
00:09:21 #14820 [verbose] >
00:09:21 #14821 [verbose] > iterate ((*) 6) 1i32
00:09:21 #14822 [verbose] > |> take_while (fun _ i => i <= 7i32)
00:09:21 #14823 [verbose] > |> to_list
00:09:21 #14824 [verbose] > |> _assert_eq [[ 1i32; 6; 36; 216; 1296; 7776; 46656; 279936 ]]
00:09:21 #14825 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\73e7f8bbfbc626bb832a8d31282285ea7438ec3797ba8dae543ab95f4707af92\main.spi
00:09:21 #14826 [verbose] >
00:09:21 #14827 [verbose] > ╭─[ 658.22ms - stdout ]────────────────────────────────────────────────────────╮
00:09:21 #14828 [verbose] > │ type UH0 = │
00:09:21 #14829 [verbose] > │ | UH0_0 │
00:09:21 #14830 [verbose] > │ | UH0_1 of int32 * UH0 │
00:09:21 #14831 [verbose] > │ let rec method0 () : unit = │
00:09:21 #14832 [verbose] > │ let v0 : UH0 = UH0_0 │
00:09:21 #14833 [verbose] > │ let v1 : UH0 = UH0_1(279936, v0) │
00:09:21 #14834 [verbose] > │ let v2 : UH0 = UH0_1(46656, v1) │
00:09:21 #14835 [verbose] > │ let v3 : UH0 = UH0_1(7776, v2) │
00:09:21 #14836 [verbose] > │ let v4 : UH0 = UH0_1(1296, v3) │
00:09:21 #14837 [verbose] > │ let v5 : UH0 = UH0_1(216, v4) │
00:09:21 #14838 [verbose] > │ let v6 : UH0 = UH0_1(36, v5) │
00:09:21 #14839 [verbose] > │ let v7 : UH0 = UH0_1(6, v6) │
00:09:21 #14840 [verbose] > │ let v8 : UH0 = UH0_1(1, v7) │
00:09:21 #14841 [verbose] > │ let v9 : string = $"%A{v8}" │
00:09:21 #14842 [verbose] > │ System.Console.WriteLine v9 │
00:09:21 #14843 [verbose] > │ let v73 : UH0 = UH0_0 │
00:09:21 #14844 [verbose] > │ let v74 : UH0 = UH0_1(279936, v73) │
00:09:21 #14845 [verbose] > │ let v75 : UH0 = UH0_1(46656, v74) │
00:09:21 #14846 [verbose] > │ let v76 : UH0 = UH0_1(7776, v75) │
00:09:21 #14847 [verbose] > │ let v77 : UH0 = UH0_1(1296, v76) │
00:09:21 #14848 [verbose] > │ let v78 : UH0 = UH0_1(216, v77) │
00:09:21 #14849 [verbose] > │ let v79 : UH0 = UH0_1(36, v78) │
00:09:21 #14850 [verbose] > │ let v80 : UH0 = UH0_1(6, v79) │
00:09:21 #14851 [verbose] > │ let v81 : UH0 = UH0_1(1, v80) │
00:09:21 #14852 [verbose] > │ let v82 : UH0 = UH0_0 │
00:09:21 #14853 [verbose] > │ let v83 : UH0 = UH0_1(279936, v82) │
00:09:21 #14854 [verbose] > │ let v84 : UH0 = UH0_1(46656, v83) │
00:09:21 #14855 [verbose] > │ let v85 : UH0 = UH0_1(7776, v84) │
00:09:21 #14856 [verbose] > │ let v86 : UH0 = UH0_1(1296, v85) │
00:09:21 #14857 [verbose] > │ let v87 : UH0 = UH0_1(216, v86) │
00:09:21 #14858 [verbose] > │ let v88 : UH0 = UH0_1(36, v87) │
00:09:21 #14859 [verbose] > │ let v89 : UH0 = UH0_1(6, v88) │
00:09:21 #14860 [verbose] > │ let v90 : UH0 = UH0_1(1, v89) │
00:09:21 #14861 [verbose] > │ let v91 : string = $"__expect / actual: %A{v81} / expected: %A{v90}" │
00:09:21 #14862 [verbose] > │ () │
00:09:21 #14863 [verbose] > │ method0() │
00:09:21 #14864 [verbose] > │ │
00:09:21 #14865 [verbose] > │ UH0_1 │
00:09:21 #14866 [verbose] > │ (1, │
00:09:21 #14867 [verbose] > │ UH0_1 │
00:09:21 #14868 [verbose] > │ (6, │
00:09:22 #14869 [verbose] > │ UH0_1 │
00:09:22 #14870 [verbose] > │ (36, │
00:09:22 #14871 [verbose] > │ UH0_1 │
00:09:22 #14872 [verbose] > │ (216, │
00:09:22 #14873 [verbose] > │ UH0_1 (1296, UH0_1 (7776, UH0_1 (46656, UH0_1 (279936, │
00:09:22 #14874 [verbose] > │ UH0_0)))))))) │
00:09:22 #14875 [verbose] > │ │
00:09:22 #14876 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:22 #14877 [verbose] >
00:09:22 #14878 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:22 #14879 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:22 #14880 [verbose] > │ ## indexed │
00:09:22 #14881 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:22 #14882 [verbose] >
00:09:22 #14883 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:22 #14884 [verbose] > inl indexed s =
00:09:22 #14885 [verbose] > ((StreamNil, 0), s)
00:09:22 #14886 [verbose] > ||> fold fun (acc, i) x =>
00:09:22 #14887 [verbose] > StreamCons ((i, x), fun () => acc), i + 1
00:09:22 #14888 [verbose] > |> fst
00:09:22 #14889 [verbose] > |> rev
00:09:22 #14890 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d01f46a1d9abcd27a5717c0a7c3039938a80c74cdb4be49f5ed8457c09c8ec61\main.spi
00:09:22 #14891 [verbose] >
00:09:22 #14892 [verbose] > ╭─[ 468.47ms - stdout ]────────────────────────────────────────────────────────╮
00:09:22 #14893 [verbose] > │ () │
00:09:22 #14894 [verbose] > │ │
00:09:22 #14895 [verbose] > │ │
00:09:22 #14896 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:22 #14897 [verbose] >
00:09:22 #14898 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:22 #14899 [verbose] > // // test
00:09:22 #14900 [verbose] >
00:09:22 #14901 [verbose] > listm.init 10i32 ((*) 2)
00:09:22 #14902 [verbose] > |> from_list
00:09:22 #14903 [verbose] > |> indexed
00:09:22 #14904 [verbose] > |> item 5i32
00:09:22 #14905 [verbose] > |> _assert_eq (5i32, 10i32)
00:09:22 #14906 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0cb9bb9f048d08b327a70e9dc3dfe56138aecd98255398d1f2d583749ba66f05\main.spi
00:09:23 #14907 [verbose] >
00:09:23 #14908 [verbose] > ╭─[ 583.18ms - stdout ]────────────────────────────────────────────────────────╮
00:09:23 #14909 [verbose] > │ let rec method0 () : unit = │
00:09:23 #14910 [verbose] > │ let v0 : string = $"%A{struct (5, 10)}" │
00:09:23 #14911 [verbose] > │ System.Console.WriteLine v0 │
00:09:23 #14912 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (5, 10)} / expected: │
00:09:23 #14913 [verbose] > │ %A{struct (5, 10)}" │
00:09:23 #14914 [verbose] > │ () │
00:09:23 #14915 [verbose] > │ method0() │
00:09:23 #14916 [verbose] > │ │
00:09:23 #14917 [verbose] > │ struct (5, 10) │
00:09:23 #14918 [verbose] > │ │
00:09:23 #14919 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:23 #14920 [verbose] >
00:09:23 #14921 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:23 #14922 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:23 #14923 [verbose] > │ ## map │
00:09:23 #14924 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:23 #14925 [verbose] >
00:09:23 #14926 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:23 #14927 [verbose] > inl map fn s =
00:09:23 #14928 [verbose] > (s, StreamNil)
00:09:23 #14929 [verbose] > ||> fold_back fun x acc =>
00:09:23 #14930 [verbose] > StreamCons (fn x, fun () => acc)
00:09:23 #14931 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2ebc890e941a6bdf3ae3771aa98e6781f27596877ca74fae54d05fb28ac78d3e\main.spi
00:09:23 #14932 [verbose] >
00:09:23 #14933 [verbose] > ╭─[ 387.56ms - stdout ]────────────────────────────────────────────────────────╮
00:09:23 #14934 [verbose] > │ () │
00:09:23 #14935 [verbose] > │ │
00:09:23 #14936 [verbose] > │ │
00:09:23 #14937 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:23 #14938 [verbose] >
00:09:23 #14939 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:23 #14940 [verbose] > // // test
00:09:23 #14941 [verbose] >
00:09:23 #14942 [verbose] > listm.init 10i32 id
00:09:23 #14943 [verbose] > |> from_list
00:09:23 #14944 [verbose] > |> map ((*) 2)
00:09:23 #14945 [verbose] > |> item 5i32
00:09:23 #14946 [verbose] > |> _assert_eq 10i32
00:09:23 #14947 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\6215b42265ea20612a82cd302ef00b8c19d0f659b0ce4910956e50dd9aee3f5d\main.spi
00:09:23 #14948 [verbose] >
00:09:23 #14949 [verbose] > ╭─[ 335.31ms - stdout ]────────────────────────────────────────────────────────╮
00:09:23 #14950 [verbose] > │ let rec method0 () : unit = │
00:09:23 #14951 [verbose] > │ let v0 : string = $"%A{10}" │
00:09:23 #14952 [verbose] > │ System.Console.WriteLine v0 │
00:09:23 #14953 [verbose] > │ let v1 : string = $"__expect / actual: %A{10} / expected: %A{10}" │
00:09:23 #14954 [verbose] > │ () │
00:09:23 #14955 [verbose] > │ method0() │
00:09:23 #14956 [verbose] > │ │
00:09:23 #14957 [verbose] > │ 10 │
00:09:23 #14958 [verbose] > │ │
00:09:23 #14959 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:23 #14960 [verbose] >
00:09:23 #14961 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:23 #14962 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:23 #14963 [verbose] > │ ## zip_with │
00:09:23 #14964 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:23 #14965 [verbose] >
00:09:23 #14966 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:23 #14967 [verbose] > inl zip_with fn s1 s2 =
00:09:23 #14968 [verbose] > inl rec loop s1 s2 =
00:09:23 #14969 [verbose] > match s1, s2 with
00:09:23 #14970 [verbose] > | StreamCons (st1, fn1), StreamCons (st2, fn2) =>
00:09:23 #14971 [verbose] > StreamCons (fn st1 st2, fun () => loop (fn1 ()) (fn2 ()))
00:09:23 #14972 [verbose] > | StreamNil, _ | _, StreamNil => StreamNil
00:09:23 #14973 [verbose] > loop s1 s2
00:09:23 #14974 [verbose] >
00:09:23 #14975 [verbose] > inl zip_with_ fn s1 s2 =
00:09:23 #14976 [verbose] > let rec loop s1 s2 =
00:09:23 #14977 [verbose] > match s1, s2 with
00:09:23 #14978 [verbose] > | StreamCons (st1, fn1), StreamCons (st2, fn2) =>
00:09:23 #14979 [verbose] > StreamCons (fn st1 st2, fun () => loop (fn1 ()) (fn2 ()))
00:09:23 #14980 [verbose] > | StreamNil, _ | _, StreamNil => StreamNil
00:09:23 #14981 [verbose] > loop s1 s2
00:09:24 #14982 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\30e35ffcaf96268d61fb7cc4639dd93937c234cd381253b442977083e8b19694\main.spi
00:09:24 #14983 [verbose] >
00:09:24 #14984 [verbose] > ╭─[ 417.17ms - stdout ]────────────────────────────────────────────────────────╮
00:09:24 #14985 [verbose] > │ () │
00:09:24 #14986 [verbose] > │ │
00:09:24 #14987 [verbose] > │ │
00:09:24 #14988 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:24 #14989 [verbose] >
00:09:24 #14990 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:24 #14991 [verbose] > // // test
00:09:24 #14992 [verbose] >
00:09:24 #14993 [verbose] > ((listm.init 10i32 id |> from_list), (listm.init 10i32 ((*) 2) |> from_list))
00:09:24 #14994 [verbose] > ||> zip_with (+)
00:09:24 #14995 [verbose] > |> item 2i32
00:09:24 #14996 [verbose] > |> _assert_eq 6
00:09:24 #14997 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d31bce54a07bdd17b7b532e94718c36f0d8932378fefdf9a143dc083e6615b4e\main.spi
00:09:24 #14998 [verbose] >
00:09:24 #14999 [verbose] > ╭─[ 479.75ms - stdout ]────────────────────────────────────────────────────────╮
00:09:24 #15000 [verbose] > │ let rec method0 () : unit = │
00:09:24 #15001 [verbose] > │ let v0 : string = $"%A{6}" │
00:09:24 #15002 [verbose] > │ System.Console.WriteLine v0 │
00:09:24 #15003 [verbose] > │ let v1 : string = $"__expect / actual: %A{6} / expected: %A{6}" │
00:09:24 #15004 [verbose] > │ () │
00:09:24 #15005 [verbose] > │ method0() │
00:09:24 #15006 [verbose] > │ │
00:09:24 #15007 [verbose] > │ 6 │
00:09:24 #15008 [verbose] > │ │
00:09:24 #15009 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:24 #15010 [verbose] >
00:09:24 #15011 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:24 #15012 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:24 #15013 [verbose] > │ ## zip │
00:09:24 #15014 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:24 #15015 [verbose] >
00:09:24 #15016 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:24 #15017 [verbose] > inl zip s1 s2 =
00:09:24 #15018 [verbose] > zip_with pair s1 s2
00:09:24 #15019 [verbose] >
00:09:24 #15020 [verbose] > inl zip_ s1 s2 =
00:09:24 #15021 [verbose] > zip_with_ pair s1 s2
00:09:25 #15022 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\930462e229d4272c50aa477634abd3f7396c9d5b1bf5df59b4b965b88686b22d\main.spi
00:09:25 #15023 [verbose] >
00:09:25 #15024 [verbose] > ╭─[ 425.32ms - stdout ]────────────────────────────────────────────────────────╮
00:09:25 #15025 [verbose] > │ () │
00:09:25 #15026 [verbose] > │ │
00:09:25 #15027 [verbose] > │ │
00:09:25 #15028 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:25 #15029 [verbose] >
00:09:25 #15030 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:25 #15031 [verbose] > // // test
00:09:25 #15032 [verbose] >
00:09:25 #15033 [verbose] > ((listm.init 10i32 id |> from_list), (listm.init 10i32 ((*) 2) |> from_list))
00:09:25 #15034 [verbose] > ||> zip
00:09:25 #15035 [verbose] > |> item 5i32
00:09:25 #15036 [verbose] > |> _assert_eq (5, 10)
00:09:25 #15037 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e6be40564a7d4466a77f4c9ac2f483af1345472c347035db71e4cf01e1c76468\main.spi
00:09:26 #15038 [verbose] >
00:09:26 #15039 [verbose] > ╭─[ 828.71ms - stdout ]────────────────────────────────────────────────────────╮
00:09:26 #15040 [verbose] > │ let rec method0 () : unit = │
00:09:26 #15041 [verbose] > │ let v0 : string = $"%A{struct (5, 10)}" │
00:09:26 #15042 [verbose] > │ System.Console.WriteLine v0 │
00:09:26 #15043 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (5, 10)} / expected: │
00:09:26 #15044 [verbose] > │ %A{struct (5, 10)}" │
00:09:26 #15045 [verbose] > │ () │
00:09:26 #15046 [verbose] > │ method0() │
00:09:26 #15047 [verbose] > │ │
00:09:26 #15048 [verbose] > │ struct (5, 10) │
00:09:26 #15049 [verbose] > │ │
00:09:26 #15050 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:26 #15051 [verbose] >
00:09:26 #15052 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:26 #15053 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:26 #15054 [verbose] > │ ## unzip │
00:09:26 #15055 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:26 #15056 [verbose] >
00:09:26 #15057 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:26 #15058 [verbose] > inl unzip s =
00:09:26 #15059 [verbose] > inl rec body s =
00:09:26 #15060 [verbose] > match s with
00:09:26 #15061 [verbose] > | StreamCons ((x, y), fn) =>
00:09:26 #15062 [verbose] > inl xs, ys = loop (fn ())
00:09:26 #15063 [verbose] > StreamCons (x, fun () => xs), StreamCons (y, fun () => ys)
00:09:26 #15064 [verbose] > | StreamNil => pair StreamNil StreamNil
00:09:26 #15065 [verbose] > and inl loop x =
00:09:26 #15066 [verbose] > if var_is x |> not
00:09:26 #15067 [verbose] > then body x
00:09:26 #15068 [verbose] > else
00:09:26 #15069 [verbose] > inl x = dyn x
00:09:26 #15070 [verbose] > join body x
00:09:26 #15071 [verbose] > loop s
00:09:26 #15072 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\886600499881ee6985109e44f7d7ad5445d39668c382dd86a5f7ab39e6bb9d3d\main.spi
00:09:26 #15073 [verbose] >
00:09:26 #15074 [verbose] > ╭─[ 578.19ms - stdout ]────────────────────────────────────────────────────────╮
00:09:26 #15075 [verbose] > │ () │
00:09:26 #15076 [verbose] > │ │
00:09:26 #15077 [verbose] > │ │
00:09:26 #15078 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:26 #15079 [verbose] >
00:09:26 #15080 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:26 #15081 [verbose] > // // test
00:09:26 #15082 [verbose] >
00:09:26 #15083 [verbose] > listm.init 10i32 id
00:09:26 #15084 [verbose] > |> listm.map (fun x => x, x)
00:09:26 #15085 [verbose] > |> from_list
00:09:26 #15086 [verbose] > |> unzip
00:09:26 #15087 [verbose] > |> fun x, y =>
00:09:26 #15088 [verbose] > x |> sum
00:09:26 #15089 [verbose] > |> _assert_eq 45
00:09:26 #15090 [verbose] >
00:09:26 #15091 [verbose] > y |> sum
00:09:26 #15092 [verbose] > |> _assert_eq 45
00:09:27 #15093 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\276177dc1fb468ae47f51052b5efea3531e7e7076306fd11812b07cd39315430\main.spi
00:09:27 #15094 [verbose] >
00:09:27 #15095 [verbose] > ╭─[ 991.67ms - stdout ]────────────────────────────────────────────────────────╮
00:09:27 #15096 [verbose] > │ let rec method0 () : unit = │
00:09:27 #15097 [verbose] > │ let v0 : string = $"%A{45}" │
00:09:27 #15098 [verbose] > │ System.Console.WriteLine v0 │
00:09:28 #15099 [verbose] > │ let v1 : string = $"__expect / actual: %A{45} / expected: %A{45}" │
00:09:28 #15100 [verbose] > │ let v2 : string = $"%A{45}" │
00:09:28 #15101 [verbose] > │ System.Console.WriteLine v2 │
00:09:28 #15102 [verbose] > │ let v3 : string = $"__expect / actual: %A{45} / expected: %A{45}" │
00:09:28 #15103 [verbose] > │ () │
00:09:28 #15104 [verbose] > │ method0() │
00:09:28 #15105 [verbose] > │ │
00:09:28 #15106 [verbose] > │ 45 │
00:09:28 #15107 [verbose] > │ 45 │
00:09:28 #15108 [verbose] > │ │
00:09:28 #15109 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:28 #15110 [verbose] >
00:09:28 #15111 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:28 #15112 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:28 #15113 [verbose] > │ ## enumerate │
00:09:28 #15114 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:28 #15115 [verbose] >
00:09:28 #15116 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:28 #15117 [verbose] > inl enumerate forall dim {int; number} t. (ar : a dim t) : a dim (unativeint *
00:09:28 #15118 [verbose] > t) =
00:09:28 #15119 [verbose] > open rust_operators
00:09:28 #15120 [verbose] > inl (a ar) = ar
00:09:28 #15121 [verbose] > inl ar = ar |> am'.to_vec
00:09:28 #15122 [verbose] > !\($'"!ar.into_iter().enumerate().map(std::rc::Rc::new).collect()"')
00:09:28 #15123 [verbose] > |> am'.vec_map from_pair
00:09:28 #15124 [verbose] > |> am'.from_vec
00:09:28 #15125 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\23aecec0f91d981613244110ab8329c369016bfb20a7ff5aff693884df6de7c8\main.spi
00:09:29 #15126 [verbose] >
00:09:29 #15127 [verbose] > ╭─[ 953.06ms - stdout ]────────────────────────────────────────────────────────╮
00:09:29 #15128 [verbose] > │ () │
00:09:29 #15129 [verbose] > │ │
00:09:29 #15130 [verbose] > │ │
00:09:29 #15131 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:33 #15132 [verbose] > [NbConvertApp] Converting notebook stream.dib.ipynb to html
00:09:33 #15133 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:09:33 #15134 [verbose] > validate(nb)
00:09:34 #15135 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:09:34 #15136 [verbose] > return _pygments_highlight(
00:09:34 #15137 [verbose] > [NbConvertApp] Writing 363552 bytes to stream.dib.html
00:09:35 #15138 [debug] executeAsync / exitCode: 0 / output.Length: 67771
00:09:35 #15139 [debug] main / executeCommand / exitCode: 0
00:09:35 #15140 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 seq.dib" -Retries 3"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:09:37 #15141 [verbose] >
00:09:37 #15142 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:37 #15143 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:37 #15144 [verbose] > │ # seq │
00:09:37 #15145 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:38 #15146 [verbose] >
00:09:38 #15147 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:38 #15148 [verbose] > // // test
00:09:38 #15149 [verbose] >
00:09:38 #15150 [verbose] > open testing
00:09:41 #15151 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:09:42 #15152 [verbose] >
00:09:42 #15153 [verbose] > ╭─[ 4.18s - stdout ]───────────────────────────────────────────────────────────╮
00:09:42 #15154 [verbose] > │ () │
00:09:42 #15155 [verbose] > │ │
00:09:42 #15156 [verbose] > │ │
00:09:42 #15157 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:42 #15158 [verbose] >
00:09:42 #15159 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:42 #15160 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:42 #15161 [verbose] > │ ## seq' │
00:09:42 #15162 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:42 #15163 [verbose] >
00:09:42 #15164 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:42 #15165 [verbose] > type seq' t = $"`t seq"
00:09:42 #15166 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1af6ced68b6f0766d1515360e8f161aa00debd4b482634fa60ef485c9be1634d\main.spi
00:09:42 #15167 [verbose] >
00:09:42 #15168 [verbose] > ╭─[ 318.08ms - stdout ]────────────────────────────────────────────────────────╮
00:09:42 #15169 [verbose] > │ () │
00:09:42 #15170 [verbose] > │ │
00:09:42 #15171 [verbose] > │ │
00:09:42 #15172 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:42 #15173 [verbose] >
00:09:42 #15174 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:42 #15175 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:42 #15176 [verbose] > │ ## of_array' │
00:09:42 #15177 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:42 #15178 [verbose] >
00:09:42 #15179 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:42 #15180 [verbose] > inl of_array' forall dim t. (items : a dim t) : seq' t =
00:09:42 #15181 [verbose] > $'seq { for i = 0 to !items.Length - 1 do yield !items.[[i]] }'
00:09:42 #15182 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\39c1100ab27932ebae51f512120c78786676a3201eec0e43ee1aab1f769ae75f\main.spi
00:09:42 #15183 [verbose] >
00:09:42 #15184 [verbose] > ╭─[ 259.24ms - stdout ]────────────────────────────────────────────────────────╮
00:09:42 #15185 [verbose] > │ () │
00:09:42 #15186 [verbose] > │ │
00:09:42 #15187 [verbose] > │ │
00:09:42 #15188 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:42 #15189 [verbose] >
00:09:42 #15190 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:42 #15191 [verbose] > // // test
00:09:42 #15192 [verbose] >
00:09:42 #15193 [verbose] > (a ;[[ "a"; "b" ]] : _ i32 _)
00:09:42 #15194 [verbose] > |> of_array'
00:09:42 #15195 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\acec85eeba532ef8556851a1c7b220ea7068f1cd8c28571483629b03fbec4acd\main.spi
00:09:44 #15196 [verbose] >
00:09:44 #15197 [verbose] > ╭─[ 1.33s - return value ]─────────────────────────────────────────────────────╮
00:09:44 #15198 [verbose] > │ <details open="open" class="dni-treeview"><summary><span │
00:09:44 #15199 [verbose] > │ class="dni-code-hint"><code>[ a, b │
00:09:44 #15200 [verbose] > │ ]</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td> │
00:09:44 #15201 [verbose] > │ CheckClose</td><td><div │
00:09:44 #15202 [verbose] > │ class="dni-plaintext"><pre>False</pre></div></td></tr><tr><td>LastGenerated< │
00:09:44 #15203 [verbose] > │ /td><td><div │
00:09:44 #15204 [verbose] > │ class="dni-plaintext"><pre><null></pre></div></td></tr><tr><td>v2</td> │
00:09:44 #15205 [verbose] > │ <td><div class="dni-plaintext"><pre>[ a, b │
00:09:44 #15206 [verbose] > │ ]</pre></div></td></tr><tr><td>enum</td><td><div │
00:09:44 #15207 [verbose] > │ class="dni-plaintext"><pre><null></pre></div></td></tr><tr><td>pc</td> │
00:09:44 #15208 [verbose] > │ <td><div │
00:09:44 #15209 [verbose] > │ class="dni-plaintext"><pre>0</pre></div></td></tr><tr><td>current</td><td><d │
00:09:44 #15210 [verbose] > │ iv │
00:09:44 #15211 [verbose] > │ class="dni-plaintext"><pre><null></pre></div></td></tr><tr><td><i>(val │
00:09:44 #15212 [verbose] > │ ues)</i></td><td><div class="dni-plaintext"><pre>[ a, b ]</pr... │
00:09:44 #15213 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:44 #15214 [verbose] >
00:09:44 #15215 [verbose] > ╭─[ 1.36s - stdout ]───────────────────────────────────────────────────────────╮
00:09:44 #15216 [verbose] > │ let rec method0 () : string seq = │
00:09:44 #15217 [verbose] > │ let v0 : string = "a" │
00:09:44 #15218 [verbose] > │ let v1 : string = "b" │
00:09:44 #15219 [verbose] > │ let v2 : (string []) = [|v0; v1|] │
00:09:44 #15220 [verbose] > │ let v3 : string seq = seq { for i = 0 to v2.Length - 1 do yield v2.[i] } │
00:09:44 #15221 [verbose] > │ v3 │
00:09:44 #15222 [verbose] > │ method0() │
00:09:44 #15223 [verbose] > │ │
00:09:44 #15224 [verbose] > │ │
00:09:44 #15225 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:44 #15226 [verbose] >
00:09:44 #15227 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:44 #15228 [verbose] > inl of_array forall dim t. (items : a dim t) : seq' t =
00:09:44 #15229 [verbose] > items |> $'Seq.ofArray'
00:09:44 #15230 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d08fe99df116127327d18e790241f965c5eb25caaaecb4bc4abc9aae8e1264f5\main.spi
00:09:44 #15231 [verbose] >
00:09:44 #15232 [verbose] > ╭─[ 225.69ms - stdout ]────────────────────────────────────────────────────────╮
00:09:44 #15233 [verbose] > │ () │
00:09:44 #15234 [verbose] > │ │
00:09:44 #15235 [verbose] > │ │
00:09:44 #15236 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:44 #15237 [verbose] >
00:09:44 #15238 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:44 #15239 [verbose] > // // test
00:09:44 #15240 [verbose] >
00:09:44 #15241 [verbose] > (a ;[[ "a"; "b" ]] : _ i32 _)
00:09:44 #15242 [verbose] > |> of_array
00:09:44 #15243 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\54a6569df4259cd844c29115626ec620b2214157ff0a5a8eb6b7493dd8143405\main.spi
00:09:44 #15244 [verbose] >
00:09:44 #15245 [verbose] > ╭─[ 326.91ms - return value ]──────────────────────────────────────────────────╮
00:09:44 #15246 [verbose] > │ <details open="open" class="dni-treeview"><summary><span │
00:09:44 #15247 [verbose] > │ class="dni-code-hint"><code>[ a, b │
00:09:44 #15248 [verbose] > │ ]</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td> │
00:09:44 #15249 [verbose] > │ f</td><td><details class="dni-treeview"><summary><span │
00:09:44 #15250 [verbose] > │ class="dni-code-hint"><code>Microsoft.FSharp.Collections.SeqModule+OfArray@1 │
00:09:44 #15251 [verbose] > │ 010[ │
00:09:44 #15252 [verbose] > │ System.String]</code></span></summary><div><table><thead><tr></tr></thead><t │
00:09:44 #15253 [verbose] > │ body><tr><td>source</td><td><div class="dni-plaintext"><pre>[ a, b │
00:09:44 #15254 [verbose] > │ ]</pre></div></td></tr></tbody></table></div></details></td></tr><tr><td><i> │
00:09:44 #15255 [verbose] > │ (values)</i></td><td><div class="dni-plaintext"><pre>[ a, b │
00:09:44 #15256 [verbose] > │ ]</pre></div></td></tr></tbody></table></div></details><style> │
00:09:44 #15257 [verbose] > │ .dni-code-hint { │
00:09:44 #15258 [verbose] > │ font-style: italic; │
00:09:44 #15259 [verbose] > │ overflow: hidden; │
00:09:44 #15260 [verbose] > │ white-space: nowrap; │
00:09:44 #15261 [verbose] > │ } │
00:09:44 #15262 [verbose] > │ .dni-tree... │
00:09:44 #15263 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:44 #15264 [verbose] >
00:09:44 #15265 [verbose] > ╭─[ 341.47ms - stdout ]────────────────────────────────────────────────────────╮
00:09:44 #15266 [verbose] > │ let rec method0 () : string seq = │
00:09:44 #15267 [verbose] > │ let v0 : string = "a" │
00:09:44 #15268 [verbose] > │ let v1 : string = "b" │
00:09:44 #15269 [verbose] > │ let v2 : (string []) = [|v0; v1|] │
00:09:44 #15270 [verbose] > │ let v3 : ((string []) -> string seq) = Seq.ofArray │
00:09:44 #15271 [verbose] > │ v3 v2 │
00:09:44 #15272 [verbose] > │ method0() │
00:09:44 #15273 [verbose] > │ │
00:09:44 #15274 [verbose] > │ │
00:09:44 #15275 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:44 #15276 [verbose] >
00:09:44 #15277 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:44 #15278 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:44 #15279 [verbose] > │ ## to_array' │
00:09:44 #15280 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:44 #15281 [verbose] >
00:09:44 #15282 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:44 #15283 [verbose] > inl to_array' forall dim t. (items : seq' t) : a dim t =
00:09:44 #15284 [verbose] > $'!items |> Seq.toArray'
00:09:44 #15285 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\cab4cbfb3aca8073b07c1d1839bd6a0e459d4494847af7534fe8292df874f1f5\main.spi
00:09:44 #15286 [verbose] >
00:09:44 #15287 [verbose] > ╭─[ 245.06ms - stdout ]────────────────────────────────────────────────────────╮
00:09:44 #15288 [verbose] > │ () │
00:09:44 #15289 [verbose] > │ │
00:09:44 #15290 [verbose] > │ │
00:09:44 #15291 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:44 #15292 [verbose] >
00:09:44 #15293 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:44 #15294 [verbose] > // // test
00:09:44 #15295 [verbose] >
00:09:44 #15296 [verbose] > (a ;[[ "a"; "b" ]] : _ i32 _)
00:09:44 #15297 [verbose] > |> of_array'
00:09:44 #15298 [verbose] > |> to_array'
00:09:44 #15299 [verbose] > |> _assert_eq (a ;[[ "a"; "b" ]] : _ i32 _)
00:09:45 #15300 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\4f67f0f338d58afd46aea8c89c95f1cbcf47bf189ea68be7873eb11b20bdef12\main.spi
00:09:45 #15301 [verbose] >
00:09:45 #15302 [verbose] > ╭─[ 504.06ms - stdout ]────────────────────────────────────────────────────────╮
00:09:45 #15303 [verbose] > │ let rec method1 (v0 : (string []), v1 : (string []), v2 : int32) : bool = │
00:09:45 #15304 [verbose] > │ let v3 : int32 = v0.Length │
00:09:45 #15305 [verbose] > │ let v4 : bool = v2 < v3 │
00:09:45 #15306 [verbose] > │ if v4 then │
00:09:45 #15307 [verbose] > │ let v5 : string = v0.[int v2] │
00:09:45 #15308 [verbose] > │ let v6 : string = v1.[int v2] │
00:09:45 #15309 [verbose] > │ let v7 : bool = v5 = v6 │
00:09:45 #15310 [verbose] > │ if v7 then │
00:09:45 #15311 [verbose] > │ let v8 : int32 = v2 + 1 │
00:09:45 #15312 [verbose] > │ method1(v0, v1, v8) │
00:09:45 #15313 [verbose] > │ else │
00:09:45 #15314 [verbose] > │ false │
00:09:45 #15315 [verbose] > │ else │
00:09:45 #15316 [verbose] > │ true │
00:09:45 #15317 [verbose] > │ and method2 (v0 : bool) : bool = │
00:09:45 #15318 [verbose] > │ v0 │
00:09:45 #15319 [verbose] > │ and method0 () : unit = │
00:09:45 #15320 [verbose] > │ let v0 : string = "a" │
00:09:45 #15321 [verbose] > │ let v1 : string = "b" │
00:09:45 #15322 [verbose] > │ let v2 : (string []) = [|v0; v1|] │
00:09:45 #15323 [verbose] > │ let v3 : string seq = seq { for i = 0 to v2.Length - 1 do yield v2.[i] } │
00:09:45 #15324 [verbose] > │ let v4 : (string []) = v3 |> Seq.toArray │
00:09:45 #15325 [verbose] > │ let v5 : (string []) = [|v0; v1|] │
00:09:45 #15326 [verbose] > │ let v6 : string = $"%A{v4}" │
00:09:45 #15327 [verbose] > │ System.Console.WriteLine v6 │
00:09:45 #15328 [verbose] > │ let v7 : int32 = v4.Length │
00:09:45 #15329 [verbose] > │ let v8 : int32 = v5.Length │
00:09:45 #15330 [verbose] > │ let v9 : bool = v7 = v8 │
00:09:45 #15331 [verbose] > │ let v10 : bool = v9 <> true │
00:09:45 #15332 [verbose] > │ let v13 : bool = │
00:09:45 #15333 [verbose] > │ if v10 then │
00:09:45 #15334 [verbose] > │ false │
00:09:45 #15335 [verbose] > │ else │
00:09:45 #15336 [verbose] > │ let v11 : int32 = 0 │
00:09:45 #15337 [verbose] > │ method1(v4, v5, v11) │
00:09:45 #15338 [verbose] > │ let v15 : bool = │
00:09:45 #15339 [verbose] > │ if v13 then │
00:09:45 #15340 [verbose] > │ true │
00:09:45 #15341 [verbose] > │ else │
00:09:45 #15342 [verbose] > │ method2(v13) │
00:09:45 #15343 [verbose] > │ let v16 : string = $"__expect / actual: %A{v4} / expected: %A{v5}" │
00:09:45 #15344 [verbose] > │ let v17 : bool = v15 = false │
00:09:45 #15345 [verbose] > │ if v17 then │
00:09:45 #15346 [verbose] > │ failwith<unit> v16 │
00:09:45 #15347 [verbose] > │ method0() │
00:09:45 #15348 [verbose] > │ │
00:09:45 #15349 [verbose] > │ [|"a"; "b"|] │
00:09:45 #15350 [verbose] > │ │
00:09:45 #15351 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:45 #15352 [verbose] >
00:09:45 #15353 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:45 #15354 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:45 #15355 [verbose] > │ ## seq │
00:09:45 #15356 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:45 #15357 [verbose] >
00:09:45 #15358 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:45 #15359 [verbose] > type seq dim el = dim -> option el
00:09:45 #15360 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0a38bd94404cc52baf9e3c852ac7a05ca9939411527f15f911c2180e436f8dce\main.spi
00:09:45 #15361 [verbose] >
00:09:45 #15362 [verbose] > ╭─[ 251.26ms - stdout ]────────────────────────────────────────────────────────╮
00:09:45 #15363 [verbose] > │ () │
00:09:45 #15364 [verbose] > │ │
00:09:45 #15365 [verbose] > │ │
00:09:45 #15366 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:45 #15367 [verbose] >
00:09:45 #15368 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:45 #15369 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:45 #15370 [verbose] > │ ## try_item │
00:09:45 #15371 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:45 #15372 [verbose] >
00:09:45 #15373 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:45 #15374 [verbose] > inl try_item n s =
00:09:45 #15375 [verbose] > n |> s
00:09:45 #15376 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ffcfaebbd5db3a654fab173e1d1184c6a37a01ad861b19c8fc0c91c4f8babfd3\main.spi
00:09:46 #15377 [verbose] >
00:09:46 #15378 [verbose] > ╭─[ 264.42ms - stdout ]────────────────────────────────────────────────────────╮
00:09:46 #15379 [verbose] > │ () │
00:09:46 #15380 [verbose] > │ │
00:09:46 #15381 [verbose] > │ │
00:09:46 #15382 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:46 #15383 [verbose] >
00:09:46 #15384 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:46 #15385 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:46 #15386 [verbose] > │ ## from_list │
00:09:46 #15387 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:46 #15388 [verbose] >
00:09:46 #15389 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:46 #15390 [verbose] > inl from_list list =
00:09:46 #15391 [verbose] > fun n =>
00:09:46 #15392 [verbose] > list
00:09:46 #15393 [verbose] > |> listm'.try_item n
00:09:46 #15394 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b357aca6935209493196c246bab6cb887dc3746ac23c508aad5fe89704232e72\main.spi
00:09:46 #15395 [verbose] >
00:09:46 #15396 [verbose] > ╭─[ 302.24ms - stdout ]────────────────────────────────────────────────────────╮
00:09:46 #15397 [verbose] > │ () │
00:09:46 #15398 [verbose] > │ │
00:09:46 #15399 [verbose] > │ │
00:09:46 #15400 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:46 #15401 [verbose] >
00:09:46 #15402 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:46 #15403 [verbose] > // // test
00:09:46 #15404 [verbose] >
00:09:46 #15405 [verbose] > listm.init 10i32 print_and_return
00:09:46 #15406 [verbose] > |> from_list
00:09:46 #15407 [verbose] > |> try_item 5i32
00:09:46 #15408 [verbose] > |> _assert_eq (Some 5i32)
00:09:46 #15409 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a7839974e220e3119b94b887628daf89e2ec3f7c71bd07ed555e0b19895beffc\main.spi
00:09:47 #15410 [verbose] >
00:09:47 #15411 [verbose] > ╭─[ 836.11ms - stdout ]────────────────────────────────────────────────────────╮
00:09:47 #15412 [verbose] > │ type [<Struct>] US0 = │
00:09:47 #15413 [verbose] > │ | US0_0 of f0_0 : int32 │
00:09:47 #15414 [verbose] > │ | US0_1 │
00:09:47 #15415 [verbose] > │ let rec method0 () : unit = │
00:09:47 #15416 [verbose] > │ printfn $"print_and_return / x: {0}" │
00:09:47 #15417 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:47 #15418 [verbose] > │ printfn $"print_and_return / x: {2}" │
00:09:47 #15419 [verbose] > │ printfn $"print_and_return / x: {3}" │
00:09:47 #15420 [verbose] > │ printfn $"print_and_return / x: {4}" │
00:09:47 #15421 [verbose] > │ printfn $"print_and_return / x: {5}" │
00:09:47 #15422 [verbose] > │ printfn $"print_and_return / x: {6}" │
00:09:47 #15423 [verbose] > │ printfn $"print_and_return / x: {7}" │
00:09:47 #15424 [verbose] > │ printfn $"print_and_return / x: {8}" │
00:09:47 #15425 [verbose] > │ printfn $"print_and_return / x: {9}" │
00:09:47 #15426 [verbose] > │ let v0 : US0 = US0_0(5) │
00:09:47 #15427 [verbose] > │ let v1 : string = $"%A{v0}" │
00:09:47 #15428 [verbose] > │ System.Console.WriteLine v1 │
00:09:47 #15429 [verbose] > │ let v5 : US0 = US0_0(5) │
00:09:47 #15430 [verbose] > │ let v6 : US0 = US0_0(5) │
00:09:47 #15431 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:09:47 #15432 [verbose] > │ () │
00:09:47 #15433 [verbose] > │ method0() │
00:09:47 #15434 [verbose] > │ │
00:09:47 #15435 [verbose] > │ print_and_return / x: 0 │
00:09:47 #15436 [verbose] > │ print_and_return / x: 1 │
00:09:47 #15437 [verbose] > │ print_and_return / x: 2 │
00:09:47 #15438 [verbose] > │ print_and_return / x: 3 │
00:09:47 #15439 [verbose] > │ print_and_return / x: 4 │
00:09:47 #15440 [verbose] > │ print_and_return / x: 5 │
00:09:47 #15441 [verbose] > │ print_and_return / x: 6 │
00:09:47 #15442 [verbose] > │ print_and_return / x: 7 │
00:09:47 #15443 [verbose] > │ print_and_return / x: 8 │
00:09:47 #15444 [verbose] > │ print_and_return / x: 9 │
00:09:47 #15445 [verbose] > │ US0_0 5 │
00:09:47 #15446 [verbose] > │ │
00:09:47 #15447 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:47 #15448 [verbose] >
00:09:47 #15449 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:47 #15450 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:47 #15451 [verbose] > │ ## map │
00:09:47 #15452 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:47 #15453 [verbose] >
00:09:47 #15454 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:47 #15455 [verbose] > inl map fn s =
00:09:47 #15456 [verbose] > fun n =>
00:09:47 #15457 [verbose] > n
00:09:47 #15458 [verbose] > |> s
00:09:47 #15459 [verbose] > |> optionm.map fn
00:09:47 #15460 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\301511f5c3fcccd73ac885fd90da1881343f446a28999c86ce2475e3f868855b\main.spi
00:09:47 #15461 [verbose] >
00:09:47 #15462 [verbose] > ╭─[ 325.75ms - stdout ]────────────────────────────────────────────────────────╮
00:09:47 #15463 [verbose] > │ () │
00:09:47 #15464 [verbose] > │ │
00:09:47 #15465 [verbose] > │ │
00:09:47 #15466 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:47 #15467 [verbose] >
00:09:47 #15468 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:47 #15469 [verbose] > // // test
00:09:47 #15470 [verbose] >
00:09:47 #15471 [verbose] > listm.init 10i32 id
00:09:47 #15472 [verbose] > |> from_list
00:09:47 #15473 [verbose] > |> map ((*) 2)
00:09:47 #15474 [verbose] > |> try_item 5i32
00:09:47 #15475 [verbose] > |> _assert_eq (Some 10i32)
00:09:47 #15476 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\90a8d677b59ac611475528e1a6305d3fa7bb0af52fc2ab05f5df0f57622fcddd\main.spi
00:09:47 #15477 [verbose] >
00:09:47 #15478 [verbose] > ╭─[ 302.34ms - stdout ]────────────────────────────────────────────────────────╮
00:09:47 #15479 [verbose] > │ type [<Struct>] US0 = │
00:09:47 #15480 [verbose] > │ | US0_0 of f0_0 : int32 │
00:09:47 #15481 [verbose] > │ | US0_1 │
00:09:47 #15482 [verbose] > │ let rec method0 () : unit = │
00:09:47 #15483 [verbose] > │ let v0 : US0 = US0_0(10) │
00:09:47 #15484 [verbose] > │ let v1 : string = $"%A{v0}" │
00:09:47 #15485 [verbose] > │ System.Console.WriteLine v1 │
00:09:47 #15486 [verbose] > │ let v5 : US0 = US0_0(10) │
00:09:47 #15487 [verbose] > │ let v6 : US0 = US0_0(10) │
00:09:47 #15488 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:09:47 #15489 [verbose] > │ () │
00:09:47 #15490 [verbose] > │ method0() │
00:09:47 #15491 [verbose] > │ │
00:09:47 #15492 [verbose] > │ US0_0 10 │
00:09:47 #15493 [verbose] > │ │
00:09:47 #15494 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:47 #15495 [verbose] >
00:09:47 #15496 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:47 #15497 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:47 #15498 [verbose] > │ ## mapi │
00:09:47 #15499 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:47 #15500 [verbose] >
00:09:47 #15501 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:47 #15502 [verbose] > inl mapi fn s =
00:09:47 #15503 [verbose] > fun n =>
00:09:47 #15504 [verbose] > n
00:09:47 #15505 [verbose] > |> s
00:09:47 #15506 [verbose] > |> optionm.map (fn n)
00:09:47 #15507 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1d769f0d49d641d276e34b0ad91af34056b778ab72827e19841a1552a187013e\main.spi
00:09:48 #15508 [verbose] >
00:09:48 #15509 [verbose] > ╭─[ 420.35ms - stdout ]────────────────────────────────────────────────────────╮
00:09:48 #15510 [verbose] > │ () │
00:09:48 #15511 [verbose] > │ │
00:09:48 #15512 [verbose] > │ │
00:09:48 #15513 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:48 #15514 [verbose] >
00:09:48 #15515 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:48 #15516 [verbose] > // // test
00:09:48 #15517 [verbose] >
00:09:48 #15518 [verbose] > listm.init 10i32 print_and_return
00:09:48 #15519 [verbose] > |> from_list
00:09:48 #15520 [verbose] > |> mapi fun i x => i + x
00:09:48 #15521 [verbose] > |> try_item 5i32
00:09:48 #15522 [verbose] > |> _assert_eq (Some 10i32)
00:09:48 #15523 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5d0f68c78a35c0539a74eae7e0f56e46a95ec7e4c555ef342ec536450ffd1e98\main.spi
00:09:48 #15524 [verbose] >
00:09:48 #15525 [verbose] > ╭─[ 313.46ms - stdout ]────────────────────────────────────────────────────────╮
00:09:48 #15526 [verbose] > │ type [<Struct>] US0 = │
00:09:48 #15527 [verbose] > │ | US0_0 of f0_0 : int32 │
00:09:48 #15528 [verbose] > │ | US0_1 │
00:09:48 #15529 [verbose] > │ let rec method0 () : unit = │
00:09:48 #15530 [verbose] > │ printfn $"print_and_return / x: {0}" │
00:09:48 #15531 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:48 #15532 [verbose] > │ printfn $"print_and_return / x: {2}" │
00:09:48 #15533 [verbose] > │ printfn $"print_and_return / x: {3}" │
00:09:48 #15534 [verbose] > │ printfn $"print_and_return / x: {4}" │
00:09:48 #15535 [verbose] > │ printfn $"print_and_return / x: {5}" │
00:09:48 #15536 [verbose] > │ printfn $"print_and_return / x: {6}" │
00:09:48 #15537 [verbose] > │ printfn $"print_and_return / x: {7}" │
00:09:48 #15538 [verbose] > │ printfn $"print_and_return / x: {8}" │
00:09:48 #15539 [verbose] > │ printfn $"print_and_return / x: {9}" │
00:09:48 #15540 [verbose] > │ let v0 : US0 = US0_0(10) │
00:09:48 #15541 [verbose] > │ let v1 : string = $"%A{v0}" │
00:09:48 #15542 [verbose] > │ System.Console.WriteLine v1 │
00:09:48 #15543 [verbose] > │ let v5 : US0 = US0_0(10) │
00:09:48 #15544 [verbose] > │ let v6 : US0 = US0_0(10) │
00:09:48 #15545 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:09:48 #15546 [verbose] > │ () │
00:09:48 #15547 [verbose] > │ method0() │
00:09:48 #15548 [verbose] > │ │
00:09:48 #15549 [verbose] > │ print_and_return / x: 0 │
00:09:48 #15550 [verbose] > │ print_and_return / x: 1 │
00:09:48 #15551 [verbose] > │ print_and_return / x: 2 │
00:09:48 #15552 [verbose] > │ print_and_return / x: 3 │
00:09:48 #15553 [verbose] > │ print_and_return / x: 4 │
00:09:48 #15554 [verbose] > │ print_and_return / x: 5 │
00:09:48 #15555 [verbose] > │ print_and_return / x: 6 │
00:09:48 #15556 [verbose] > │ print_and_return / x: 7 │
00:09:48 #15557 [verbose] > │ print_and_return / x: 8 │
00:09:48 #15558 [verbose] > │ print_and_return / x: 9 │
00:09:48 #15559 [verbose] > │ US0_0 10 │
00:09:48 #15560 [verbose] > │ │
00:09:48 #15561 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:48 #15562 [verbose] >
00:09:48 #15563 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:48 #15564 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:48 #15565 [verbose] > │ ## choose │
00:09:48 #15566 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:48 #15567 [verbose] >
00:09:48 #15568 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:48 #15569 [verbose] > inl choose forall dim {number} t u. (fn : t -> option u) (s : seq dim t) : seq
00:09:48 #15570 [verbose] > dim u =
00:09:48 #15571 [verbose] > fun n =>
00:09:48 #15572 [verbose] > inl rec body fn s i i' =
00:09:48 #15573 [verbose] > match i |> s with
00:09:48 #15574 [verbose] > | None => None
00:09:48 #15575 [verbose] > | Some x =>
00:09:48 #15576 [verbose] > match x |> fn with
00:09:48 #15577 [verbose] > | Some x when n = i' => Some x
00:09:48 #15578 [verbose] > | Some _ => loop (i + 1) (i' + 1)
00:09:48 #15579 [verbose] > | _ => loop (i + 1) i'
00:09:48 #15580 [verbose] > and inl loop i i' =
00:09:48 #15581 [verbose] > if n |> var_is |> not
00:09:48 #15582 [verbose] > then body fn s i i'
00:09:48 #15583 [verbose] > else
00:09:48 #15584 [verbose] > inl fn = join fn
00:09:48 #15585 [verbose] > inl s = join s
00:09:48 #15586 [verbose] > join body fn s i i'
00:09:48 #15587 [verbose] > loop 0 0
00:09:48 #15588 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c486df90ba58dcd6d06b687cd2ec078a138befdc5bab9a504b5c37108a45ba2d\main.spi
00:09:48 #15589 [verbose] >
00:09:48 #15590 [verbose] > ╭─[ 231.56ms - stdout ]────────────────────────────────────────────────────────╮
00:09:48 #15591 [verbose] > │ () │
00:09:48 #15592 [verbose] > │ │
00:09:48 #15593 [verbose] > │ │
00:09:48 #15594 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:48 #15595 [verbose] >
00:09:48 #15596 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:48 #15597 [verbose] > // // test
00:09:48 #15598 [verbose] >
00:09:48 #15599 [verbose] > listm.init 10i32 print_and_return
00:09:48 #15600 [verbose] > |> from_list
00:09:48 #15601 [verbose] > |> choose (fun x => if x % 2 = 0 then Some x else None)
00:09:48 #15602 [verbose] > |> try_item 1i32
00:09:48 #15603 [verbose] > |> _assert_eq (Some 2i32)
00:09:48 #15604 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ff12a2b1a70ee068e40b2c3ac16a077608bf9c6d4150d24dcfbf2062c9e8120a\main.spi
00:09:49 #15605 [verbose] >
00:09:49 #15606 [verbose] > ╭─[ 302.23ms - stdout ]────────────────────────────────────────────────────────╮
00:09:49 #15607 [verbose] > │ type [<Struct>] US0 = │
00:09:49 #15608 [verbose] > │ | US0_0 of f0_0 : int32 │
00:09:49 #15609 [verbose] > │ | US0_1 │
00:09:49 #15610 [verbose] > │ let rec method0 () : unit = │
00:09:49 #15611 [verbose] > │ printfn $"print_and_return / x: {0}" │
00:09:49 #15612 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:49 #15613 [verbose] > │ printfn $"print_and_return / x: {2}" │
00:09:49 #15614 [verbose] > │ printfn $"print_and_return / x: {3}" │
00:09:49 #15615 [verbose] > │ printfn $"print_and_return / x: {4}" │
00:09:49 #15616 [verbose] > │ printfn $"print_and_return / x: {5}" │
00:09:49 #15617 [verbose] > │ printfn $"print_and_return / x: {6}" │
00:09:49 #15618 [verbose] > │ printfn $"print_and_return / x: {7}" │
00:09:49 #15619 [verbose] > │ printfn $"print_and_return / x: {8}" │
00:09:49 #15620 [verbose] > │ printfn $"print_and_return / x: {9}" │
00:09:49 #15621 [verbose] > │ let v0 : US0 = US0_0(2) │
00:09:49 #15622 [verbose] > │ let v1 : string = $"%A{v0}" │
00:09:49 #15623 [verbose] > │ System.Console.WriteLine v1 │
00:09:49 #15624 [verbose] > │ let v5 : US0 = US0_0(2) │
00:09:49 #15625 [verbose] > │ let v6 : US0 = US0_0(2) │
00:09:49 #15626 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:09:49 #15627 [verbose] > │ () │
00:09:49 #15628 [verbose] > │ method0() │
00:09:49 #15629 [verbose] > │ │
00:09:49 #15630 [verbose] > │ print_and_return / x: 0 │
00:09:49 #15631 [verbose] > │ print_and_return / x: 1 │
00:09:49 #15632 [verbose] > │ print_and_return / x: 2 │
00:09:49 #15633 [verbose] > │ print_and_return / x: 3 │
00:09:49 #15634 [verbose] > │ print_and_return / x: 4 │
00:09:49 #15635 [verbose] > │ print_and_return / x: 5 │
00:09:49 #15636 [verbose] > │ print_and_return / x: 6 │
00:09:49 #15637 [verbose] > │ print_and_return / x: 7 │
00:09:49 #15638 [verbose] > │ print_and_return / x: 8 │
00:09:49 #15639 [verbose] > │ print_and_return / x: 9 │
00:09:49 #15640 [verbose] > │ US0_0 2 │
00:09:49 #15641 [verbose] > │ │
00:09:49 #15642 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:49 #15643 [verbose] >
00:09:49 #15644 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:49 #15645 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:49 #15646 [verbose] > │ ## indexed │
00:09:49 #15647 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:49 #15648 [verbose] >
00:09:49 #15649 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:49 #15650 [verbose] > inl indexed s =
00:09:49 #15651 [verbose] > s
00:09:49 #15652 [verbose] > |> mapi fun i x =>
00:09:49 #15653 [verbose] > i, x
00:09:49 #15654 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0efe85276bdb297cb243e6a0b28d7f8222e9a4e5971c499aa076e740fbdd7f6f\main.spi
00:09:49 #15655 [verbose] >
00:09:49 #15656 [verbose] > ╭─[ 216.18ms - stdout ]────────────────────────────────────────────────────────╮
00:09:49 #15657 [verbose] > │ () │
00:09:49 #15658 [verbose] > │ │
00:09:49 #15659 [verbose] > │ │
00:09:49 #15660 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:49 #15661 [verbose] >
00:09:49 #15662 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:49 #15663 [verbose] > // // test
00:09:49 #15664 [verbose] >
00:09:49 #15665 [verbose] > listm.init 10i32 ((*) 2)
00:09:49 #15666 [verbose] > |> from_list
00:09:49 #15667 [verbose] > |> indexed
00:09:49 #15668 [verbose] > |> try_item 5i32
00:09:49 #15669 [verbose] > |> _assert_eq (Some (5i32, 10i32))
00:09:49 #15670 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\28b8c56cc510f255afd056080a895fab8bb7493c195a02844de9a3c9862e44fe\main.spi
00:09:49 #15671 [verbose] >
00:09:49 #15672 [verbose] > ╭─[ 281.27ms - stdout ]────────────────────────────────────────────────────────╮
00:09:49 #15673 [verbose] > │ type [<Struct>] US0 = │
00:09:49 #15674 [verbose] > │ | US0_0 of f0_0 : int32 * f0_1 : int32 │
00:09:49 #15675 [verbose] > │ | US0_1 │
00:09:49 #15676 [verbose] > │ let rec method0 () : unit = │
00:09:49 #15677 [verbose] > │ let v0 : US0 = US0_0(5, 10) │
00:09:49 #15678 [verbose] > │ let v1 : string = $"%A{v0}" │
00:09:49 #15679 [verbose] > │ System.Console.WriteLine v1 │
00:09:49 #15680 [verbose] > │ let v5 : US0 = US0_0(5, 10) │
00:09:49 #15681 [verbose] > │ let v6 : US0 = US0_0(5, 10) │
00:09:49 #15682 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:09:49 #15683 [verbose] > │ () │
00:09:49 #15684 [verbose] > │ method0() │
00:09:49 #15685 [verbose] > │ │
00:09:49 #15686 [verbose] > │ US0_0 (5, 10) │
00:09:49 #15687 [verbose] > │ │
00:09:49 #15688 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:49 #15689 [verbose] >
00:09:49 #15690 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:49 #15691 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:49 #15692 [verbose] > │ ## zip │
00:09:49 #15693 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:49 #15694 [verbose] >
00:09:49 #15695 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:49 #15696 [verbose] > inl zip n seq1 seq2 =
00:09:49 #15697 [verbose] > seq1 n, seq2 n
00:09:49 #15698 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9793beb23590609c42786f2a60fcedafae54b1e1d55ea1144821df4c478b30e1\main.spi
00:09:49 #15699 [verbose] >
00:09:49 #15700 [verbose] > ╭─[ 251.92ms - stdout ]────────────────────────────────────────────────────────╮
00:09:49 #15701 [verbose] > │ () │
00:09:49 #15702 [verbose] > │ │
00:09:49 #15703 [verbose] > │ │
00:09:49 #15704 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:49 #15705 [verbose] >
00:09:49 #15706 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:49 #15707 [verbose] > // // test
00:09:49 #15708 [verbose] >
00:09:49 #15709 [verbose] > ((listm.init 10i32 id |> from_list), (listm.init 10i32 ((*) 2) |> from_list))
00:09:49 #15710 [verbose] > ||> zip 5i32
00:09:49 #15711 [verbose] > |> _assert_eq (Some 5, Some 10)
00:09:50 #15712 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1108e5f081d9a48e19e9463d93a1b89f2ce6ec8f5d7a1794be2aef882fd03652\main.spi
00:09:50 #15713 [verbose] >
00:09:50 #15714 [verbose] > ╭─[ 274.75ms - stdout ]────────────────────────────────────────────────────────╮
00:09:50 #15715 [verbose] > │ type [<Struct>] US0 = │
00:09:50 #15716 [verbose] > │ | US0_0 of f0_0 : int32 │
00:09:50 #15717 [verbose] > │ | US0_1 │
00:09:50 #15718 [verbose] > │ let rec method0 () : unit = │
00:09:50 #15719 [verbose] > │ let v0 : US0 = US0_0(5) │
00:09:50 #15720 [verbose] > │ let v1 : US0 = US0_0(10) │
00:09:50 #15721 [verbose] > │ let v2 : string = $"%A{struct (v0, v1)}" │
00:09:50 #15722 [verbose] > │ System.Console.WriteLine v2 │
00:09:50 #15723 [verbose] > │ let v9 : US0 = US0_0(5) │
00:09:50 #15724 [verbose] > │ let v10 : US0 = US0_0(10) │
00:09:50 #15725 [verbose] > │ let v11 : US0 = US0_0(5) │
00:09:50 #15726 [verbose] > │ let v12 : US0 = US0_0(10) │
00:09:50 #15727 [verbose] > │ let v13 : string = $"__expect / actual: %A{struct (v9, v10)} / expected: │
00:09:50 #15728 [verbose] > │ %A{struct (v11, v12)}" │
00:09:50 #15729 [verbose] > │ () │
00:09:50 #15730 [verbose] > │ method0() │
00:09:50 #15731 [verbose] > │ │
00:09:50 #15732 [verbose] > │ struct (US0_0 5, US0_0 10) │
00:09:50 #15733 [verbose] > │ │
00:09:50 #15734 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:50 #15735 [verbose] >
00:09:50 #15736 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:50 #15737 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:50 #15738 [verbose] > │ ## zip_with │
00:09:50 #15739 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:50 #15740 [verbose] >
00:09:50 #15741 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:50 #15742 [verbose] > inl zip_with fn seq1 seq2 =
00:09:50 #15743 [verbose] > fun n =>
00:09:50 #15744 [verbose] > fn (seq1 n) (seq2 n)
00:09:50 #15745 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1034cba10918f275a772c7a7d2a9ac4f99b75a67100ac7f62a867e039395bc41\main.spi
00:09:50 #15746 [verbose] >
00:09:50 #15747 [verbose] > ╭─[ 248.99ms - stdout ]────────────────────────────────────────────────────────╮
00:09:50 #15748 [verbose] > │ () │
00:09:50 #15749 [verbose] > │ │
00:09:50 #15750 [verbose] > │ │
00:09:50 #15751 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:50 #15752 [verbose] >
00:09:50 #15753 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:50 #15754 [verbose] > // // test
00:09:50 #15755 [verbose] >
00:09:50 #15756 [verbose] > ((listm.init 10i32 id |> from_list), (listm.init 10i32 ((*) 2) |> from_list))
00:09:50 #15757 [verbose] > ||> zip_with (optionm'.choose (+))
00:09:50 #15758 [verbose] > |> try_item 2i32
00:09:50 #15759 [verbose] > |> _assert_eq (Some 6)
00:09:50 #15760 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\aa7ee70f4f4262c329dafae2a51adf357120685a9a0176f4b969e9ac1cb0130d\main.spi
00:09:50 #15761 [verbose] >
00:09:50 #15762 [verbose] > ╭─[ 307.53ms - stdout ]────────────────────────────────────────────────────────╮
00:09:50 #15763 [verbose] > │ type [<Struct>] US0 = │
00:09:50 #15764 [verbose] > │ | US0_0 of f0_0 : int32 │
00:09:50 #15765 [verbose] > │ | US0_1 │
00:09:50 #15766 [verbose] > │ let rec method0 () : unit = │
00:09:50 #15767 [verbose] > │ let v0 : US0 = US0_0(6) │
00:09:50 #15768 [verbose] > │ let v1 : string = $"%A{v0}" │
00:09:50 #15769 [verbose] > │ System.Console.WriteLine v1 │
00:09:50 #15770 [verbose] > │ let v5 : US0 = US0_0(6) │
00:09:50 #15771 [verbose] > │ let v6 : US0 = US0_0(6) │
00:09:50 #15772 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:09:50 #15773 [verbose] > │ () │
00:09:50 #15774 [verbose] > │ method0() │
00:09:50 #15775 [verbose] > │ │
00:09:50 #15776 [verbose] > │ US0_0 6 │
00:09:50 #15777 [verbose] > │ │
00:09:50 #15778 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:50 #15779 [verbose] >
00:09:50 #15780 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:50 #15781 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:50 #15782 [verbose] > │ ## fold │
00:09:50 #15783 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:50 #15784 [verbose] >
00:09:50 #15785 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:50 #15786 [verbose] > inl fold fn init seq =
00:09:50 #15787 [verbose] > inl rec loop acc n =
00:09:50 #15788 [verbose] > match seq n with
00:09:50 #15789 [verbose] > | Some x => loop (fn acc x) (n + 1)
00:09:50 #15790 [verbose] > | None => acc
00:09:50 #15791 [verbose] > loop init 0
00:09:50 #15792 [verbose] >
00:09:50 #15793 [verbose] > inl fold_ fn init seq =
00:09:50 #15794 [verbose] > let rec loop acc n =
00:09:50 #15795 [verbose] > match seq n with
00:09:50 #15796 [verbose] > | Some x => loop (fn acc x) (n + 1)
00:09:50 #15797 [verbose] > | None => acc
00:09:50 #15798 [verbose] > loop init 0
00:09:50 #15799 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0ec648d0056bec8e07f0fae2f3106b0834ae42e35b120570f71080b17a6afefd\main.spi
00:09:51 #15800 [verbose] >
00:09:51 #15801 [verbose] > ╭─[ 268.23ms - stdout ]────────────────────────────────────────────────────────╮
00:09:51 #15802 [verbose] > │ () │
00:09:51 #15803 [verbose] > │ │
00:09:51 #15804 [verbose] > │ │
00:09:51 #15805 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:51 #15806 [verbose] >
00:09:51 #15807 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:51 #15808 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:51 #15809 [verbose] > │ ## sum │
00:09:51 #15810 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:51 #15811 [verbose] >
00:09:51 #15812 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:51 #15813 [verbose] > inl sum seq =
00:09:51 #15814 [verbose] > seq |> fold (+) 0
00:09:51 #15815 [verbose] >
00:09:51 #15816 [verbose] > inl sum_ seq =
00:09:51 #15817 [verbose] > seq |> fold_ (+) 0
00:09:51 #15818 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f17b16ec4b371564f50cd9d8e8cc4f016e7dedb00b9bad40a402aab67ecb1392\main.spi
00:09:51 #15819 [verbose] >
00:09:51 #15820 [verbose] > ╭─[ 249.68ms - stdout ]────────────────────────────────────────────────────────╮
00:09:51 #15821 [verbose] > │ () │
00:09:51 #15822 [verbose] > │ │
00:09:51 #15823 [verbose] > │ │
00:09:51 #15824 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:51 #15825 [verbose] >
00:09:51 #15826 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:51 #15827 [verbose] > // // test
00:09:51 #15828 [verbose] >
00:09:51 #15829 [verbose] > listm.init 10i32 id
00:09:51 #15830 [verbose] > |> from_list
00:09:51 #15831 [verbose] > |> fun f (n : i32) => f n
00:09:51 #15832 [verbose] > |> sum
00:09:51 #15833 [verbose] > |> _assert_eq 45
00:09:51 #15834 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f0ff2755e6cea06338295f26733d2dea17c436995f6341baceb73bdec26ce556\main.spi
00:09:51 #15835 [verbose] >
00:09:51 #15836 [verbose] > ╭─[ 271.52ms - stdout ]────────────────────────────────────────────────────────╮
00:09:51 #15837 [verbose] > │ let rec method0 () : unit = │
00:09:51 #15838 [verbose] > │ let v0 : string = $"%A{45}" │
00:09:51 #15839 [verbose] > │ System.Console.WriteLine v0 │
00:09:51 #15840 [verbose] > │ let v1 : string = $"__expect / actual: %A{45} / expected: %A{45}" │
00:09:51 #15841 [verbose] > │ () │
00:09:51 #15842 [verbose] > │ method0() │
00:09:51 #15843 [verbose] > │ │
00:09:51 #15844 [verbose] > │ 45 │
00:09:51 #15845 [verbose] > │ │
00:09:51 #15846 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:51 #15847 [verbose] >
00:09:51 #15848 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:51 #15849 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:51 #15850 [verbose] > │ ## to_list │
00:09:51 #15851 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:51 #15852 [verbose] >
00:09:51 #15853 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:51 #15854 [verbose] > inl to_list seq =
00:09:51 #15855 [verbose] > seq
00:09:51 #15856 [verbose] > |> fold (fun acc x => x :: acc) [[]]
00:09:51 #15857 [verbose] > |> listm.rev
00:09:51 #15858 [verbose] >
00:09:51 #15859 [verbose] > inl to_list_ seq =
00:09:51 #15860 [verbose] > seq
00:09:51 #15861 [verbose] > |> fold_ (fun acc x => x :: acc) [[]]
00:09:51 #15862 [verbose] > |> listm.rev
00:09:51 #15863 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f6884827fc3069c2b6680ab84dd20bc70f4a746b023e441c8af20c559b3c5ec5\main.spi
00:09:51 #15864 [verbose] >
00:09:51 #15865 [verbose] > ╭─[ 257.23ms - stdout ]────────────────────────────────────────────────────────╮
00:09:51 #15866 [verbose] > │ () │
00:09:51 #15867 [verbose] > │ │
00:09:51 #15868 [verbose] > │ │
00:09:51 #15869 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:51 #15870 [verbose] >
00:09:51 #15871 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:51 #15872 [verbose] > // // test
00:09:51 #15873 [verbose] >
00:09:51 #15874 [verbose] > listm.init 10i32 id
00:09:51 #15875 [verbose] > |> from_list
00:09:51 #15876 [verbose] > |> fun f (n : i32) => f n
00:09:51 #15877 [verbose] > |> to_list
00:09:51 #15878 [verbose] > |> _assert_eq (listm.init 10i32 id)
00:09:51 #15879 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ed68af7049021acfcf8f3a992036a60e6280ccf91c2c203fd3d6ac86186f5306\main.spi
00:09:52 #15880 [verbose] >
00:09:52 #15881 [verbose] > ╭─[ 352.27ms - stdout ]────────────────────────────────────────────────────────╮
00:09:52 #15882 [verbose] > │ type UH0 = │
00:09:52 #15883 [verbose] > │ | UH0_0 │
00:09:52 #15884 [verbose] > │ | UH0_1 of int32 * UH0 │
00:09:52 #15885 [verbose] > │ let rec method0 () : unit = │
00:09:52 #15886 [verbose] > │ let v0 : UH0 = UH0_0 │
00:09:52 #15887 [verbose] > │ let v1 : UH0 = UH0_1(9, v0) │
00:09:52 #15888 [verbose] > │ let v2 : UH0 = UH0_1(8, v1) │
00:09:52 #15889 [verbose] > │ let v3 : UH0 = UH0_1(7, v2) │
00:09:52 #15890 [verbose] > │ let v4 : UH0 = UH0_1(6, v3) │
00:09:52 #15891 [verbose] > │ let v5 : UH0 = UH0_1(5, v4) │
00:09:52 #15892 [verbose] > │ let v6 : UH0 = UH0_1(4, v5) │
00:09:52 #15893 [verbose] > │ let v7 : UH0 = UH0_1(3, v6) │
00:09:52 #15894 [verbose] > │ let v8 : UH0 = UH0_1(2, v7) │
00:09:52 #15895 [verbose] > │ let v9 : UH0 = UH0_1(1, v8) │
00:09:52 #15896 [verbose] > │ let v10 : UH0 = UH0_1(0, v9) │
00:09:52 #15897 [verbose] > │ let v11 : string = $"%A{v10}" │
00:09:52 #15898 [verbose] > │ System.Console.WriteLine v11 │
00:09:52 #15899 [verbose] > │ let v100 : UH0 = UH0_0 │
00:09:52 #15900 [verbose] > │ let v101 : UH0 = UH0_1(9, v100) │
00:09:52 #15901 [verbose] > │ let v102 : UH0 = UH0_1(8, v101) │
00:09:52 #15902 [verbose] > │ let v103 : UH0 = UH0_1(7, v102) │
00:09:52 #15903 [verbose] > │ let v104 : UH0 = UH0_1(6, v103) │
00:09:52 #15904 [verbose] > │ let v105 : UH0 = UH0_1(5, v104) │
00:09:52 #15905 [verbose] > │ let v106 : UH0 = UH0_1(4, v105) │
00:09:52 #15906 [verbose] > │ let v107 : UH0 = UH0_1(3, v106) │
00:09:52 #15907 [verbose] > │ let v108 : UH0 = UH0_1(2, v107) │
00:09:52 #15908 [verbose] > │ let v109 : UH0 = UH0_1(1, v108) │
00:09:52 #15909 [verbose] > │ let v110 : UH0 = UH0_1(0, v109) │
00:09:52 #15910 [verbose] > │ let v111 : UH0 = UH0_0 │
00:09:52 #15911 [verbose] > │ let v112 : UH0 = UH0_1(9, v111) │
00:09:52 #15912 [verbose] > │ let v113 : UH0 = UH0_1(8, v112) │
00:09:52 #15913 [verbose] > │ let v114 : UH0 = UH0_1(7, v113) │
00:09:52 #15914 [verbose] > │ let v115 : UH0 = UH0_1(6, v114) │
00:09:52 #15915 [verbose] > │ let v116 : UH0 = UH0_1(5, v115) │
00:09:52 #15916 [verbose] > │ let v117 : UH0 = UH0_1(4, v116) │
00:09:52 #15917 [verbose] > │ let v118 : UH0 = UH0_1(3, v117) │
00:09:52 #15918 [verbose] > │ let v119 : UH0 = UH0_1(2, v118) │
00:09:52 #15919 [verbose] > │ let v120 : UH0 = UH0_1(1, v119) │
00:09:52 #15920 [verbose] > │ let v121 : UH0 = UH0_1(0, v120) │
00:09:52 #15921 [verbose] > │ let v122 : string = $"__expect / actual: %A{v110} / expected: %A{v121}" │
00:09:52 #15922 [verbose] > │ () │
00:09:52 #15923 [verbose] > │ method0() │
00:09:52 #15924 [verbose] > │ │
00:09:52 #15925 [verbose] > │ UH0_1 │
00:09:52 #15926 [verbose] > │ (0, │
00:09:52 #15927 [verbose] > │ UH0_1 │
00:09:52 #15928 [verbose] > │ (1, │
00:09:52 #15929 [verbose] > │ UH0_1 │
00:09:52 #15930 [verbose] > │ (2, │
00:09:52 #15931 [verbose] > │ UH0_1 │
00:09:52 #15932 [verbose] > │ (3, │
00:09:52 #15933 [verbose] > │ UH0_1 │
00:09:52 #15934 [verbose] > │ (4, UH0_1 (5, UH0_1 (6, UH0_1 (7, UH0_1 (8, UH0_1 (9, │
00:09:52 #15935 [verbose] > │ UH0_0)))))))))) │
00:09:52 #15936 [verbose] > │ │
00:09:52 #15937 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:52 #15938 [verbose] >
00:09:52 #15939 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:52 #15940 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:52 #15941 [verbose] > │ ## from_array │
00:09:52 #15942 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:52 #15943 [verbose] >
00:09:52 #15944 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:52 #15945 [verbose] > inl from_array forall dim {number; int} el. (array : a dim el) : seq dim el =
00:09:52 #15946 [verbose] > fun n =>
00:09:52 #15947 [verbose] > if n >= length array
00:09:52 #15948 [verbose] > then None
00:09:52 #15949 [verbose] > else index array n |> Some
00:09:52 #15950 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0fcc80e340884ae624f4a413f7602755932ea5032da91b156e201a6daf0f789b\main.spi
00:09:52 #15951 [verbose] >
00:09:52 #15952 [verbose] > ╭─[ 248.21ms - stdout ]────────────────────────────────────────────────────────╮
00:09:52 #15953 [verbose] > │ () │
00:09:52 #15954 [verbose] > │ │
00:09:52 #15955 [verbose] > │ │
00:09:52 #15956 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:52 #15957 [verbose] >
00:09:52 #15958 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:52 #15959 [verbose] > // // test
00:09:52 #15960 [verbose] >
00:09:52 #15961 [verbose] > a ;[[ 1; 2; 3 ]]
00:09:52 #15962 [verbose] > |> from_array
00:09:52 #15963 [verbose] > |> try_item 1i32
00:09:52 #15964 [verbose] > |> _assert_eq (Some 2i32)
00:09:52 #15965 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\629a5d7b03149cf54fd3e23872ede6833beed63edd2caea5dfb9cb4b8276abc8\main.spi
00:09:52 #15966 [verbose] >
00:09:52 #15967 [verbose] > ╭─[ 336.84ms - stdout ]────────────────────────────────────────────────────────╮
00:09:52 #15968 [verbose] > │ type [<Struct>] US0 = │
00:09:52 #15969 [verbose] > │ | US0_0 of f0_0 : int32 │
00:09:52 #15970 [verbose] > │ | US0_1 │
00:09:52 #15971 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:09:52 #15972 [verbose] > │ v0 │
00:09:52 #15973 [verbose] > │ and method0 () : unit = │
00:09:52 #15974 [verbose] > │ let v0 : (int32 []) = [|1; 2; 3|] │
00:09:52 #15975 [verbose] > │ let v1 : int32 = v0.Length │
00:09:52 #15976 [verbose] > │ let v2 : bool = 1 >= v1 │
00:09:52 #15977 [verbose] > │ let v6 : US0 = │
00:09:52 #15978 [verbose] > │ if v2 then │
00:09:52 #15979 [verbose] > │ US0_1 │
00:09:52 #15980 [verbose] > │ else │
00:09:52 #15981 [verbose] > │ let v4 : int32 = v0.[int 1] │
00:09:52 #15982 [verbose] > │ US0_0(v4) │
00:09:52 #15983 [verbose] > │ let v7 : string = $"%A{v6}" │
00:09:52 #15984 [verbose] > │ System.Console.WriteLine v7 │
00:09:52 #15985 [verbose] > │ let v11 : bool = │
00:09:52 #15986 [verbose] > │ match v6 with │
00:09:52 #15987 [verbose] > │ | US0_0(v9) -> (* Some *) │
00:09:52 #15988 [verbose] > │ let v10 : bool = v9 = 2 │
00:09:52 #15989 [verbose] > │ v10 │
00:09:52 #15990 [verbose] > │ | _ -> │
00:09:52 #15991 [verbose] > │ false │
00:09:52 #15992 [verbose] > │ let v13 : bool = │
00:09:52 #15993 [verbose] > │ if v11 then │
00:09:52 #15994 [verbose] > │ true │
00:09:52 #15995 [verbose] > │ else │
00:09:52 #15996 [verbose] > │ method1(v11) │
00:09:52 #15997 [verbose] > │ let v14 : US0 = US0_0(2) │
00:09:52 #15998 [verbose] > │ let v15 : string = $"__expect / actual: %A{v6} / expected: %A{v14}" │
00:09:52 #15999 [verbose] > │ let v16 : bool = v13 = false │
00:09:52 #16000 [verbose] > │ if v16 then │
00:09:52 #16001 [verbose] > │ failwith<unit> v15 │
00:09:52 #16002 [verbose] > │ method0() │
00:09:52 #16003 [verbose] > │ │
00:09:52 #16004 [verbose] > │ US0_0 2 │
00:09:52 #16005 [verbose] > │ │
00:09:52 #16006 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:52 #16007 [verbose] >
00:09:52 #16008 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:52 #16009 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:52 #16010 [verbose] > │ ## to_array │
00:09:52 #16011 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:52 #16012 [verbose] >
00:09:52 #16013 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:52 #16014 [verbose] > inl to_array seq =
00:09:52 #16015 [verbose] > inl ar = a ;[[]] |> mut
00:09:52 #16016 [verbose] > ((), seq)
00:09:52 #16017 [verbose] > ||> fold fun _ x =>
00:09:52 #16018 [verbose] > ar <- *ar /@ a ;[[x]]
00:09:52 #16019 [verbose] > *ar
00:09:52 #16020 [verbose] >
00:09:52 #16021 [verbose] > inl to_array_ seq =
00:09:52 #16022 [verbose] > inl ar = a ;[[]] |> mut
00:09:52 #16023 [verbose] > ((), seq)
00:09:52 #16024 [verbose] > ||> fold_ fun _ x =>
00:09:52 #16025 [verbose] > ar <- *ar /@ a ;[[x]]
00:09:52 #16026 [verbose] > *ar
00:09:52 #16027 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5328365eeae243b0bbc4edaf3a62e49fa7a3a7caf9e196f2a8589fee857b8ce7\main.spi
00:09:53 #16028 [verbose] >
00:09:53 #16029 [verbose] > ╭─[ 512.00ms - stdout ]────────────────────────────────────────────────────────╮
00:09:53 #16030 [verbose] > │ () │
00:09:53 #16031 [verbose] > │ │
00:09:53 #16032 [verbose] > │ │
00:09:53 #16033 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:53 #16034 [verbose] >
00:09:53 #16035 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:53 #16036 [verbose] > // // test
00:09:53 #16037 [verbose] >
00:09:53 #16038 [verbose] > listm.init 10i32 id
00:09:53 #16039 [verbose] > |> from_list
00:09:53 #16040 [verbose] > |> fun (x : i32 -> _) => x
00:09:53 #16041 [verbose] > |> to_array
00:09:53 #16042 [verbose] > |> _assert_eq (a ;[[ 0; 1; 2; 3; 4; 5; 6; 7; 8; 9 ]] : _ i32 _)
00:09:53 #16043 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a8615ad98c09bd83904d08e2b8aa58f599bfc6896f350a253c38e1e415df48de\main.spi
00:09:53 #16044 [verbose] >
00:09:53 #16045 [verbose] > ╭─[ 508.73ms - stdout ]────────────────────────────────────────────────────────╮
00:09:53 #16046 [verbose] > │ type Mut0 = {mutable l0 : (int32 [])} │
00:09:53 #16047 [verbose] > │ and Mut1 = {mutable l0 : int32} │
00:09:53 #16048 [verbose] > │ let rec method1 (v0 : int32, v1 : Mut1) : bool = │
00:09:53 #16049 [verbose] > │ let v2 : int32 = v1.l0 │
00:09:53 #16050 [verbose] > │ let v3 : bool = v2 < v0 │
00:09:53 #16051 [verbose] > │ v3 │
00:09:53 #16052 [verbose] > │ and method2 (v0 : (int32 []), v1 : (int32 []), v2 : int32) : bool = │
00:09:53 #16053 [verbose] > │ let v3 : int32 = v0.Length │
00:09:53 #16054 [verbose] > │ let v4 : bool = v2 < v3 │
00:09:53 #16055 [verbose] > │ if v4 then │
00:09:53 #16056 [verbose] > │ let v5 : int32 = v0.[int v2] │
00:09:53 #16057 [verbose] > │ let v6 : int32 = v1.[int v2] │
00:09:53 #16058 [verbose] > │ let v7 : bool = v5 = v6 │
00:09:53 #16059 [verbose] > │ if v7 then │
00:09:53 #16060 [verbose] > │ let v8 : int32 = v2 + 1 │
00:09:53 #16061 [verbose] > │ method2(v0, v1, v8) │
00:09:53 #16062 [verbose] > │ else │
00:09:53 #16063 [verbose] > │ false │
00:09:53 #16064 [verbose] > │ else │
00:09:53 #16065 [verbose] > │ true │
00:09:53 #16066 [verbose] > │ and method3 (v0 : bool) : bool = │
00:09:53 #16067 [verbose] > │ v0 │
00:09:53 #16068 [verbose] > │ and method0 () : unit = │
00:09:53 #16069 [verbose] > │ let v0 : (int32 []) = [||] │
00:09:53 #16070 [verbose] > │ let v1 : Mut0 = {l0 = v0} : Mut0 │
00:09:53 #16071 [verbose] > │ let v2 : (int32 []) = v1.l0 │
00:09:53 #16072 [verbose] > │ let v3 : (int32 []) = [|0|] │
00:09:53 #16073 [verbose] > │ let v4 : int32 = v2.Length │
00:09:53 #16074 [verbose] > │ let v5 : int32 = v3.Length │
00:09:53 #16075 [verbose] > │ let v6 : int32 = v4 + v5 │
00:09:53 #16076 [verbose] > │ let v7 : (int32 []) = Array.zeroCreate<int32> (v6) │
00:09:53 #16077 [verbose] > │ let v8 : Mut1 = {l0 = 0} : Mut1 │
00:09:53 #16078 [verbose] > │ while method1(v6, v8) do │
00:09:53 #16079 [verbose] > │ let v10 : int32 = v8.l0 │
00:09:53 #16080 [verbose] > │ let v11 : bool = v10 < v4 │
00:09:53 #16081 [verbose] > │ let v15 : int32 = │
00:09:53 #16082 [verbose] > │ if v11 then │
00:09:53 #16083 [verbose] > │ let v12 : int32 = v2.[int v10] │
00:09:53 #16084 [verbose] > │ v12 │
00:09:53 #16085 [verbose] > │ else │
00:09:53 #16086 [verbose] > │ let v13 : int32 = v10 - v4 │
00:09:53 #16087 [verbose] > │ let v14 : int32 = v3.[int v13] │
00:09:53 #16088 [verbose] > │ v14 │
00:09:53 #16089 [verbose] > │ v7.[int v10] <- v15 │
00:09:53 #16090 [verbose] > │ let v16 : int32 = v10 + 1 │
00:09:53 #16091 [verbose] > │ v8.l0 <- v16 │
00:09:53 #16092 [verbose] > │ () │
00:09:53 #16093 [verbose] > │ v1.l0 <- v7 │
00:09:53 #16094 [verbose] > │ let v17 : (int32 []) = v1.l0 │
00:09:53 #16095 [verbose] > │ let v18 : (int32 []) = [|1|] │
00:09:53 #16096 [verbose] > │ let v19 : int32 = v17.Length │
00:09:53 #16097 [verbose] > │ let v20 : int32 = v18.Length │
00:09:53 #16098 [verbose] > │ let v21 : int32 = v19 + v20 │
00:09:53 #16099 [verbose] > │ let v22 : (int32 []) = Array.zeroCreate<int32> (v21) │
00:09:53 #16100 [verbose] > │ let v23 : Mut1 = {l0 = 0} : Mut1 │
00:09:53 #16101 [verbose] > │ while method1(v21, v23) do │
00:09:53 #16102 [verbose] > │ let v25 : int32 = v23.l0 │
00:09:53 #16103 [verbose] > │ let v26 : bool = v25 < v19 │
00:09:53 #16104 [verbose] > │ let v30 : int32 = │
00:09:53 #16105 [verbose] > │ if v26 then │
00:09:53 #16106 [verbose] > │ let v27 : int32 = v17.[int v25] │
00:09:53 #16107 [verbose] > │ v27 │
00:09:53 #16108 [verbose] > │ else │
00:09:53 #16109 [verbose] > │ let v28 : int32 = v25 - v19 │
00:09:53 #16110 [verbose] > │ let v29 : int32 = v18.[int v28] │
00:09:53 #16111 [verbose] > │ v29 │
00:09:53 #16112 [verbose] > │ v22.[int v25] <- v30 │
00:09:53 #16113 [verbose] > │ let v31 : int32 = v25 + 1 │
00:09:53 #16114 [verbose] > │ v23.l0 <- v31 │
00:09:53 #16115 [verbose] > │ () │
00:09:53 #16116 [verbose] > │ v1.l0 <- v22 │
00:09:53 #16117 [verbose] > │ let v32 : (int32 []) = v1.l0 │
00:09:53 #16118 [verbose] > │ let v33 : (int32 []) = [|2|] │
00:09:53 #16119 [verbose] > │ let v34 : int32 = v32.Length │
00:09:53 #16120 [verbose] > │ let v35 : int32 = v33.Length │
00:09:53 #16121 [verbose] > │ let v36 : int32 = v34 + v35 │
00:09:53 #16122 [verbose] > │ let v37 : (int32 []) = Array.zeroCreate<int32> (v36) │
00:09:53 #16123 [verbose] > │ let v38 : Mut1 = {l0 = 0} : Mut1 │
00:09:53 #16124 [verbose] > │ while method1(v36, v38) do │
00:09:53 #16125 [verbose] > │ let v40 : int32 = v38.l0 │
00:09:53 #16126 [verbose] > │ let v41 : bool = v40 < v34 │
00:09:53 #16127 [verbose] > │ let v45 : int32 = │
00:09:53 #16128 [verbose] > │ if v41 then │
00:09:53 #16129 [verbose] > │ let v42 : int32 = v32.[int v40] │
00:09:53 #16130 [verbose] > │ v42 │
00:09:53 #16131 [verbose] > │ else │
00:09:53 #16132 [verbose] > │ let v43 : int32 = v40 - v34 │
00:09:53 #16133 [verbose] > │ let v44 : int32 = v33.[int v43] │
00:09:53 #16134 [verbose] > │ v44 │
00:09:53 #16135 [verbose] > │ v37.[int v40] <- v45 │
00:09:53 #16136 [verbose] > │ let v46 : int32 = v40 + 1 │
00:09:53 #16137 [verbose] > │ v38.l0 <- v46 │
00:09:53 #16138 [verbose] > │ () │
00:09:53 #16139 [verbose] > │ v1.l0 <- v37 │
00:09:53 #16140 [verbose] > │ let v47 : (int32 []) = v1.l0 │
00:09:53 #16141 [verbose] > │ let v48 : (int32 []) = [|3|] │
00:09:53 #16142 [verbose] > │ let v49 : int32 = v47.Length │
00:09:53 #16143 [verbose] > │ let v50 : int32 = v48.Length │
00:09:53 #16144 [verbose] > │ let v51 : int32 = v49 + v50 │
00:09:53 #16145 [verbose] > │ let v52 : (int32 []) = Array.zeroCreate<int32> (v51) │
00:09:53 #16146 [verbose] > │ let v53 : Mut1 = {l0 = 0} : Mut1 │
00:09:53 #16147 [verbose] > │ while method1(v51, v53) do │
00:09:53 #16148 [verbose] > │ let v55 : int32 = v53.l0 │
00:09:53 #16149 [verbose] > │ let v56 : bool = v55 < v49 │
00:09:53 #16150 [verbose] > │ let v60 : int32 = │
00:09:53 #16151 [verbose] > │ if v56 then │
00:09:53 #16152 [verbose] > │ let v57 : int32 = v47.[int v55] │
00:09:53 #16153 [verbose] > │ v57 │
00:09:53 #16154 [verbose] > │ else │
00:09:53 #16155 [verbose] > │ let v58 : int32 = v55 - v49 │
00:09:53 #16156 [verbose] > │ let v59 : int32 = v48.[int v58] │
00:09:53 #16157 [verbose] > │ v59 │
00:09:53 #16158 [verbose] > │ v52.[int v55] <- v60 │
00:09:53 #16159 [verbose] > │ let v61 : int32 = v55 + 1 │
00:09:53 #16160 [verbose] > │ v53.l0 <- v61 │
00:09:53 #16161 [verbose] > │ () │
00:09:53 #16162 [verbose] > │ v1.l0 <- v52 │
00:09:53 #16163 [verbose] > │ let v62 : (int32 []) = v1.l0 │
00:09:53 #16164 [verbose] > │ let v63 : (int32 []) = [|4|] │
00:09:53 #16165 [verbose] > │ let v64 : int32 = v62.Length │
00:09:53 #16166 [verbose] > │ let v65 : int32 = v63.Length │
00:09:53 #16167 [verbose] > │ let v66 : int32 = v64 + v65 │
00:09:53 #16168 [verbose] > │ let v67 : (int32 []) = Array.zeroCreate<int32> (v66) │
00:09:53 #16169 [verbose] > │ let v68 : Mut1 = {l0 = 0} : Mut1 │
00:09:53 #16170 [verbose] > │ while method1(v66, v68) do │
00:09:53 #16171 [verbose] > │ let v70 : int32 = v68.l0 │
00:09:53 #16172 [verbose] > │ let v71 : bool = v70 < v64 │
00:09:53 #16173 [verbose] > │ let v75 : int32 = │
00:09:53 #16174 [verbose] > │ if v71 then │
00:09:53 #16175 [verbose] > │ let v72 : int32 = v62.[int v70] │
00:09:53 #16176 [verbose] > │ v72 │
00:09:53 #16177 [verbose] > │ else │
00:09:53 #16178 [verbose] > │ let v73 : int32 = v70 - v64 │
00:09:53 #16179 [verbose] > │ let v74 : int32 = v63.[int v73] │
00:09:53 #16180 [verbose] > │ v74 │
00:09:53 #16181 [verbose] > │ v67.[int v70] <- v75 │
00:09:53 #16182 [verbose] > │ let v76 : int32 = v70 + 1 │
00:09:53 #16183 [verbose] > │ v68.l0 <- v76 │
00:09:53 #16184 [verbose] > │ () │
00:09:53 #16185 [verbose] > │ v1.l0 <- v67 │
00:09:53 #16186 [verbose] > │ let v77 : (int32 []) = v1.l0 │
00:09:53 #16187 [verbose] > │ let v78 : (int32 []) = [|5|] │
00:09:53 #16188 [verbose] > │ let v79 : int32 = v77.Length │
00:09:53 #16189 [verbose] > │ let v80 : int32 = v78.Length │
00:09:53 #16190 [verbose] > │ let v81 : int32 = v79 + v80 │
00:09:53 #16191 [verbose] > │ let v82 : (int32 []) = Array.zeroCreate<int32> (v81) │
00:09:53 #16192 [verbose] > │ let v83 : Mut1 = {l0 = 0} : Mut1 │
00:09:53 #16193 [verbose] > │ while method1(v81, v83) do │
00:09:53 #16194 [verbose] > │ let v85 : int32 = v83.l0 │
00:09:53 #16195 [verbose] > │ let v86 : bool = v85 < v79 │
00:09:53 #16196 [verbose] > │ let v90 : int32 = │
00:09:53 #16197 [verbose] > │ if v86 then │
00:09:53 #16198 [verbose] > │ let v87 : int32 = v77.[int v85] │
00:09:53 #16199 [verbose] > │ v87 │
00:09:53 #16200 [verbose] > │ else │
00:09:53 #16201 [verbose] > │ let v88 : int32 = v85 - v79 │
00:09:53 #16202 [verbose] > │ let v89 : int32 = v78.[int v88] │
00:09:53 #16203 [verbose] > │ v89 │
00:09:53 #16204 [verbose] > │ v82.[int v85] <- v90 │
00:09:53 #16205 [verbose] > │ let v91 : int32 = v85 + 1 │
00:09:53 #16206 [verbose] > │ v83.l0 <- v91 │
00:09:53 #16207 [verbose] > │ () │
00:09:53 #16208 [verbose] > │ v1.l0 <- v82 │
00:09:53 #16209 [verbose] > │ let v92 : (int32 []) = v1.l0 │
00:09:53 #16210 [verbose] > │ let v93 : (int32 []) = [|6|] │
00:09:53 #16211 [verbose] > │ let v94 : int32 = v92.Length │
00:09:53 #16212 [verbose] > │ let v95 : int32 = v93.Length │
00:09:53 #16213 [verbose] > │ let v96 : int32 = v94 + v95 │
00:09:53 #16214 [verbose] > │ let v97 : (int32 []) = Array.zeroCreate<int32> (v96) │
00:09:53 #16215 [verbose] > │ let v98 : Mut1 = {l0 = 0} : Mut1 │
00:09:53 #16216 [verbose] > │ while method1(v96, v98) do │
00:09:53 #16217 [verbose] > │ let v100 : int32 = v98.l0 │
00:09:53 #16218 [verbose] > │ let v101 : bool = v100 < v94 │
00:09:53 #16219 [verbose] > │ let v105 : int32 = │
00:09:53 #16220 [verbose] > │ if v101 then │
00:09:53 #16221 [verbose] > │ let v102 : int32 = v92.[int v100] │
00:09:53 #16222 [verbose] > │ v102 │
00:09:53 #16223 [verbose] > │ else │
00:09:53 #16224 [verbose] > │ let v103 : int32 = v100 - v94 │
00:09:53 #16225 [verbose] > │ let v104 : int32 = v93.[int v103] │
00:09:53 #16226 [verbose] > │ v104 │
00:09:53 #16227 [verbose] > │ v97.[int v100] <- v105 │
00:09:53 #16228 [verbose] > │ let v106 : int32 = v100 + 1 │
00:09:53 #16229 [verbose] > │ v98.l0 <- v106 │
00:09:53 #16230 [verbose] > │ () │
00:09:53 #16231 [verbose] > │ v1.l0 <- v97 │
00:09:53 #16232 [verbose] > │ let v107 : (int32 []) = v1.l0 │
00:09:53 #16233 [verbose] > │ let v108 : (int32 []) = [|7|] │
00:09:53 #16234 [verbose] > │ let v109 : int32 = v107.Length │
00:09:53 #16235 [verbose] > │ let v110 : int32 = v108.Length │
00:09:53 #16236 [verbose] > │ let v111 : int32 = v109 + v110 │
00:09:53 #16237 [verbose] > │ let v112 : (int32 []) = Array.zeroCreate<int32> (v111) │
00:09:53 #16238 [verbose] > │ let v113 : Mut1 = {l0 = 0} : Mut1 │
00:09:53 #16239 [verbose] > │ while method1(v111, v113) do │
00:09:53 #16240 [verbose] > │ let v115 : int32 = v113.l0 │
00:09:53 #16241 [verbose] > │ let v116 : bool = v115 < v109 │
00:09:53 #16242 [verbose] > │ let v120 : int32 = │
00:09:53 #16243 [verbose] > │ if v116 then │
00:09:53 #16244 [verbose] > │ let v117 : int32 = v107.[int v115] │
00:09:53 #16245 [verbose] > │ v117 │
00:09:53 #16246 [verbose] > │ else │
00:09:53 #16247 [verbose] > │ let v118 : int32 = v115 - v109 │
00:09:53 #16248 [verbose] > │ let v119 : int32 = v108.[int v118] │
00:09:53 #16249 [verbose] > │ v119 │
00:09:53 #16250 [verbose] > │ v112.[int v115] <- v120 │
00:09:53 #16251 [verbose] > │ let v121 : int32 = v115 + 1 │
00:09:53 #16252 [verbose] > │ v113.l0 <- v121 │
00:09:53 #16253 [verbose] > │ () │
00:09:53 #16254 [verbose] > │ v1.l0 <- v112 │
00:09:53 #16255 [verbose] > │ let v122 : (int32 []) = v1.l0 │
00:09:53 #16256 [verbose] > │ let v123 : (int32 []) = [|8|] │
00:09:53 #16257 [verbose] > │ let v124 : int32 = v122.Length │
00:09:53 #16258 [verbose] > │ let v125 : int32 = v123.Length │
00:09:53 #16259 [verbose] > │ let v126 : int32 = v124 + v125 │
00:09:53 #16260 [verbose] > │ let v127 : (int32 []) = Array.zeroCreate<int32> (v126) │
00:09:53 #16261 [verbose] > │ let v128 : Mut1 = {l0 = 0} : Mut1 │
00:09:53 #16262 [verbose] > │ while method1(v126, v128) do │
00:09:53 #16263 [verbose] > │ let v130 : int32 = v128.l0 │
00:09:53 #16264 [verbose] > │ let v131 : bool = v130 < v124 │
00:09:53 #16265 [verbose] > │ let v135 : int32 = │
00:09:53 #16266 [verbose] > │ if v131 then │
00:09:53 #16267 [verbose] > │ let v132 : int32 = v122.[int v130] │
00:09:53 #16268 [verbose] > │ v132 │
00:09:53 #16269 [verbose] > │ else │
00:09:53 #16270 [verbose] > │ let v133 : int32 = v130 - v124 │
00:09:53 #16271 [verbose] > │ let v134 : int32 = v123.[int v133] │
00:09:53 #16272 [verbose] > │ v134 │
00:09:53 #16273 [verbose] > │ v127.[int v130] <- v135 │
00:09:53 #16274 [verbose] > │ let v136 : int32 = v130 + 1 │
00:09:53 #16275 [verbose] > │ v128.l0 <- v136 │
00:09:53 #16276 [verbose] > │ () │
00:09:53 #16277 [verbose] > │ v1.l0 <- v127 │
00:09:53 #16278 [verbose] > │ let v137 : (int32 []) = v1.l0 │
00:09:53 #16279 [verbose] > │ let v138 : (int32 []) = [|9|] │
00:09:53 #16280 [verbose] > │ let v139 : int32 = v137.Length │
00:09:53 #16281 [verbose] > │ let v140 : int32 = v138.Length │
00:09:53 #16282 [verbose] > │ let v141 : int32 = v139 + v140 │
00:09:53 #16283 [verbose] > │ let v142 : (int32 []) = Array.zeroCreate<int32> (v141) │
00:09:53 #16284 [verbose] > │ let v143 : Mut1 = {l0 = 0} : Mut1 │
00:09:53 #16285 [verbose] > │ while method1(v141, v143) do │
00:09:53 #16286 [verbose] > │ let v145 : int32 = v143.l0 │
00:09:53 #16287 [verbose] > │ let v146 : bool = v145 < v139 │
00:09:53 #16288 [verbose] > │ let v150 : int32 = │
00:09:53 #16289 [verbose] > │ if v146 then │
00:09:53 #16290 [verbose] > │ let v147 : int32 = v137.[int v145] │
00:09:53 #16291 [verbose] > │ v147 │
00:09:53 #16292 [verbose] > │ else │
00:09:53 #16293 [verbose] > │ let v148 : int32 = v145 - v139 │
00:09:53 #16294 [verbose] > │ let v149 : int32 = v138.[int v148] │
00:09:53 #16295 [verbose] > │ v149 │
00:09:53 #16296 [verbose] > │ v142.[int v145] <- v150 │
00:09:53 #16297 [verbose] > │ let v151 : int32 = v145 + 1 │
00:09:53 #16298 [verbose] > │ v143.l0 <- v151 │
00:09:53 #16299 [verbose] > │ () │
00:09:53 #16300 [verbose] > │ v1.l0 <- v142 │
00:09:53 #16301 [verbose] > │ let v152 : (int32 []) = v1.l0 │
00:09:53 #16302 [verbose] > │ let v153 : (int32 []) = [|0; 1; 2; 3; 4; 5; 6; 7; 8; 9|] │
00:09:53 #16303 [verbose] > │ let v154 : string = $"%A{v152}" │
00:09:53 #16304 [verbose] > │ System.Console.WriteLine v154 │
00:09:53 #16305 [verbose] > │ let v155 : int32 = v152.Length │
00:09:53 #16306 [verbose] > │ let v156 : int32 = v153.Length │
00:09:53 #16307 [verbose] > │ let v157 : bool = v155 = v156 │
00:09:53 #16308 [verbose] > │ let v158 : bool = v157 <> true │
00:09:53 #16309 [verbose] > │ let v161 : bool = │
00:09:53 #16310 [verbose] > │ if v158 then │
00:09:53 #16311 [verbose] > │ false │
00:09:53 #16312 [verbose] > │ else │
00:09:53 #16313 [verbose] > │ let v159 : int32 = 0 │
00:09:53 #16314 [verbose] > │ method2(v152, v153, v159) │
00:09:53 #16315 [verbose] > │ let v163 : bool = │
00:09:53 #16316 [verbose] > │ if v161 then │
00:09:53 #16317 [verbose] > │ true │
00:09:53 #16318 [verbose] > │ else │
00:09:53 #16319 [verbose] > │ method3(v161) │
00:09:53 #16320 [verbose] > │ let v164 : string = $"__expect / actual: %A{v152} / expected: %A{v153}" │
00:09:53 #16321 [verbose] > │ let v165 : bool = v163 = false │
00:09:53 #16322 [verbose] > │ if v165 then │
00:09:53 #16323 [verbose] > │ failwith<unit> v164 │
00:09:53 #16324 [verbose] > │ method0() │
00:09:53 #16325 [verbose] > │ │
00:09:53 #16326 [verbose] > │ [|0; 1; 2; 3; 4; 5; 6; 7; 8; 9|] │
00:09:53 #16327 [verbose] > │ │
00:09:53 #16328 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:53 #16329 [verbose] >
00:09:53 #16330 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:53 #16331 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:53 #16332 [verbose] > │ ## take_while │
00:09:53 #16333 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:53 #16334 [verbose] >
00:09:53 #16335 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:53 #16336 [verbose] > inl take_while cond seq =
00:09:53 #16337 [verbose] > inl rec loop acc i =
00:09:53 #16338 [verbose] > match seq i with
00:09:53 #16339 [verbose] > | Some st when cond st i => loop (st :: acc) (i + 1)
00:09:53 #16340 [verbose] > | _ => acc |> listm.rev
00:09:53 #16341 [verbose] > loop [[]] 0
00:09:54 #16342 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c835a9d6b263e6b6845ca92cffd72b89f9f2b6ba2b84b1a01574576560b0403e\main.spi
00:09:54 #16343 [verbose] >
00:09:54 #16344 [verbose] > ╭─[ 209.88ms - stdout ]────────────────────────────────────────────────────────╮
00:09:54 #16345 [verbose] > │ () │
00:09:54 #16346 [verbose] > │ │
00:09:54 #16347 [verbose] > │ │
00:09:54 #16348 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:54 #16349 [verbose] >
00:09:54 #16350 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:54 #16351 [verbose] > // // test
00:09:54 #16352 [verbose] >
00:09:54 #16353 [verbose] > listm.init 10i32 id
00:09:54 #16354 [verbose] > |> from_list
00:09:54 #16355 [verbose] > |> take_while (fun n (_ : i32) => n < 5)
00:09:54 #16356 [verbose] > |> listm'.sum
00:09:54 #16357 [verbose] > |> _assert_eq 10
00:09:54 #16358 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e36d8fc435e3f3619e5d20dbfa81adbf40c8ec144094dc2283e3b5fd3edb6f88\main.spi
00:09:54 #16359 [verbose] >
00:09:54 #16360 [verbose] > ╭─[ 262.38ms - stdout ]────────────────────────────────────────────────────────╮
00:09:54 #16361 [verbose] > │ let rec method0 () : unit = │
00:09:54 #16362 [verbose] > │ let v0 : string = $"%A{10}" │
00:09:54 #16363 [verbose] > │ System.Console.WriteLine v0 │
00:09:54 #16364 [verbose] > │ let v1 : string = $"__expect / actual: %A{10} / expected: %A{10}" │
00:09:54 #16365 [verbose] > │ () │
00:09:54 #16366 [verbose] > │ method0() │
00:09:54 #16367 [verbose] > │ │
00:09:54 #16368 [verbose] > │ 10 │
00:09:54 #16369 [verbose] > │ │
00:09:54 #16370 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:54 #16371 [verbose] >
00:09:54 #16372 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:54 #16373 [verbose] > // // test
00:09:54 #16374 [verbose] >
00:09:54 #16375 [verbose] > stream.new_finite_stream print_and_return 10i32
00:09:54 #16376 [verbose] > |> flip stream.try_item
00:09:54 #16377 [verbose] > |> take_while (fun n (_ : i32) => n < 5)
00:09:54 #16378 [verbose] > |> listm'.sum
00:09:54 #16379 [verbose] > |> _assert_eq 10
00:09:54 #16380 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e250906b6d08e1adbde8baf632c9ea19a71b8058058d7cd13451410973f1db53\main.spi
00:09:54 #16381 [verbose] >
00:09:54 #16382 [verbose] > ╭─[ 294.35ms - stdout ]────────────────────────────────────────────────────────╮
00:09:54 #16383 [verbose] > │ let rec method0 () : unit = │
00:09:54 #16384 [verbose] > │ printfn $"print_and_return / x: {0}" │
00:09:54 #16385 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:54 #16386 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:54 #16387 [verbose] > │ printfn $"print_and_return / x: {2}" │
00:09:54 #16388 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:54 #16389 [verbose] > │ printfn $"print_and_return / x: {2}" │
00:09:54 #16390 [verbose] > │ printfn $"print_and_return / x: {3}" │
00:09:54 #16391 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:54 #16392 [verbose] > │ printfn $"print_and_return / x: {2}" │
00:09:54 #16393 [verbose] > │ printfn $"print_and_return / x: {3}" │
00:09:54 #16394 [verbose] > │ printfn $"print_and_return / x: {4}" │
00:09:54 #16395 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:54 #16396 [verbose] > │ printfn $"print_and_return / x: {2}" │
00:09:54 #16397 [verbose] > │ printfn $"print_and_return / x: {3}" │
00:09:54 #16398 [verbose] > │ printfn $"print_and_return / x: {4}" │
00:09:54 #16399 [verbose] > │ printfn $"print_and_return / x: {5}" │
00:09:54 #16400 [verbose] > │ let v0 : string = $"%A{10}" │
00:09:54 #16401 [verbose] > │ System.Console.WriteLine v0 │
00:09:54 #16402 [verbose] > │ let v1 : string = $"__expect / actual: %A{10} / expected: %A{10}" │
00:09:54 #16403 [verbose] > │ () │
00:09:54 #16404 [verbose] > │ method0() │
00:09:54 #16405 [verbose] > │ │
00:09:54 #16406 [verbose] > │ print_and_return / x: 0 │
00:09:54 #16407 [verbose] > │ print_and_return / x: 1 │
00:09:54 #16408 [verbose] > │ print_and_return / x: 1 │
00:09:54 #16409 [verbose] > │ print_and_return / x: 2 │
00:09:54 #16410 [verbose] > │ print_and_return / x: 1 │
00:09:54 #16411 [verbose] > │ print_and_return / x: 2 │
00:09:54 #16412 [verbose] > │ print_and_return / x: 3 │
00:09:54 #16413 [verbose] > │ print_and_return / x: 1 │
00:09:54 #16414 [verbose] > │ print_and_return / x: 2 │
00:09:54 #16415 [verbose] > │ print_and_return / x: 3 │
00:09:54 #16416 [verbose] > │ print_and_return / x: 4 │
00:09:54 #16417 [verbose] > │ print_and_return / x: 1 │
00:09:54 #16418 [verbose] > │ print_and_return / x: 2 │
00:09:54 #16419 [verbose] > │ print_and_return / x: 3 │
00:09:54 #16420 [verbose] > │ print_and_return / x: 4 │
00:09:54 #16421 [verbose] > │ print_and_return / x: 5 │
00:09:54 #16422 [verbose] > │ 10 │
00:09:54 #16423 [verbose] > │ │
00:09:54 #16424 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:54 #16425 [verbose] >
00:09:54 #16426 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:54 #16427 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:54 #16428 [verbose] > │ ## take_while_ │
00:09:54 #16429 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:54 #16430 [verbose] >
00:09:54 #16431 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:54 #16432 [verbose] > inl take_while_ cond seq =
00:09:54 #16433 [verbose] > let rec loop acc i =
00:09:54 #16434 [verbose] > match seq i with
00:09:54 #16435 [verbose] > | Some st when cond st i => loop (st :: acc) (i + 1)
00:09:54 #16436 [verbose] > | _ => acc |> listm.rev
00:09:54 #16437 [verbose] > loop [[]] 0
00:09:54 #16438 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\58313e211b09d1d3d04ab759655ae72155d976bddbcdfaa6ef0c495ed2ec34c7\main.spi
00:09:55 #16439 [verbose] >
00:09:55 #16440 [verbose] > ╭─[ 250.96ms - stdout ]────────────────────────────────────────────────────────╮
00:09:55 #16441 [verbose] > │ () │
00:09:55 #16442 [verbose] > │ │
00:09:55 #16443 [verbose] > │ │
00:09:55 #16444 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:55 #16445 [verbose] >
00:09:55 #16446 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:55 #16447 [verbose] > // // test
00:09:55 #16448 [verbose] >
00:09:55 #16449 [verbose] > stream.new_infinite_stream_ print_and_return
00:09:55 #16450 [verbose] > |> flip stream.try_item
00:09:55 #16451 [verbose] > |> take_while_ (fun n (_ : i32) => n < 5i32)
00:09:55 #16452 [verbose] > |> listm'.sum
00:09:55 #16453 [verbose] > |> _assert_eq 10
00:09:55 #16454 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\37cfe3fe566c5d4b0258724672710f23b6eacede177d43e02196cd2191fdb906\main.spi
00:09:55 #16455 [verbose] >
00:09:55 #16456 [verbose] > ╭─[ 394.13ms - stdout ]────────────────────────────────────────────────────────╮
00:09:55 #16457 [verbose] > │ type UH0 = │
00:09:55 #16458 [verbose] > │ | UH0_0 of int32 * (unit -> UH0) │
00:09:55 #16459 [verbose] > │ | UH0_1 │
00:09:55 #16460 [verbose] > │ and UH1 = │
00:09:55 #16461 [verbose] > │ | UH1_0 │
00:09:55 #16462 [verbose] > │ | UH1_1 of int32 * UH1 │
00:09:55 #16463 [verbose] > │ and [<Struct>] US0 = │
00:09:55 #16464 [verbose] > │ | US0_0 of f0_0 : int32 │
00:09:55 #16465 [verbose] > │ | US0_1 │
00:09:55 #16466 [verbose] > │ let rec closure0 (v0 : int32) () : UH0 = │
00:09:55 #16467 [verbose] > │ let v1 : int32 = v0 + 1 │
00:09:55 #16468 [verbose] > │ method1(v1) │
00:09:55 #16469 [verbose] > │ and method1 (v0 : int32) : UH0 = │
00:09:55 #16470 [verbose] > │ printfn $"print_and_return / x: {v0}" │
00:09:55 #16471 [verbose] > │ let v1 : (unit -> UH0) = closure0(v0) │
00:09:55 #16472 [verbose] > │ UH0_0(v0, v1) │
00:09:55 #16473 [verbose] > │ and method3 (v0 : int32, v1 : UH0) : US0 = │
00:09:55 #16474 [verbose] > │ match v1 with │
00:09:55 #16475 [verbose] > │ | UH0_0(v2, v3) -> (* StreamCons *) │
00:09:55 #16476 [verbose] > │ let v4 : bool = v0 <= 0 │
00:09:55 #16477 [verbose] > │ if v4 then │
00:09:55 #16478 [verbose] > │ US0_0(v2) │
00:09:55 #16479 [verbose] > │ else │
00:09:55 #16480 [verbose] > │ let v6 : int32 = v0 - 1 │
00:09:55 #16481 [verbose] > │ let v7 : UH0 = v3 () │
00:09:55 #16482 [verbose] > │ method3(v6, v7) │
00:09:55 #16483 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:09:55 #16484 [verbose] > │ US0_1 │
00:09:55 #16485 [verbose] > │ and method4 (v0 : UH1, v1 : UH1) : UH1 = │
00:09:55 #16486 [verbose] > │ match v0 with │
00:09:55 #16487 [verbose] > │ | UH1_1(v2, v3) -> (* Cons *) │
00:09:55 #16488 [verbose] > │ let v4 : UH1 = UH1_1(v2, v1) │
00:09:55 #16489 [verbose] > │ method4(v3, v4) │
00:09:55 #16490 [verbose] > │ | UH1_0 -> (* Nil *) │
00:09:55 #16491 [verbose] > │ v1 │
00:09:55 #16492 [verbose] > │ and method2 (v0 : UH0, v1 : UH1, v2 : int32) : UH1 = │
00:09:55 #16493 [verbose] > │ let v3 : US0 = method3(v2, v0) │
00:09:55 #16494 [verbose] > │ match v3 with │
00:09:55 #16495 [verbose] > │ | US0_0(v4) -> (* Some *) │
00:09:55 #16496 [verbose] > │ let v5 : bool = v4 < 5 │
00:09:55 #16497 [verbose] > │ if v5 then │
00:09:55 #16498 [verbose] > │ let v6 : UH1 = UH1_1(v4, v1) │
00:09:55 #16499 [verbose] > │ let v7 : int32 = v2 + 1 │
00:09:55 #16500 [verbose] > │ method2(v0, v6, v7) │
00:09:55 #16501 [verbose] > │ else │
00:09:55 #16502 [verbose] > │ let v9 : UH1 = UH1_0 │
00:09:55 #16503 [verbose] > │ method4(v1, v9) │
00:09:55 #16504 [verbose] > │ | _ -> │
00:09:55 #16505 [verbose] > │ let v12 : UH1 = UH1_0 │
00:09:55 #16506 [verbose] > │ method4(v1, v12) │
00:09:55 #16507 [verbose] > │ and method5 (v0 : UH1, v1 : int32) : int32 = │
00:09:55 #16508 [verbose] > │ match v0 with │
00:09:55 #16509 [verbose] > │ | UH1_1(v2, v3) -> (* Cons *) │
00:09:55 #16510 [verbose] > │ let v4 : int32 = v1 + v2 │
00:09:55 #16511 [verbose] > │ method5(v3, v4) │
00:09:55 #16512 [verbose] > │ | UH1_0 -> (* Nil *) │
00:09:55 #16513 [verbose] > │ v1 │
00:09:55 #16514 [verbose] > │ and method6 (v0 : bool) : bool = │
00:09:55 #16515 [verbose] > │ v0 │
00:09:55 #16516 [verbose] > │ and method0 () : unit = │
00:09:55 #16517 [verbose] > │ let v0 : int32 = 0 │
00:09:55 #16518 [verbose] > │ let v1 : UH0 = method1(v0) │
00:09:55 #16519 [verbose] > │ let v2 : UH1 = UH1_0 │
00:09:55 #16520 [verbose] > │ let v3 : int32 = 0 │
00:09:55 #16521 [verbose] > │ let v4 : UH1 = method2(v1, v2, v3) │
00:09:55 #16522 [verbose] > │ let v5 : int32 = 0 │
00:09:55 #16523 [verbose] > │ let v6 : int32 = method5(v4, v5) │
00:09:55 #16524 [verbose] > │ let v7 : string = $"%A{v6}" │
00:09:55 #16525 [verbose] > │ System.Console.WriteLine v7 │
00:09:55 #16526 [verbose] > │ let v8 : bool = v6 = 10 │
00:09:55 #16527 [verbose] > │ let v10 : bool = │
00:09:55 #16528 [verbose] > │ if v8 then │
00:09:55 #16529 [verbose] > │ true │
00:09:55 #16530 [verbose] > │ else │
00:09:55 #16531 [verbose] > │ method6(v8) │
00:09:55 #16532 [verbose] > │ let v11 : string = $"__expect / actual: %A{v6} / expected: %A{10}" │
00:09:55 #16533 [verbose] > │ let v12 : bool = v10 = false │
00:09:55 #16534 [verbose] > │ if v12 then │
00:09:55 #16535 [verbose] > │ failwith<unit> v11 │
00:09:55 #16536 [verbose] > │ method0() │
00:09:55 #16537 [verbose] > │ │
00:09:55 #16538 [verbose] > │ print_and_return / x: 0 │
00:09:55 #16539 [verbose] > │ print_and_return / x: 1 │
00:09:55 #16540 [verbose] > │ print_and_return / x: 1 │
00:09:55 #16541 [verbose] > │ print_and_return / x: 2 │
00:09:55 #16542 [verbose] > │ print_and_return / x: 1 │
00:09:55 #16543 [verbose] > │ print_and_return / x: 2 │
00:09:55 #16544 [verbose] > │ print_and_return / x: 3 │
00:09:55 #16545 [verbose] > │ print_and_return / x: 1 │
00:09:55 #16546 [verbose] > │ print_and_return / x: 2 │
00:09:55 #16547 [verbose] > │ print_and_return / x: 3 │
00:09:55 #16548 [verbose] > │ print_and_return / x: 4 │
00:09:55 #16549 [verbose] > │ print_and_return / x: 1 │
00:09:55 #16550 [verbose] > │ print_and_return / x: 2 │
00:09:55 #16551 [verbose] > │ print_and_return / x: 3 │
00:09:55 #16552 [verbose] > │ print_and_return / x: 4 │
00:09:55 #16553 [verbose] > │ print_and_return / x: 5 │
00:09:55 #16554 [verbose] > │ 10 │
00:09:55 #16555 [verbose] > │ │
00:09:55 #16556 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:55 #16557 [verbose] >
00:09:55 #16558 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:55 #16559 [verbose] > // // test
00:09:55 #16560 [verbose] >
00:09:55 #16561 [verbose] > stream.new_infinite_stream_ print_and_return
00:09:55 #16562 [verbose] > |> stream.memoize
00:09:55 #16563 [verbose] > |> fun list =>
00:09:55 #16564 [verbose] > inl list = list ()
00:09:55 #16565 [verbose] > fun n =>
00:09:55 #16566 [verbose] > list |> stream.try_item n
00:09:55 #16567 [verbose] > |> take_while_ (fun n (_ : i32) => n < 5i32)
00:09:55 #16568 [verbose] > |> listm'.sum
00:09:55 #16569 [verbose] > |> _assert_eq 10
00:09:55 #16570 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\69b1402b68e84bc9fb791b6fb236425a74a1669c8a085186c8e423710380900b\main.spi
00:09:55 #16571 [verbose] >
00:09:55 #16572 [verbose] > ╭─[ 392.42ms - stdout ]────────────────────────────────────────────────────────╮
00:09:55 #16573 [verbose] > │ type UH0 = │
00:09:55 #16574 [verbose] > │ | UH0_0 of int32 * (unit -> UH0) │
00:09:55 #16575 [verbose] > │ | UH0_1 │
00:09:55 #16576 [verbose] > │ and [<Struct>] US0 = │
00:09:55 #16577 [verbose] > │ | US0_0 of f0_0 : (unit -> UH0) │
00:09:55 #16578 [verbose] > │ | US0_1 of f1_0 : UH0 │
00:09:55 #16579 [verbose] > │ and Mut0 = {mutable l0 : US0} │
00:09:55 #16580 [verbose] > │ and UH1 = │
00:09:55 #16581 [verbose] > │ | UH1_0 │
00:09:55 #16582 [verbose] > │ | UH1_1 of int32 * UH1 │
00:09:55 #16583 [verbose] > │ and [<Struct>] US1 = │
00:09:55 #16584 [verbose] > │ | US1_0 of f0_0 : int32 │
00:09:55 #16585 [verbose] > │ | US1_1 │
00:09:55 #16586 [verbose] > │ let rec closure0 (v0 : int32) () : UH0 = │
00:09:55 #16587 [verbose] > │ let v1 : int32 = v0 + 1 │
00:09:55 #16588 [verbose] > │ method1(v1) │
00:09:55 #16589 [verbose] > │ and method1 (v0 : int32) : UH0 = │
00:09:55 #16590 [verbose] > │ printfn $"print_and_return / x: {v0}" │
00:09:55 #16591 [verbose] > │ let v1 : (unit -> UH0) = closure0(v0) │
00:09:55 #16592 [verbose] > │ UH0_0(v0, v1) │
00:09:55 #16593 [verbose] > │ and closure1 (v0 : UH0) () : UH0 = │
00:09:55 #16594 [verbose] > │ v0 │
00:09:55 #16595 [verbose] > │ and closure2 (v0 : UH0, v1 : Mut0) () : UH0 = │
00:09:55 #16596 [verbose] > │ let v2 : US0 = v1.l0 │
00:09:55 #16597 [verbose] > │ match v2 with │
00:09:55 #16598 [verbose] > │ | US0_1(v3) -> (* Computed *) │
00:09:55 #16599 [verbose] > │ v3 │
00:09:55 #16600 [verbose] > │ | US0_0(v4) -> (* NotComputed *) │
00:09:55 #16601 [verbose] > │ let v5 : UH0 = v4 () │
00:09:55 #16602 [verbose] > │ let v12 : UH0 = │
00:09:55 #16603 [verbose] > │ match v5 with │
00:09:55 #16604 [verbose] > │ | UH0_0(v7, v8) -> (* StreamCons *) │
00:09:55 #16605 [verbose] > │ let v9 : (unit -> UH0) = method2(v0, v8) │
00:09:55 #16606 [verbose] > │ UH0_0(v7, v9) │
00:09:55 #16607 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:09:55 #16608 [verbose] > │ UH0_1 │
00:09:55 #16609 [verbose] > │ let v13 : US0 = US0_1(v12) │
00:09:55 #16610 [verbose] > │ v1.l0 <- v13 │
00:09:55 #16611 [verbose] > │ v12 │
00:09:55 #16612 [verbose] > │ and method2 (v0 : UH0, v1 : (unit -> UH0)) : (unit -> UH0) = │
00:09:55 #16613 [verbose] > │ let v2 : US0 = US0_0(v1) │
00:09:55 #16614 [verbose] > │ let v3 : Mut0 = {l0 = v2} : Mut0 │
00:09:55 #16615 [verbose] > │ closure2(v0, v3) │
00:09:55 #16616 [verbose] > │ and method4 (v0 : int32, v1 : UH0) : US1 = │
00:09:55 #16617 [verbose] > │ match v1 with │
00:09:55 #16618 [verbose] > │ | UH0_0(v2, v3) -> (* StreamCons *) │
00:09:55 #16619 [verbose] > │ let v4 : bool = v0 <= 0 │
00:09:55 #16620 [verbose] > │ if v4 then │
00:09:55 #16621 [verbose] > │ US1_0(v2) │
00:09:55 #16622 [verbose] > │ else │
00:09:55 #16623 [verbose] > │ let v6 : int32 = v0 - 1 │
00:09:55 #16624 [verbose] > │ let v7 : UH0 = v3 () │
00:09:55 #16625 [verbose] > │ method4(v6, v7) │
00:09:55 #16626 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:09:55 #16627 [verbose] > │ US1_1 │
00:09:55 #16628 [verbose] > │ and method5 (v0 : UH1, v1 : UH1) : UH1 = │
00:09:55 #16629 [verbose] > │ match v0 with │
00:09:55 #16630 [verbose] > │ | UH1_1(v2, v3) -> (* Cons *) │
00:09:55 #16631 [verbose] > │ let v4 : UH1 = UH1_1(v2, v1) │
00:09:55 #16632 [verbose] > │ method5(v3, v4) │
00:09:55 #16633 [verbose] > │ | UH1_0 -> (* Nil *) │
00:09:55 #16634 [verbose] > │ v1 │
00:09:55 #16635 [verbose] > │ and method3 (v0 : UH0, v1 : UH1, v2 : int32) : UH1 = │
00:09:55 #16636 [verbose] > │ let v3 : US1 = method4(v2, v0) │
00:09:55 #16637 [verbose] > │ match v3 with │
00:09:55 #16638 [verbose] > │ | US1_0(v4) -> (* Some *) │
00:09:55 #16639 [verbose] > │ let v5 : bool = v4 < 5 │
00:09:55 #16640 [verbose] > │ if v5 then │
00:09:55 #16641 [verbose] > │ let v6 : UH1 = UH1_1(v4, v1) │
00:09:55 #16642 [verbose] > │ let v7 : int32 = v2 + 1 │
00:09:55 #16643 [verbose] > │ method3(v0, v6, v7) │
00:09:55 #16644 [verbose] > │ else │
00:09:55 #16645 [verbose] > │ let v9 : UH1 = UH1_0 │
00:09:55 #16646 [verbose] > │ method5(v1, v9) │
00:09:55 #16647 [verbose] > │ | _ -> │
00:09:55 #16648 [verbose] > │ let v12 : UH1 = UH1_0 │
00:09:55 #16649 [verbose] > │ method5(v1, v12) │
00:09:55 #16650 [verbose] > │ and method6 (v0 : UH1, v1 : int32) : int32 = │
00:09:55 #16651 [verbose] > │ match v0 with │
00:09:55 #16652 [verbose] > │ | UH1_1(v2, v3) -> (* Cons *) │
00:09:55 #16653 [verbose] > │ let v4 : int32 = v1 + v2 │
00:09:55 #16654 [verbose] > │ method6(v3, v4) │
00:09:55 #16655 [verbose] > │ | UH1_0 -> (* Nil *) │
00:09:55 #16656 [verbose] > │ v1 │
00:09:55 #16657 [verbose] > │ and method7 (v0 : bool) : bool = │
00:09:55 #16658 [verbose] > │ v0 │
00:09:55 #16659 [verbose] > │ and method0 () : unit = │
00:09:55 #16660 [verbose] > │ let v0 : int32 = 0 │
00:09:55 #16661 [verbose] > │ let v1 : UH0 = method1(v0) │
00:09:55 #16662 [verbose] > │ let v2 : (unit -> UH0) = closure1(v1) │
00:09:55 #16663 [verbose] > │ let v3 : (unit -> UH0) = method2(v1, v2) │
00:09:55 #16664 [verbose] > │ let v4 : UH0 = v3 () │
00:09:55 #16665 [verbose] > │ let v5 : UH1 = UH1_0 │
00:09:55 #16666 [verbose] > │ let v6 : int32 = 0 │
00:09:55 #16667 [verbose] > │ let v7 : UH1 = method3(v4, v5, v6) │
00:09:55 #16668 [verbose] > │ let v8 : int32 = 0 │
00:09:55 #16669 [verbose] > │ let v9 : int32 = method6(v7, v8) │
00:09:55 #16670 [verbose] > │ let v10 : string = $"%A{v9}" │
00:09:55 #16671 [verbose] > │ System.Console.WriteLine v10 │
00:09:55 #16672 [verbose] > │ let v11 : bool = v9 = 10 │
00:09:55 #16673 [verbose] > │ let v13 : bool = │
00:09:55 #16674 [verbose] > │ if v11 then │
00:09:55 #16675 [verbose] > │ true │
00:09:55 #16676 [verbose] > │ else │
00:09:55 #16677 [verbose] > │ method7(v11) │
00:09:55 #16678 [verbose] > │ let v14 : string = $"__expect / actual: %A{v9} / expected: %A{10}" │
00:09:55 #16679 [verbose] > │ let v15 : bool = v13 = false │
00:09:55 #16680 [verbose] > │ if v15 then │
00:09:55 #16681 [verbose] > │ failwith<unit> v14 │
00:09:55 #16682 [verbose] > │ method0() │
00:09:55 #16683 [verbose] > │ │
00:09:55 #16684 [verbose] > │ print_and_return / x: 0 │
00:09:55 #16685 [verbose] > │ print_and_return / x: 1 │
00:09:55 #16686 [verbose] > │ print_and_return / x: 2 │
00:09:55 #16687 [verbose] > │ print_and_return / x: 3 │
00:09:55 #16688 [verbose] > │ print_and_return / x: 4 │
00:09:55 #16689 [verbose] > │ print_and_return / x: 5 │
00:09:55 #16690 [verbose] > │ 10 │
00:09:55 #16691 [verbose] > │ │
00:09:55 #16692 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:55 #16693 [verbose] >
00:09:55 #16694 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:55 #16695 [verbose] > // // test
00:09:55 #16696 [verbose] >
00:09:55 #16697 [verbose] > stream.new_finite_stream print_and_return 10i32
00:09:55 #16698 [verbose] > |> stream.memoize
00:09:55 #16699 [verbose] > |> fun list =>
00:09:55 #16700 [verbose] > inl list = list ()
00:09:55 #16701 [verbose] > fun n =>
00:09:55 #16702 [verbose] > list |> stream.try_item n
00:09:55 #16703 [verbose] > |> take_while_ (fun n (_ : i32) => n < 5)
00:09:55 #16704 [verbose] > |> listm'.sum
00:09:55 #16705 [verbose] > |> _assert_eq 10
00:09:56 #16706 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5a492d77b231ca917ef9bfb52ad76915f5d237f0591bcdb5c8a244112d599127\main.spi
00:09:56 #16707 [verbose] >
00:09:56 #16708 [verbose] > ╭─[ 427.61ms - stdout ]────────────────────────────────────────────────────────╮
00:09:56 #16709 [verbose] > │ type UH0 = │
00:09:56 #16710 [verbose] > │ | UH0_0 of int32 * (unit -> UH0) │
00:09:56 #16711 [verbose] > │ | UH0_1 │
00:09:56 #16712 [verbose] > │ and [<Struct>] US0 = │
00:09:56 #16713 [verbose] > │ | US0_0 of f0_0 : (unit -> UH0) │
00:09:56 #16714 [verbose] > │ | US0_1 of f1_0 : UH0 │
00:09:56 #16715 [verbose] > │ and Mut0 = {mutable l0 : US0} │
00:09:56 #16716 [verbose] > │ and UH1 = │
00:09:56 #16717 [verbose] > │ | UH1_0 │
00:09:56 #16718 [verbose] > │ | UH1_1 of int32 * UH1 │
00:09:56 #16719 [verbose] > │ and [<Struct>] US1 = │
00:09:56 #16720 [verbose] > │ | US1_0 of f0_0 : int32 │
00:09:56 #16721 [verbose] > │ | US1_1 │
00:09:56 #16722 [verbose] > │ let rec closure10 () () : UH0 = │
00:09:56 #16723 [verbose] > │ UH0_1 │
00:09:56 #16724 [verbose] > │ and closure9 () () : UH0 = │
00:09:56 #16725 [verbose] > │ printfn $"print_and_return / x: {9}" │
00:09:56 #16726 [verbose] > │ let v0 : (unit -> UH0) = closure10() │
00:09:56 #16727 [verbose] > │ UH0_0(9, v0) │
00:09:56 #16728 [verbose] > │ and closure8 () () : UH0 = │
00:09:56 #16729 [verbose] > │ printfn $"print_and_return / x: {8}" │
00:09:56 #16730 [verbose] > │ let v0 : (unit -> UH0) = closure9() │
00:09:56 #16731 [verbose] > │ UH0_0(8, v0) │
00:09:56 #16732 [verbose] > │ and closure7 () () : UH0 = │
00:09:56 #16733 [verbose] > │ printfn $"print_and_return / x: {7}" │
00:09:56 #16734 [verbose] > │ let v0 : (unit -> UH0) = closure8() │
00:09:56 #16735 [verbose] > │ UH0_0(7, v0) │
00:09:56 #16736 [verbose] > │ and closure6 () () : UH0 = │
00:09:56 #16737 [verbose] > │ printfn $"print_and_return / x: {6}" │
00:09:56 #16738 [verbose] > │ let v0 : (unit -> UH0) = closure7() │
00:09:56 #16739 [verbose] > │ UH0_0(6, v0) │
00:09:56 #16740 [verbose] > │ and closure5 () () : UH0 = │
00:09:56 #16741 [verbose] > │ printfn $"print_and_return / x: {5}" │
00:09:56 #16742 [verbose] > │ let v0 : (unit -> UH0) = closure6() │
00:09:56 #16743 [verbose] > │ UH0_0(5, v0) │
00:09:56 #16744 [verbose] > │ and closure4 () () : UH0 = │
00:09:56 #16745 [verbose] > │ printfn $"print_and_return / x: {4}" │
00:09:56 #16746 [verbose] > │ let v0 : (unit -> UH0) = closure5() │
00:09:56 #16747 [verbose] > │ UH0_0(4, v0) │
00:09:56 #16748 [verbose] > │ and closure3 () () : UH0 = │
00:09:56 #16749 [verbose] > │ printfn $"print_and_return / x: {3}" │
00:09:56 #16750 [verbose] > │ let v0 : (unit -> UH0) = closure4() │
00:09:56 #16751 [verbose] > │ UH0_0(3, v0) │
00:09:56 #16752 [verbose] > │ and closure2 () () : UH0 = │
00:09:56 #16753 [verbose] > │ printfn $"print_and_return / x: {2}" │
00:09:56 #16754 [verbose] > │ let v0 : (unit -> UH0) = closure3() │
00:09:56 #16755 [verbose] > │ UH0_0(2, v0) │
00:09:56 #16756 [verbose] > │ and closure1 () () : UH0 = │
00:09:56 #16757 [verbose] > │ printfn $"print_and_return / x: {1}" │
00:09:56 #16758 [verbose] > │ let v0 : (unit -> UH0) = closure2() │
00:09:56 #16759 [verbose] > │ UH0_0(1, v0) │
00:09:56 #16760 [verbose] > │ and closure0 () () : UH0 = │
00:09:56 #16761 [verbose] > │ let v0 : (unit -> UH0) = closure1() │
00:09:56 #16762 [verbose] > │ UH0_0(0, v0) │
00:09:56 #16763 [verbose] > │ and closure11 (v0 : Mut0) () : UH0 = │
00:09:56 #16764 [verbose] > │ let v1 : US0 = v0.l0 │
00:09:56 #16765 [verbose] > │ match v1 with │
00:09:56 #16766 [verbose] > │ | US0_1(v2) -> (* Computed *) │
00:09:56 #16767 [verbose] > │ v2 │
00:09:56 #16768 [verbose] > │ | US0_0(v3) -> (* NotComputed *) │
00:09:56 #16769 [verbose] > │ let v4 : UH0 = v3 () │
00:09:56 #16770 [verbose] > │ let v13 : UH0 = │
00:09:56 #16771 [verbose] > │ match v4 with │
00:09:56 #16772 [verbose] > │ | UH0_0(v6, v7) -> (* StreamCons *) │
00:09:56 #16773 [verbose] > │ let v8 : US0 = US0_0(v7) │
00:09:56 #16774 [verbose] > │ let v9 : Mut0 = {l0 = v8} : Mut0 │
00:09:56 #16775 [verbose] > │ let v10 : (unit -> UH0) = closure11(v9) │
00:09:56 #16776 [verbose] > │ UH0_0(v6, v10) │
00:09:56 #16777 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:09:56 #16778 [verbose] > │ UH0_1 │
00:09:56 #16779 [verbose] > │ let v14 : US0 = US0_1(v13) │
00:09:56 #16780 [verbose] > │ v0.l0 <- v14 │
00:09:56 #16781 [verbose] > │ v13 │
00:09:56 #16782 [verbose] > │ and method2 (v0 : int32, v1 : UH0) : US1 = │
00:09:56 #16783 [verbose] > │ match v1 with │
00:09:56 #16784 [verbose] > │ | UH0_0(v2, v3) -> (* StreamCons *) │
00:09:56 #16785 [verbose] > │ let v4 : bool = v0 <= 0 │
00:09:56 #16786 [verbose] > │ if v4 then │
00:09:56 #16787 [verbose] > │ US1_0(v2) │
00:09:56 #16788 [verbose] > │ else │
00:09:56 #16789 [verbose] > │ let v6 : int32 = v0 - 1 │
00:09:56 #16790 [verbose] > │ let v7 : UH0 = v3 () │
00:09:56 #16791 [verbose] > │ method2(v6, v7) │
00:09:56 #16792 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:09:56 #16793 [verbose] > │ US1_1 │
00:09:56 #16794 [verbose] > │ and method3 (v0 : UH1, v1 : UH1) : UH1 = │
00:09:56 #16795 [verbose] > │ match v0 with │
00:09:56 #16796 [verbose] > │ | UH1_1(v2, v3) -> (* Cons *) │
00:09:56 #16797 [verbose] > │ let v4 : UH1 = UH1_1(v2, v1) │
00:09:56 #16798 [verbose] > │ method3(v3, v4) │
00:09:56 #16799 [verbose] > │ | UH1_0 -> (* Nil *) │
00:09:56 #16800 [verbose] > │ v1 │
00:09:56 #16801 [verbose] > │ and method1 (v0 : UH0, v1 : UH1, v2 : int32) : UH1 = │
00:09:56 #16802 [verbose] > │ let v3 : US1 = method2(v2, v0) │
00:09:56 #16803 [verbose] > │ match v3 with │
00:09:56 #16804 [verbose] > │ | US1_0(v4) -> (* Some *) │
00:09:56 #16805 [verbose] > │ let v5 : bool = v4 < 5 │
00:09:56 #16806 [verbose] > │ if v5 then │
00:09:56 #16807 [verbose] > │ let v6 : UH1 = UH1_1(v4, v1) │
00:09:56 #16808 [verbose] > │ let v7 : int32 = v2 + 1 │
00:09:56 #16809 [verbose] > │ method1(v0, v6, v7) │
00:09:56 #16810 [verbose] > │ else │
00:09:56 #16811 [verbose] > │ let v9 : UH1 = UH1_0 │
00:09:56 #16812 [verbose] > │ method3(v1, v9) │
00:09:56 #16813 [verbose] > │ | _ -> │
00:09:56 #16814 [verbose] > │ let v12 : UH1 = UH1_0 │
00:09:56 #16815 [verbose] > │ method3(v1, v12) │
00:09:56 #16816 [verbose] > │ and method4 (v0 : UH1, v1 : int32) : int32 = │
00:09:56 #16817 [verbose] > │ match v0 with │
00:09:56 #16818 [verbose] > │ | UH1_1(v2, v3) -> (* Cons *) │
00:09:56 #16819 [verbose] > │ let v4 : int32 = v1 + v2 │
00:09:56 #16820 [verbose] > │ method4(v3, v4) │
00:09:56 #16821 [verbose] > │ | UH1_0 -> (* Nil *) │
00:09:56 #16822 [verbose] > │ v1 │
00:09:56 #16823 [verbose] > │ and method5 (v0 : bool) : bool = │
00:09:56 #16824 [verbose] > │ v0 │
00:09:56 #16825 [verbose] > │ and method0 () : unit = │
00:09:56 #16826 [verbose] > │ printfn $"print_and_return / x: {0}" │
00:09:56 #16827 [verbose] > │ let v0 : (unit -> UH0) = closure0() │
00:09:56 #16828 [verbose] > │ let v1 : US0 = US0_0(v0) │
00:09:56 #16829 [verbose] > │ let v2 : Mut0 = {l0 = v1} : Mut0 │
00:09:56 #16830 [verbose] > │ let v3 : US0 = v2.l0 │
00:09:56 #16831 [verbose] > │ let v18 : UH0 = │
00:09:56 #16832 [verbose] > │ match v3 with │
00:09:56 #16833 [verbose] > │ | US0_1(v4) -> (* Computed *) │
00:09:56 #16834 [verbose] > │ v4 │
00:09:56 #16835 [verbose] > │ | US0_0(v5) -> (* NotComputed *) │
00:09:56 #16836 [verbose] > │ let v6 : UH0 = v5 () │
00:09:56 #16837 [verbose] > │ let v15 : UH0 = │
00:09:56 #16838 [verbose] > │ match v6 with │
00:09:56 #16839 [verbose] > │ | UH0_0(v8, v9) -> (* StreamCons *) │
00:09:56 #16840 [verbose] > │ let v10 : US0 = US0_0(v9) │
00:09:56 #16841 [verbose] > │ let v11 : Mut0 = {l0 = v10} : Mut0 │
00:09:56 #16842 [verbose] > │ let v12 : (unit -> UH0) = closure11(v11) │
00:09:56 #16843 [verbose] > │ UH0_0(v8, v12) │
00:09:56 #16844 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:09:56 #16845 [verbose] > │ UH0_1 │
00:09:56 #16846 [verbose] > │ let v16 : US0 = US0_1(v15) │
00:09:56 #16847 [verbose] > │ v2.l0 <- v16 │
00:09:56 #16848 [verbose] > │ v15 │
00:09:56 #16849 [verbose] > │ let v19 : UH1 = UH1_0 │
00:09:56 #16850 [verbose] > │ let v20 : int32 = 0 │
00:09:56 #16851 [verbose] > │ let v21 : UH1 = method1(v18, v19, v20) │
00:09:56 #16852 [verbose] > │ let v22 : int32 = 0 │
00:09:56 #16853 [verbose] > │ let v23 : int32 = method4(v21, v22) │
00:09:56 #16854 [verbose] > │ let v24 : string = $"%A{v23}" │
00:09:56 #16855 [verbose] > │ System.Console.WriteLine v24 │
00:09:56 #16856 [verbose] > │ let v25 : bool = v23 = 10 │
00:09:56 #16857 [verbose] > │ let v27 : bool = │
00:09:56 #16858 [verbose] > │ if v25 then │
00:09:56 #16859 [verbose] > │ true │
00:09:56 #16860 [verbose] > │ else │
00:09:56 #16861 [verbose] > │ method5(v25) │
00:09:56 #16862 [verbose] > │ let v28 : string = $"__expect / actual: %A{v23} / expected: %A{10}" │
00:09:56 #16863 [verbose] > │ let v29 : bool = v27 = false │
00:09:56 #16864 [verbose] > │ if v29 then │
00:09:56 #16865 [verbose] > │ failwith<unit> v28 │
00:09:56 #16866 [verbose] > │ method0() │
00:09:56 #16867 [verbose] > │ │
00:09:56 #16868 [verbose] > │ print_and_return / x: 0 │
00:09:56 #16869 [verbose] > │ print_and_return / x: 1 │
00:09:56 #16870 [verbose] > │ print_and_return / x: 2 │
00:09:56 #16871 [verbose] > │ print_and_return / x: 3 │
00:09:56 #16872 [verbose] > │ print_and_return / x: 4 │
00:09:56 #16873 [verbose] > │ print_and_return / x: 5 │
00:09:56 #16874 [verbose] > │ 10 │
00:09:56 #16875 [verbose] > │ │
00:09:56 #16876 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:56 #16877 [verbose] >
00:09:56 #16878 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:56 #16879 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:56 #16880 [verbose] > │ ## memoize │
00:09:56 #16881 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:56 #16882 [verbose] >
00:09:56 #16883 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:56 #16884 [verbose] > inl memoize seq =
00:09:56 #16885 [verbose] > inl state = mut [[]]
00:09:56 #16886 [verbose] > fun n =>
00:09:56 #16887 [verbose] > match *state |> listm'.try_find (fun (n', _) => n' = n) with
00:09:56 #16888 [verbose] > | Some (_, v) => v
00:09:56 #16889 [verbose] > | None =>
00:09:56 #16890 [verbose] > inl new_state = seq n
00:09:56 #16891 [verbose] > state <- (n, new_state) :: *state
00:09:56 #16892 [verbose] > new_state
00:09:56 #16893 [verbose] >
00:09:56 #16894 [verbose] > inl memoize_ seq =
00:09:56 #16895 [verbose] > inl state = mut [[]]
00:09:56 #16896 [verbose] > fun n =>
00:09:56 #16897 [verbose] > match *state |> listm'.try_find_ (fun (n', _) => n' = n) with
00:09:56 #16898 [verbose] > | Some (_, v) => v
00:09:56 #16899 [verbose] > | None =>
00:09:56 #16900 [verbose] > inl new_state = seq n
00:09:56 #16901 [verbose] > state <- (n, new_state) :: *state
00:09:56 #16902 [verbose] > new_state
00:09:56 #16903 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b609324b10b54aec5d180e7f31364cb3142ce38e5db52636fa112ae87af95bf0\main.spi
00:09:56 #16904 [verbose] >
00:09:56 #16905 [verbose] > ╭─[ 260.19ms - stdout ]────────────────────────────────────────────────────────╮
00:09:56 #16906 [verbose] > │ () │
00:09:56 #16907 [verbose] > │ │
00:09:56 #16908 [verbose] > │ │
00:09:56 #16909 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:56 #16910 [verbose] >
00:09:56 #16911 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:56 #16912 [verbose] > // // test
00:09:56 #16913 [verbose] >
00:09:56 #16914 [verbose] > inl seq =
00:09:56 #16915 [verbose] > fun n =>
00:09:56 #16916 [verbose] > n |> print_and_return |> Some
00:09:56 #16917 [verbose] > |> memoize_
00:09:56 #16918 [verbose] >
00:09:56 #16919 [verbose] > seq
00:09:56 #16920 [verbose] > |> take_while_ (fun n (_ : i32) => n < 5)
00:09:56 #16921 [verbose] > |> listm'.sum
00:09:56 #16922 [verbose] > |> _assert_eq 10
00:09:56 #16923 [verbose] >
00:09:56 #16924 [verbose] > seq
00:09:56 #16925 [verbose] > |> take_while_ (fun n _ => n < 5)
00:09:56 #16926 [verbose] > |> listm'.sum
00:09:56 #16927 [verbose] > |> _assert_eq 10
00:09:56 #16928 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2d54beb1ad7ca9173b988ea8fad2a24c2d3016ac85207179dc3db5ae3bbda7a1\main.spi
00:09:57 #16929 [verbose] >
00:09:57 #16930 [verbose] > ╭─[ 705.92ms - stdout ]────────────────────────────────────────────────────────╮
00:09:57 #16931 [verbose] > │ type [<Struct>] US0 = │
00:09:57 #16932 [verbose] > │ | US0_0 of f0_0 : int32 │
00:09:57 #16933 [verbose] > │ | US0_1 │
00:09:57 #16934 [verbose] > │ and UH0 = │
00:09:57 #16935 [verbose] > │ | UH0_0 │
00:09:57 #16936 [verbose] > │ | UH0_1 of int32 * US0 * UH0 │
00:09:57 #16937 [verbose] > │ and Mut0 = {mutable l0 : UH0} │
00:09:57 #16938 [verbose] > │ and UH1 = │
00:09:57 #16939 [verbose] > │ | UH1_0 │
00:09:57 #16940 [verbose] > │ | UH1_1 of int32 * UH1 │
00:09:57 #16941 [verbose] > │ and [<Struct>] US1 = │
00:09:57 #16942 [verbose] > │ | US1_0 of f0_0 : int32 * f0_1 : US0 │
00:09:57 #16943 [verbose] > │ | US1_1 │
00:09:57 #16944 [verbose] > │ let rec method2 (v0 : int32, v1 : UH0) : US1 = │
00:09:57 #16945 [verbose] > │ match v1 with │
00:09:57 #16946 [verbose] > │ | UH0_1(v3, v4, v5) -> (* Cons *) │
00:09:57 #16947 [verbose] > │ let v6 : bool = v3 = v0 │
00:09:57 #16948 [verbose] > │ if v6 then │
00:09:57 #16949 [verbose] > │ US1_0(v3, v4) │
00:09:57 #16950 [verbose] > │ else │
00:09:57 #16951 [verbose] > │ method2(v0, v5) │
00:09:57 #16952 [verbose] > │ | UH0_0 -> (* Nil *) │
00:09:57 #16953 [verbose] > │ US1_1 │
00:09:57 #16954 [verbose] > │ and method3 (v0 : UH1, v1 : UH1) : UH1 = │
00:09:57 #16955 [verbose] > │ match v0 with │
00:09:57 #16956 [verbose] > │ | UH1_1(v2, v3) -> (* Cons *) │
00:09:57 #16957 [verbose] > │ let v4 : UH1 = UH1_1(v2, v1) │
00:09:57 #16958 [verbose] > │ method3(v3, v4) │
00:09:57 #16959 [verbose] > │ | UH1_0 -> (* Nil *) │
00:09:57 #16960 [verbose] > │ v1 │
00:09:57 #16961 [verbose] > │ and method1 (v0 : Mut0, v1 : UH1, v2 : int32) : UH1 = │
00:09:57 #16962 [verbose] > │ let v3 : UH0 = v0.l0 │
00:09:57 #16963 [verbose] > │ let v4 : US1 = method2(v2, v3) │
00:09:57 #16964 [verbose] > │ let v12 : US0 = │
00:09:57 #16965 [verbose] > │ match v4 with │
00:09:57 #16966 [verbose] > │ | US1_1 -> (* None *) │
00:09:57 #16967 [verbose] > │ printfn $"print_and_return / x: {v2}" │
00:09:57 #16968 [verbose] > │ let v7 : UH0 = v0.l0 │
00:09:57 #16969 [verbose] > │ let v8 : US0 = US0_0(v2) │
00:09:57 #16970 [verbose] > │ let v9 : UH0 = UH0_1(v2, v8, v7) │
00:09:57 #16971 [verbose] > │ v0.l0 <- v9 │
00:09:57 #16972 [verbose] > │ US0_0(v2) │
00:09:57 #16973 [verbose] > │ | US1_0(v5, v6) -> (* Some *) │
00:09:57 #16974 [verbose] > │ v6 │
00:09:57 #16975 [verbose] > │ match v12 with │
00:09:57 #16976 [verbose] > │ | US0_0(v13) -> (* Some *) │
00:09:57 #16977 [verbose] > │ let v14 : bool = v13 < 5 │
00:09:57 #16978 [verbose] > │ if v14 then │
00:09:57 #16979 [verbose] > │ let v15 : UH1 = UH1_1(v13, v1) │
00:09:57 #16980 [verbose] > │ let v16 : int32 = v2 + 1 │
00:09:57 #16981 [verbose] > │ method1(v0, v15, v16) │
00:09:57 #16982 [verbose] > │ else │
00:09:57 #16983 [verbose] > │ let v18 : UH1 = UH1_0 │
00:09:57 #16984 [verbose] > │ method3(v1, v18) │
00:09:57 #16985 [verbose] > │ | _ -> │
00:09:57 #16986 [verbose] > │ let v21 : UH1 = UH1_0 │
00:09:57 #16987 [verbose] > │ method3(v1, v21) │
00:09:57 #16988 [verbose] > │ and method4 (v0 : UH1, v1 : int32) : int32 = │
00:09:57 #16989 [verbose] > │ match v0 with │
00:09:57 #16990 [verbose] > │ | UH1_1(v2, v3) -> (* Cons *) │
00:09:57 #16991 [verbose] > │ let v4 : int32 = v1 + v2 │
00:09:57 #16992 [verbose] > │ method4(v3, v4) │
00:09:57 #16993 [verbose] > │ | UH1_0 -> (* Nil *) │
00:09:57 #16994 [verbose] > │ v1 │
00:09:57 #16995 [verbose] > │ and method5 (v0 : bool) : bool = │
00:09:57 #16996 [verbose] > │ v0 │
00:09:57 #16997 [verbose] > │ and method6 (v0 : Mut0, v1 : UH1, v2 : int32) : UH1 = │
00:09:57 #16998 [verbose] > │ let v3 : UH0 = v0.l0 │
00:09:57 #16999 [verbose] > │ let v4 : US1 = method2(v2, v3) │
00:09:57 #17000 [verbose] > │ let v12 : US0 = │
00:09:57 #17001 [verbose] > │ match v4 with │
00:09:57 #17002 [verbose] > │ | US1_1 -> (* None *) │
00:09:57 #17003 [verbose] > │ printfn $"print_and_return / x: {v2}" │
00:09:57 #17004 [verbose] > │ let v7 : UH0 = v0.l0 │
00:09:57 #17005 [verbose] > │ let v8 : US0 = US0_0(v2) │
00:09:57 #17006 [verbose] > │ let v9 : UH0 = UH0_1(v2, v8, v7) │
00:09:57 #17007 [verbose] > │ v0.l0 <- v9 │
00:09:57 #17008 [verbose] > │ US0_0(v2) │
00:09:57 #17009 [verbose] > │ | US1_0(v5, v6) -> (* Some *) │
00:09:57 #17010 [verbose] > │ v6 │
00:09:57 #17011 [verbose] > │ match v12 with │
00:09:57 #17012 [verbose] > │ | US0_0(v13) -> (* Some *) │
00:09:57 #17013 [verbose] > │ let v14 : bool = v13 < 5 │
00:09:57 #17014 [verbose] > │ if v14 then │
00:09:57 #17015 [verbose] > │ let v15 : UH1 = UH1_1(v13, v1) │
00:09:57 #17016 [verbose] > │ let v16 : int32 = v2 + 1 │
00:09:57 #17017 [verbose] > │ method6(v0, v15, v16) │
00:09:57 #17018 [verbose] > │ else │
00:09:57 #17019 [verbose] > │ let v18 : UH1 = UH1_0 │
00:09:57 #17020 [verbose] > │ method3(v1, v18) │
00:09:57 #17021 [verbose] > │ | _ -> │
00:09:57 #17022 [verbose] > │ let v21 : UH1 = UH1_0 │
00:09:57 #17023 [verbose] > │ method3(v1, v21) │
00:09:57 #17024 [verbose] > │ and method0 () : unit = │
00:09:57 #17025 [verbose] > │ let v0 : UH0 = UH0_0 │
00:09:57 #17026 [verbose] > │ let v1 : Mut0 = {l0 = v0} : Mut0 │
00:09:57 #17027 [verbose] > │ let v2 : UH1 = UH1_0 │
00:09:57 #17028 [verbose] > │ let v3 : int32 = 0 │
00:09:57 #17029 [verbose] > │ let v4 : UH1 = method1(v1, v2, v3) │
00:09:57 #17030 [verbose] > │ let v5 : int32 = 0 │
00:09:57 #17031 [verbose] > │ let v6 : int32 = method4(v4, v5) │
00:09:57 #17032 [verbose] > │ let v7 : string = $"%A{v6}" │
00:09:57 #17033 [verbose] > │ System.Console.WriteLine v7 │
00:09:57 #17034 [verbose] > │ let v8 : bool = v6 = 10 │
00:09:57 #17035 [verbose] > │ let v10 : bool = │
00:09:57 #17036 [verbose] > │ if v8 then │
00:09:57 #17037 [verbose] > │ true │
00:09:57 #17038 [verbose] > │ else │
00:09:57 #17039 [verbose] > │ method5(v8) │
00:09:57 #17040 [verbose] > │ let v11 : string = $"__expect / actual: %A{v6} / expected: %A{10}" │
00:09:57 #17041 [verbose] > │ let v12 : bool = v10 = false │
00:09:57 #17042 [verbose] > │ if v12 then │
00:09:57 #17043 [verbose] > │ failwith<unit> v11 │
00:09:57 #17044 [verbose] > │ let v13 : UH1 = UH1_0 │
00:09:57 #17045 [verbose] > │ let v14 : int32 = 0 │
00:09:57 #17046 [verbose] > │ let v15 : UH1 = method6(v1, v13, v14) │
00:09:57 #17047 [verbose] > │ let v16 : int32 = 0 │
00:09:57 #17048 [verbose] > │ let v17 : int32 = method4(v15, v16) │
00:09:57 #17049 [verbose] > │ let v18 : string = $"%A{v17}" │
00:09:57 #17050 [verbose] > │ System.Console.WriteLine v18 │
00:09:57 #17051 [verbose] > │ let v19 : bool = v17 = 10 │
00:09:57 #17052 [verbose] > │ let v21 : bool = │
00:09:57 #17053 [verbose] > │ if v19 then │
00:09:57 #17054 [verbose] > │ true │
00:09:57 #17055 [verbose] > │ else │
00:09:57 #17056 [verbose] > │ method5(v19) │
00:09:57 #17057 [verbose] > │ let v22 : string = $"__expect / actual: %A{v17} / expected: %A{10}" │
00:09:57 #17058 [verbose] > │ let v23 : bool = v21 = false │
00:09:57 #17059 [verbose] > │ if v23 then │
00:09:57 #17060 [verbose] > │ failwith<unit> v22 │
00:09:57 #17061 [verbose] > │ method0() │
00:09:57 #17062 [verbose] > │ │
00:09:57 #17063 [verbose] > │ print_and_return / x: 0 │
00:09:57 #17064 [verbose] > │ print_and_return / x: 1 │
00:09:57 #17065 [verbose] > │ print_and_return / x: 2 │
00:09:57 #17066 [verbose] > │ print_and_return / x: 3 │
00:09:57 #17067 [verbose] > │ print_and_return / x: 4 │
00:09:57 #17068 [verbose] > │ print_and_return / x: 5 │
00:09:57 #17069 [verbose] > │ 10 │
00:09:57 #17070 [verbose] > │ 10 │
00:09:57 #17071 [verbose] > │ │
00:09:57 #17072 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:57 #17073 [verbose] >
00:09:57 #17074 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:57 #17075 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:57 #17076 [verbose] > │ ## iterate │
00:09:57 #17077 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:57 #17078 [verbose] >
00:09:57 #17079 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:57 #17080 [verbose] > inl iterate f x0 num_steps =
00:09:57 #17081 [verbose] > inl rec loop x n =
00:09:57 #17082 [verbose] > if n <= 0
00:09:57 #17083 [verbose] > then x
00:09:57 #17084 [verbose] > else loop (f x) (n - 1)
00:09:57 #17085 [verbose] > loop x0 num_steps
00:09:57 #17086 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\679f011911bb64849b6a6bbf5e63853dfee508e78775ac5d3845ecc786777936\main.spi
00:09:57 #17087 [verbose] >
00:09:57 #17088 [verbose] > ╭─[ 244.67ms - stdout ]────────────────────────────────────────────────────────╮
00:09:57 #17089 [verbose] > │ () │
00:09:57 #17090 [verbose] > │ │
00:09:57 #17091 [verbose] > │ │
00:09:57 #17092 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:57 #17093 [verbose] >
00:09:57 #17094 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:57 #17095 [verbose] > // // test
00:09:57 #17096 [verbose] >
00:09:57 #17097 [verbose] > 10i32 |> iterate ((*) 2) 1i32
00:09:57 #17098 [verbose] > |> _assert_eq 1024
00:09:57 #17099 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\86a2f82573f422503fdc0cd30bce5b77e2b97137f29acd7e335241f8be38bafd\main.spi
00:09:57 #17100 [verbose] >
00:09:57 #17101 [verbose] > ╭─[ 260.46ms - stdout ]────────────────────────────────────────────────────────╮
00:09:57 #17102 [verbose] > │ let rec method0 () : unit = │
00:09:57 #17103 [verbose] > │ let v0 : string = $"%A{1024}" │
00:09:57 #17104 [verbose] > │ System.Console.WriteLine v0 │
00:09:57 #17105 [verbose] > │ let v1 : string = $"__expect / actual: %A{1024} / expected: %A{1024}" │
00:09:57 #17106 [verbose] > │ () │
00:09:57 #17107 [verbose] > │ method0() │
00:09:57 #17108 [verbose] > │ │
00:09:57 #17109 [verbose] > │ 1024 │
00:09:57 #17110 [verbose] > │ │
00:09:57 #17111 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:57 #17112 [verbose] >
00:09:57 #17113 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:57 #17114 [verbose] > inl iterate_ f x0 num_steps =
00:09:57 #17115 [verbose] > let rec loop x n =
00:09:57 #17116 [verbose] > if n <= 0
00:09:57 #17117 [verbose] > then x
00:09:57 #17118 [verbose] > else loop (f x) (n - 1)
00:09:57 #17119 [verbose] > loop x0 num_steps
00:09:58 #17120 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\053285a34ed9bb8ca81f4c3c05c7aaad1adde58da3a1faaedf077ec2629cd9df\main.spi
00:09:58 #17121 [verbose] >
00:09:58 #17122 [verbose] > ╭─[ 227.57ms - stdout ]────────────────────────────────────────────────────────╮
00:09:58 #17123 [verbose] > │ () │
00:09:58 #17124 [verbose] > │ │
00:09:58 #17125 [verbose] > │ │
00:09:58 #17126 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:58 #17127 [verbose] >
00:09:58 #17128 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:58 #17129 [verbose] > // // test
00:09:58 #17130 [verbose] >
00:09:58 #17131 [verbose] > 10i32 |> iterate_ ((*) 2) 1i32
00:09:58 #17132 [verbose] > |> _assert_eq 1024
00:09:58 #17133 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e9544f79f995dc3fad435202c285f831a7db4eb57033be7a536c3c228ec25378\main.spi
00:09:58 #17134 [verbose] >
00:09:58 #17135 [verbose] > ╭─[ 264.31ms - stdout ]────────────────────────────────────────────────────────╮
00:09:58 #17136 [verbose] > │ let rec method1 (v0 : int32, v1 : int32) : int32 = │
00:09:58 #17137 [verbose] > │ let v2 : bool = v1 <= 0 │
00:09:58 #17138 [verbose] > │ if v2 then │
00:09:58 #17139 [verbose] > │ v0 │
00:09:58 #17140 [verbose] > │ else │
00:09:58 #17141 [verbose] > │ let v3 : int32 = 2 * v0 │
00:09:58 #17142 [verbose] > │ let v4 : int32 = v1 - 1 │
00:09:58 #17143 [verbose] > │ method1(v3, v4) │
00:09:58 #17144 [verbose] > │ and method2 (v0 : bool) : bool = │
00:09:58 #17145 [verbose] > │ v0 │
00:09:58 #17146 [verbose] > │ and method0 () : unit = │
00:09:58 #17147 [verbose] > │ let v0 : int32 = 1 │
00:09:58 #17148 [verbose] > │ let v1 : int32 = 10 │
00:09:58 #17149 [verbose] > │ let v2 : int32 = method1(v0, v1) │
00:09:58 #17150 [verbose] > │ let v3 : string = $"%A{v2}" │
00:09:58 #17151 [verbose] > │ System.Console.WriteLine v3 │
00:09:58 #17152 [verbose] > │ let v4 : bool = v2 = 1024 │
00:09:58 #17153 [verbose] > │ let v6 : bool = │
00:09:58 #17154 [verbose] > │ if v4 then │
00:09:58 #17155 [verbose] > │ true │
00:09:58 #17156 [verbose] > │ else │
00:09:58 #17157 [verbose] > │ method2(v4) │
00:09:58 #17158 [verbose] > │ let v7 : string = $"__expect / actual: %A{v2} / expected: %A{1024}" │
00:09:58 #17159 [verbose] > │ let v8 : bool = v6 = false │
00:09:58 #17160 [verbose] > │ if v8 then │
00:09:58 #17161 [verbose] > │ failwith<unit> v7 │
00:09:58 #17162 [verbose] > │ method0() │
00:09:58 #17163 [verbose] > │ │
00:09:58 #17164 [verbose] > │ 1024 │
00:09:58 #17165 [verbose] > │ │
00:09:58 #17166 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:58 #17167 [verbose] >
00:09:58 #17168 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:58 #17169 [verbose] > inl iterate' f x0 num_steps =
00:09:58 #17170 [verbose] > listm.init num_steps id
00:09:58 #17171 [verbose] > |> listm.fold (fun x _ => f x) x0
00:09:58 #17172 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b4420a50bf870f423e71bfcffe190710ed5a1b994f5b1cc6e7ad8b15150e8379\main.spi
00:09:58 #17173 [verbose] >
00:09:58 #17174 [verbose] > ╭─[ 241.74ms - stdout ]────────────────────────────────────────────────────────╮
00:09:58 #17175 [verbose] > │ () │
00:09:58 #17176 [verbose] > │ │
00:09:58 #17177 [verbose] > │ │
00:09:58 #17178 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:58 #17179 [verbose] >
00:09:58 #17180 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:58 #17181 [verbose] > // // test
00:09:58 #17182 [verbose] >
00:09:58 #17183 [verbose] > 10i32 |> iterate' ((*) 2) 1i32
00:09:58 #17184 [verbose] > |> _assert_eq 1024
00:09:58 #17185 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0b70c3477107ce51bd74e612c73947798322eb3d2d291095f7c17480d10c531c\main.spi
00:09:58 #17186 [verbose] >
00:09:58 #17187 [verbose] > ╭─[ 257.74ms - stdout ]────────────────────────────────────────────────────────╮
00:09:58 #17188 [verbose] > │ let rec method0 () : unit = │
00:09:58 #17189 [verbose] > │ let v0 : string = $"%A{1024}" │
00:09:58 #17190 [verbose] > │ System.Console.WriteLine v0 │
00:09:58 #17191 [verbose] > │ let v1 : string = $"__expect / actual: %A{1024} / expected: %A{1024}" │
00:09:58 #17192 [verbose] > │ () │
00:09:58 #17193 [verbose] > │ method0() │
00:09:58 #17194 [verbose] > │ │
00:09:58 #17195 [verbose] > │ 1024 │
00:09:58 #17196 [verbose] > │ │
00:09:58 #17197 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:58 #17198 [verbose] >
00:09:58 #17199 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:09:58 #17200 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:09:58 #17201 [verbose] > │ ## find_last │
00:09:58 #17202 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:09:58 #17203 [verbose] >
00:09:58 #17204 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:09:58 #17205 [verbose] > inl find_last forall item result. fold_fn fn target : option result =
00:09:58 #17206 [verbose] > fold_fn (fun (item : item) (result : option result) =>
00:09:58 #17207 [verbose] > match result with
00:09:58 #17208 [verbose] > | None => fn item
00:09:58 #17209 [verbose] > | result => result
00:09:58 #17210 [verbose] > ) target (None : option result)
00:09:58 #17211 [verbose] >
00:09:58 #17212 [verbose] > inl array_find_last forall item result. (fn : item -> option result) (target : a
00:09:58 #17213 [verbose] > i32 item) : option result =
00:09:58 #17214 [verbose] > find_last am.foldBack fn target
00:09:58 #17215 [verbose] >
00:09:58 #17216 [verbose] > inl list_find_last forall item result. (fn : item -> option result) (target :
00:09:58 #17217 [verbose] > list item) : option result =
00:09:58 #17218 [verbose] > find_last listm.foldBack fn target
00:09:59 #17219 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\492ddd08a87b34c748a77b78bae82782b2dc5b4e9b53834ec7407ee0f7875284\main.spi
00:09:59 #17220 [verbose] >
00:09:59 #17221 [verbose] > ╭─[ 224.69ms - stdout ]────────────────────────────────────────────────────────╮
00:09:59 #17222 [verbose] > │ () │
00:09:59 #17223 [verbose] > │ │
00:09:59 #17224 [verbose] > │ │
00:09:59 #17225 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:01 #17226 [verbose] > [NbConvertApp] Converting notebook seq.dib.ipynb to html
00:10:01 #17227 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:10:01 #17228 [verbose] > validate(nb)
00:10:01 #17229 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:10:01 #17230 [verbose] > return _pygments_highlight(
00:10:02 #17231 [verbose] > [NbConvertApp] Writing 410189 bytes to seq.dib.html
00:10:03 #17232 [debug] executeAsync / exitCode: 0 / output.Length: 137269
00:10:03 #17233 [debug] main / executeCommand / exitCode: 0
00:10:03 #17234 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 util.dib" -Retries 3"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:10:05 #17235 [verbose] >
00:10:05 #17236 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:05 #17237 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:05 #17238 [verbose] > │ # util │
00:10:05 #17239 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:05 #17240 [verbose] >
00:10:05 #17241 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:05 #17242 [verbose] > // // test
00:10:05 #17243 [verbose] >
00:10:05 #17244 [verbose] > open testing
00:10:08 #17245 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:10:09 #17246 [verbose] >
00:10:09 #17247 [verbose] > ╭─[ 4.22s - stdout ]───────────────────────────────────────────────────────────╮
00:10:09 #17248 [verbose] > │ () │
00:10:09 #17249 [verbose] > │ │
00:10:09 #17250 [verbose] > │ │
00:10:09 #17251 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:09 #17252 [verbose] >
00:10:09 #17253 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:09 #17254 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:09 #17255 [verbose] > │ ## ski │
00:10:09 #17256 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:09 #17257 [verbose] >
00:10:09 #17258 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:09 #17259 [verbose] > union rec ski =
00:10:09 #17260 [verbose] > | I
00:10:09 #17261 [verbose] > | K
00:10:09 #17262 [verbose] > | S
00:10:09 #17263 [verbose] > | App : ski * ski
00:10:09 #17264 [verbose] >
00:10:09 #17265 [verbose] > inl rec eval ski =
00:10:09 #17266 [verbose] > match ski with
00:10:09 #17267 [verbose] > | App (App (K, x), y) => eval x
00:10:09 #17268 [verbose] > | App (App (App (S, x), y), z) => eval (App (App (x, z), App (y, z)))
00:10:09 #17269 [verbose] > | App (I, x) => eval x
00:10:09 #17270 [verbose] > | App (K, x) => App (K, eval x)
00:10:09 #17271 [verbose] > | App (f, x) => eval (App (eval f, x))
00:10:09 #17272 [verbose] > | _ => ski
00:10:10 #17273 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\72e6282f3300e6d54314019decc9350b1ca0492fcff018c717ad3e91103f2421\main.spi
00:10:10 #17274 [verbose] >
00:10:10 #17275 [verbose] > ╭─[ 307.61ms - stdout ]────────────────────────────────────────────────────────╮
00:10:10 #17276 [verbose] > │ () │
00:10:10 #17277 [verbose] > │ │
00:10:10 #17278 [verbose] > │ │
00:10:10 #17279 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:10 #17280 [verbose] >
00:10:10 #17281 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:10 #17282 [verbose] > // // test
00:10:10 #17283 [verbose] >
00:10:10 #17284 [verbose] > eval I
00:10:10 #17285 [verbose] > |> _assert_eq I
00:10:10 #17286 [verbose] >
00:10:10 #17287 [verbose] > eval (App (I, I))
00:10:10 #17288 [verbose] > |> _assert_eq I
00:10:10 #17289 [verbose] >
00:10:10 #17290 [verbose] > eval (App (I, App (I, I)))
00:10:10 #17291 [verbose] > |> _assert_eq I
00:10:10 #17292 [verbose] >
00:10:10 #17293 [verbose] > eval (App (App (I, I), I))
00:10:10 #17294 [verbose] > |> _assert_eq I
00:10:10 #17295 [verbose] >
00:10:10 #17296 [verbose] > eval (App (App (App (I, I), I), I))
00:10:10 #17297 [verbose] > |> _assert_eq I
00:10:10 #17298 [verbose] >
00:10:10 #17299 [verbose] > eval K
00:10:10 #17300 [verbose] > |> _assert_eq K
00:10:10 #17301 [verbose] >
00:10:10 #17302 [verbose] > eval (App (K, I))
00:10:10 #17303 [verbose] > |> _assert_eq (App (K, I))
00:10:10 #17304 [verbose] >
00:10:10 #17305 [verbose] > eval (App (K, K))
00:10:10 #17306 [verbose] > |> _assert_eq (App (K, K))
00:10:10 #17307 [verbose] >
00:10:10 #17308 [verbose] > eval (App (App (K, I), K))
00:10:10 #17309 [verbose] > |> _assert_eq I
00:10:10 #17310 [verbose] >
00:10:10 #17311 [verbose] > eval (App (App (K, K), I))
00:10:10 #17312 [verbose] > |> _assert_eq K
00:10:10 #17313 [verbose] >
00:10:10 #17314 [verbose] > eval (App (App (App (App (K, K), I), S), K))
00:10:10 #17315 [verbose] > |> _assert_eq S
00:10:10 #17316 [verbose] >
00:10:10 #17317 [verbose] > eval S
00:10:10 #17318 [verbose] > |> _assert_eq S
00:10:10 #17319 [verbose] >
00:10:10 #17320 [verbose] > eval (App (App (App (S, I), I), I))
00:10:10 #17321 [verbose] > |> _assert_eq I
00:10:10 #17322 [verbose] >
00:10:10 #17323 [verbose] > eval (App (App (App (S, K), K), I))
00:10:10 #17324 [verbose] > |> _assert_eq I
00:10:10 #17325 [verbose] >
00:10:10 #17326 [verbose] > eval (App (App (App (S, K), I), (App (App (K, I), S))))
00:10:10 #17327 [verbose] > |> _assert_eq I
00:10:10 #17328 [verbose] >
00:10:10 #17329 [verbose] > eval (App (App (K, S), App (I, App (App (App (S, K), S), I))))
00:10:10 #17330 [verbose] > |> _assert_eq S
00:10:10 #17331 [verbose] >
00:10:10 #17332 [verbose] > eval (App (App (App (S, K), I), K))
00:10:10 #17333 [verbose] > |> _assert_eq K
00:10:10 #17334 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\93b710d30ef6a9d1c3b60387f41126d8e9e8cbd255a200d566eb617c05907b76\main.spi
00:10:11 #17335 [verbose] >
00:10:11 #17336 [verbose] > ╭─[ 1.64s - stdout ]───────────────────────────────────────────────────────────╮
00:10:11 #17337 [verbose] > │ type UH0 = │
00:10:11 #17338 [verbose] > │ | UH0_0 │
00:10:11 #17339 [verbose] > │ | UH0_1 │
00:10:11 #17340 [verbose] > │ | UH0_2 │
00:10:11 #17341 [verbose] > │ | UH0_3 of UH0 * UH0 │
00:10:11 #17342 [verbose] > │ let rec method0 () : unit = │
00:10:11 #17343 [verbose] > │ let v0 : UH0 = UH0_0 │
00:10:11 #17344 [verbose] > │ let v1 : string = $"%A{v0}" │
00:10:11 #17345 [verbose] > │ System.Console.WriteLine v1 │
00:10:11 #17346 [verbose] > │ let v5 : UH0 = UH0_0 │
00:10:11 #17347 [verbose] > │ let v6 : UH0 = UH0_0 │
00:10:11 #17348 [verbose] > │ let v7 : string = $"__expect / actual: %A{v5} / expected: %A{v6}" │
00:10:11 #17349 [verbose] > │ let v8 : UH0 = UH0_0 │
00:10:11 #17350 [verbose] > │ let v9 : string = $"%A{v8}" │
00:10:11 #17351 [verbose] > │ System.Console.WriteLine v9 │
00:10:11 #17352 [verbose] > │ let v13 : UH0 = UH0_0 │
00:10:11 #17353 [verbose] > │ let v14 : UH0 = UH0_0 │
00:10:11 #17354 [verbose] > │ let v15 : string = $"__expect / actual: %A{v13} / expected: %A{v14}" │
00:10:11 #17355 [verbose] > │ let v16 : UH0 = UH0_0 │
00:10:11 #17356 [verbose] > │ let v17 : string = $"%A{v16}" │
00:10:11 #17357 [verbose] > │ System.Console.WriteLine v17 │
00:10:11 #17358 [verbose] > │ let v21 : UH0 = UH0_0 │
00:10:11 #17359 [verbose] > │ let v22 : UH0 = UH0_0 │
00:10:11 #17360 [verbose] > │ let v23 : string = $"__expect / actual: %A{v21} / expected: %A{v22}" │
00:10:11 #17361 [verbose] > │ let v24 : UH0 = UH0_0 │
00:10:11 #17362 [verbose] > │ let v25 : string = $"%A{v24}" │
00:10:11 #17363 [verbose] > │ System.Console.WriteLine v25 │
00:10:11 #17364 [verbose] > │ let v29 : UH0 = UH0_0 │
00:10:11 #17365 [verbose] > │ let v30 : UH0 = UH0_0 │
00:10:11 #17366 [verbose] > │ let v31 : string = $"__expect / actual: %A{v29} / expected: %A{v30}" │
00:10:11 #17367 [verbose] > │ let v32 : UH0 = UH0_0 │
00:10:11 #17368 [verbose] > │ let v33 : string = $"%A{v32}" │
00:10:11 #17369 [verbose] > │ System.Console.WriteLine v33 │
00:10:11 #17370 [verbose] > │ let v37 : UH0 = UH0_0 │
00:10:11 #17371 [verbose] > │ let v38 : UH0 = UH0_0 │
00:10:11 #17372 [verbose] > │ let v39 : string = $"__expect / actual: %A{v37} / expected: %A{v38}" │
00:10:11 #17373 [verbose] > │ let v40 : UH0 = UH0_1 │
00:10:11 #17374 [verbose] > │ let v41 : string = $"%A{v40}" │
00:10:11 #17375 [verbose] > │ System.Console.WriteLine v41 │
00:10:11 #17376 [verbose] > │ let v45 : UH0 = UH0_1 │
00:10:11 #17377 [verbose] > │ let v46 : UH0 = UH0_1 │
00:10:11 #17378 [verbose] > │ let v47 : string = $"__expect / actual: %A{v45} / expected: %A{v46}" │
00:10:11 #17379 [verbose] > │ let v48 : UH0 = UH0_1 │
00:10:11 #17380 [verbose] > │ let v49 : UH0 = UH0_0 │
00:10:11 #17381 [verbose] > │ let v50 : UH0 = UH0_3(v48, v49) │
00:10:11 #17382 [verbose] > │ let v51 : string = $"%A{v50}" │
00:10:11 #17383 [verbose] > │ System.Console.WriteLine v51 │
00:10:11 #17384 [verbose] > │ let v63 : UH0 = UH0_1 │
00:10:11 #17385 [verbose] > │ let v64 : UH0 = UH0_0 │
00:10:11 #17386 [verbose] > │ let v65 : UH0 = UH0_3(v63, v64) │
00:10:11 #17387 [verbose] > │ let v66 : UH0 = UH0_1 │
00:10:11 #17388 [verbose] > │ let v67 : UH0 = UH0_0 │
00:10:11 #17389 [verbose] > │ let v68 : UH0 = UH0_3(v66, v67) │
00:10:11 #17390 [verbose] > │ let v69 : string = $"__expect / actual: %A{v65} / expected: %A{v68}" │
00:10:11 #17391 [verbose] > │ let v70 : UH0 = UH0_1 │
00:10:11 #17392 [verbose] > │ let v71 : UH0 = UH0_1 │
00:10:11 #17393 [verbose] > │ let v72 : UH0 = UH0_3(v70, v71) │
00:10:11 #17394 [verbose] > │ let v73 : string = $"%A{v72}" │
00:10:11 #17395 [verbose] > │ System.Console.WriteLine v73 │
00:10:11 #17396 [verbose] > │ let v85 : UH0 = UH0_1 │
00:10:11 #17397 [verbose] > │ let v86 : UH0 = UH0_1 │
00:10:11 #17398 [verbose] > │ let v87 : UH0 = UH0_3(v85, v86) │
00:10:11 #17399 [verbose] > │ let v88 : UH0 = UH0_1 │
00:10:11 #17400 [verbose] > │ let v89 : UH0 = UH0_1 │
00:10:11 #17401 [verbose] > │ let v90 : UH0 = UH0_3(v88, v89) │
00:10:11 #17402 [verbose] > │ let v91 : string = $"__expect / actual: %A{v87} / expected: %A{v90}" │
00:10:11 #17403 [verbose] > │ let v92 : UH0 = UH0_0 │
00:10:11 #17404 [verbose] > │ let v93 : string = $"%A{v92}" │
00:10:11 #17405 [verbose] > │ System.Console.WriteLine v93 │
00:10:11 #17406 [verbose] > │ let v97 : UH0 = UH0_0 │
00:10:11 #17407 [verbose] > │ let v98 : UH0 = UH0_0 │
00:10:11 #17408 [verbose] > │ let v99 : string = $"__expect / actual: %A{v97} / expected: %A{v98}" │
00:10:11 #17409 [verbose] > │ let v100 : UH0 = UH0_1 │
00:10:11 #17410 [verbose] > │ let v101 : string = $"%A{v100}" │
00:10:11 #17411 [verbose] > │ System.Console.WriteLine v101 │
00:10:11 #17412 [verbose] > │ let v105 : UH0 = UH0_1 │
00:10:11 #17413 [verbose] > │ let v106 : UH0 = UH0_1 │
00:10:11 #17414 [verbose] > │ let v107 : string = $"__expect / actual: %A{v105} / expected: %A{v106}" │
00:10:11 #17415 [verbose] > │ let v108 : UH0 = UH0_2 │
00:10:11 #17416 [verbose] > │ let v109 : string = $"%A{v108}" │
00:10:11 #17417 [verbose] > │ System.Console.WriteLine v109 │
00:10:11 #17418 [verbose] > │ let v113 : UH0 = UH0_2 │
00:10:11 #17419 [verbose] > │ let v114 : UH0 = UH0_2 │
00:10:11 #17420 [verbose] > │ let v115 : string = $"__expect / actual: %A{v113} / expected: %A{v114}" │
00:10:11 #17421 [verbose] > │ let v116 : UH0 = UH0_2 │
00:10:11 #17422 [verbose] > │ let v117 : string = $"%A{v116}" │
00:10:11 #17423 [verbose] > │ System.Console.WriteLine v117 │
00:10:11 #17424 [verbose] > │ let v121 : UH0 = UH0_2 │
00:10:11 #17425 [verbose] > │ let v122 : UH0 = UH0_2 │
00:10:11 #17426 [verbose] > │ let v123 : string = $"__expect / actual: %A{v121} / expected: %A{v122}" │
00:10:11 #17427 [verbose] > │ let v124 : UH0 = UH0_0 │
00:10:11 #17428 [verbose] > │ let v125 : string = $"%A{v124}" │
00:10:11 #17429 [verbose] > │ System.Console.WriteLine v125 │
00:10:11 #17430 [verbose] > │ let v129 : UH0 = UH0_0 │
00:10:11 #17431 [verbose] > │ let v130 : UH0 = UH0_0 │
00:10:11 #17432 [verbose] > │ let v131 : string = $"__expect / actual: %A{v129} / expected: %A{v130}" │
00:10:11 #17433 [verbose] > │ let v132 : UH0 = UH0_0 │
00:10:11 #17434 [verbose] > │ let v133 : string = $"%A{v132}" │
00:10:11 #17435 [verbose] > │ System.Console.WriteLine v133 │
00:10:11 #17436 [verbose] > │ let v137 : UH0 = UH0_0 │
00:10:11 #17437 [verbose] > │ let v138 : UH0 = UH0_0 │
00:10:11 #17438 [verbose] > │ let v139 : string = $"__expect / actual: %A{v137} / expected: %A{v138}" │
00:10:11 #17439 [verbose] > │ let v140 : UH0 = UH0_0 │
00:10:11 #17440 [verbose] > │ let v141 : string = $"%A{v140}" │
00:10:11 #17441 [verbose] > │ System.Console.WriteLine v141 │
00:10:11 #17442 [verbose] > │ let v145 : UH0 = UH0_0 │
00:10:11 #17443 [verbose] > │ let v146 : UH0 = UH0_0 │
00:10:11 #17444 [verbose] > │ let v147 : string = $"__expect / actual: %A{v145} / expected: %A{v146}" │
00:10:11 #17445 [verbose] > │ let v148 : UH0 = UH0_2 │
00:10:11 #17446 [verbose] > │ let v149 : string = $"%A{v148}" │
00:10:11 #17447 [verbose] > │ System.Console.WriteLine v149 │
00:10:11 #17448 [verbose] > │ let v153 : UH0 = UH0_2 │
00:10:11 #17449 [verbose] > │ let v154 : UH0 = UH0_2 │
00:10:11 #17450 [verbose] > │ let v155 : string = $"__expect / actual: %A{v153} / expected: %A{v154}" │
00:10:11 #17451 [verbose] > │ let v156 : UH0 = UH0_1 │
00:10:11 #17452 [verbose] > │ let v157 : string = $"%A{v156}" │
00:10:11 #17453 [verbose] > │ System.Console.WriteLine v157 │
00:10:11 #17454 [verbose] > │ let v161 : UH0 = UH0_1 │
00:10:11 #17455 [verbose] > │ let v162 : UH0 = UH0_1 │
00:10:11 #17456 [verbose] > │ let v163 : string = $"__expect / actual: %A{v161} / expected: %A{v162}" │
00:10:11 #17457 [verbose] > │ () │
00:10:11 #17458 [verbose] > │ method0() │
00:10:11 #17459 [verbose] > │ │
00:10:11 #17460 [verbose] > │ UH0_0 │
00:10:11 #17461 [verbose] > │ UH0_0 │
00:10:11 #17462 [verbose] > │ UH0_0 │
00:10:11 #17463 [verbose] > │ UH0_0 │
00:10:11 #17464 [verbose] > │ UH0_0 │
00:10:11 #17465 [verbose] > │ UH0_1 │
00:10:11 #17466 [verbose] > │ UH0_3 (UH0_1, UH0_0) │
00:10:11 #17467 [verbose] > │ UH0_3 (UH0_1, UH0_1) │
00:10:11 #17468 [verbose] > │ UH0_0 │
00:10:11 #17469 [verbose] > │ UH0_1 │
00:10:11 #17470 [verbose] > │ UH0_2 │
00:10:11 #17471 [verbose] > │ UH0_2 │
00:10:11 #17472 [verbose] > │ UH0_0 │
00:10:11 #17473 [verbose] > │ UH0_0 │
00:10:11 #17474 [verbose] > │ UH0_0 │
00:10:11 #17475 [verbose] > │ UH0_2 │
00:10:11 #17476 [verbose] > │ UH0_1 │
00:10:11 #17477 [verbose] > │ │
00:10:11 #17478 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:13 #17479 [verbose] > [NbConvertApp] Converting notebook util.dib.ipynb to html
00:10:13 #17480 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:10:13 #17481 [verbose] > validate(nb)
00:10:14 #17482 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:10:14 #17483 [verbose] > return _pygments_highlight(
00:10:14 #17484 [verbose] > [NbConvertApp] Writing 288561 bytes to util.dib.html
00:10:15 #17485 [debug] executeAsync / exitCode: 0 / output.Length: 15199
00:10:15 #17486 [debug] main / executeCommand / exitCode: 0
00:10:15 #17487 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 file_system.dib" -Retries 3"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:10:17 #17488 [verbose] >
00:10:17 #17489 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:17 #17490 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:17 #17491 [verbose] > │ # file_system │
00:10:17 #17492 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:18 #17493 [verbose] >
00:10:18 #17494 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:18 #17495 [verbose] > open sm'_operators
00:10:21 #17496 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8e0f0354561b2c97df06acd4c3ea95f2daf6895158af8361de97c13866799744\main.spi
00:10:22 #17497 [verbose] >
00:10:22 #17498 [verbose] > ╭─[ 4.04s - stdout ]───────────────────────────────────────────────────────────╮
00:10:22 #17499 [verbose] > │ () │
00:10:22 #17500 [verbose] > │ │
00:10:22 #17501 [verbose] > │ │
00:10:22 #17502 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:22 #17503 [verbose] >
00:10:22 #17504 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:22 #17505 [verbose] > // // test
00:10:22 #17506 [verbose] >
00:10:22 #17507 [verbose] > open testing
00:10:22 #17508 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c45f56626e445f341847e116c2e90b4cc6ff29f96977dd2788a732457b25f1a7\main.spi
00:10:22 #17509 [verbose] >
00:10:22 #17510 [verbose] > ╭─[ 272.16ms - stdout ]────────────────────────────────────────────────────────╮
00:10:22 #17511 [verbose] > │ () │
00:10:22 #17512 [verbose] > │ │
00:10:22 #17513 [verbose] > │ │
00:10:22 #17514 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:22 #17515 [verbose] >
00:10:22 #17516 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:22 #17517 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:22 #17518 [verbose] > │ ## types │
00:10:22 #17519 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:22 #17520 [verbose] >
00:10:22 #17521 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:22 #17522 [verbose] > inl types () =
00:10:22 #17523 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::path::Path\")>]] type
00:10:22 #17524 [verbose] > std_path_Path = class end"
00:10:22 #17525 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::path::PathBuf\")>]] type
00:10:22 #17526 [verbose] > std_path_PathBuf = class end"
00:10:22 #17527 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\10e8d825215ddc433d9762663b783a1a3757de9b8d655e4d2f20a471bf28b89c\main.spi
00:10:22 #17528 [verbose] >
00:10:22 #17529 [verbose] > ╭─[ 267.67ms - stdout ]────────────────────────────────────────────────────────╮
00:10:22 #17530 [verbose] > │ () │
00:10:22 #17531 [verbose] > │ │
00:10:22 #17532 [verbose] > │ │
00:10:22 #17533 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:22 #17534 [verbose] >
00:10:22 #17535 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:22 #17536 [verbose] > inl types () =
00:10:22 #17537 [verbose] > global "#if FABLE_COMPILER // file_system.types"
00:10:22 #17538 [verbose] > sm'.types ()
00:10:22 #17539 [verbose] > rust.types ()
00:10:22 #17540 [verbose] > types ()
00:10:22 #17541 [verbose] > global "#endif // file_system.types"
00:10:22 #17542 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e68733e68b764134f711ae7d46dbdbcc484436512d26d92371ce0b1a40f96191\main.spi
00:10:22 #17543 [verbose] >
00:10:22 #17544 [verbose] > ╭─[ 224.04ms - stdout ]────────────────────────────────────────────────────────╮
00:10:22 #17545 [verbose] > │ () │
00:10:22 #17546 [verbose] > │ │
00:10:22 #17547 [verbose] > │ │
00:10:22 #17548 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:22 #17549 [verbose] >
00:10:22 #17550 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:22 #17551 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:22 #17552 [verbose] > │ ## file_mode │
00:10:22 #17553 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:22 #17554 [verbose] >
00:10:22 #17555 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:22 #17556 [verbose] > nominal file_mode' = $'System.IO.FileMode'
00:10:22 #17557 [verbose] >
00:10:22 #17558 [verbose] > union file_mode =
00:10:22 #17559 [verbose] > | ModeCreateNew
00:10:22 #17560 [verbose] > | ModeCreate
00:10:22 #17561 [verbose] > | ModeOpen
00:10:22 #17562 [verbose] > | ModeOpenOrCreate
00:10:22 #17563 [verbose] > | Truncate
00:10:22 #17564 [verbose] > | Append
00:10:22 #17565 [verbose] >
00:10:22 #17566 [verbose] > inl file_mode = function
00:10:22 #17567 [verbose] > | ModeCreateNew => $'System.IO.FileMode.CreateNew' : file_mode'
00:10:22 #17568 [verbose] > | ModeCreate => $'System.IO.FileMode.Create' : file_mode'
00:10:22 #17569 [verbose] > | ModeOpen => $'System.IO.FileMode.Open' : file_mode'
00:10:22 #17570 [verbose] > | ModeOpenOrCreate => $'System.IO.FileMode.OpenOrCreate' : file_mode'
00:10:22 #17571 [verbose] > | Truncate => $'System.IO.FileMode.Truncate' : file_mode'
00:10:22 #17572 [verbose] > | Append => $'System.IO.FileMode.Append' : file_mode'
00:10:22 #17573 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\484b87615fe68fdb707b0bed291f001da522ed3f56cff1f5947f2854467a753d\main.spi
00:10:23 #17574 [verbose] >
00:10:23 #17575 [verbose] > ╭─[ 239.42ms - stdout ]────────────────────────────────────────────────────────╮
00:10:23 #17576 [verbose] > │ () │
00:10:23 #17577 [verbose] > │ │
00:10:23 #17578 [verbose] > │ │
00:10:23 #17579 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:23 #17580 [verbose] >
00:10:23 #17581 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:23 #17582 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:23 #17583 [verbose] > │ ## file_access │
00:10:23 #17584 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:23 #17585 [verbose] >
00:10:23 #17586 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:23 #17587 [verbose] > nominal file_access' = $'System.IO.FileAccess'
00:10:23 #17588 [verbose] >
00:10:23 #17589 [verbose] > union file_access =
00:10:23 #17590 [verbose] > | AccessRead
00:10:23 #17591 [verbose] > | AccessWrite
00:10:23 #17592 [verbose] > | AccessReadWrite
00:10:23 #17593 [verbose] >
00:10:23 #17594 [verbose] > inl file_access = function
00:10:23 #17595 [verbose] > | AccessRead => $'System.IO.FileAccess.Read' : file_access'
00:10:23 #17596 [verbose] > | AccessWrite => $'System.IO.FileAccess.ReadWrite' : file_access'
00:10:23 #17597 [verbose] > | AccessReadWrite => $'System.IO.FileAccess.ReadWrite' : file_access'
00:10:23 #17598 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f1897c2318d589b3806ec362f586c664f962d48abef7663ed441c5187cb92dc5\main.spi
00:10:23 #17599 [verbose] >
00:10:23 #17600 [verbose] > ╭─[ 240.48ms - stdout ]────────────────────────────────────────────────────────╮
00:10:23 #17601 [verbose] > │ () │
00:10:23 #17602 [verbose] > │ │
00:10:23 #17603 [verbose] > │ │
00:10:23 #17604 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:23 #17605 [verbose] >
00:10:23 #17606 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:23 #17607 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:23 #17608 [verbose] > │ ## file_share │
00:10:23 #17609 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:23 #17610 [verbose] >
00:10:23 #17611 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:23 #17612 [verbose] > nominal file_share' = $'System.IO.FileShare'
00:10:23 #17613 [verbose] >
00:10:23 #17614 [verbose] > union file_share =
00:10:23 #17615 [verbose] > | ShareNone
00:10:23 #17616 [verbose] > | ShareRead
00:10:23 #17617 [verbose] > | ShareWrite
00:10:23 #17618 [verbose] > | ShareReadWrite
00:10:23 #17619 [verbose] > | ShareDelete
00:10:23 #17620 [verbose] >
00:10:23 #17621 [verbose] > inl file_share = function
00:10:23 #17622 [verbose] > | ShareNone => $'System.IO.FileShare.None' : file_share'
00:10:23 #17623 [verbose] > | ShareRead => $'System.IO.FileShare.Read' : file_share'
00:10:23 #17624 [verbose] > | ShareWrite => $'System.IO.FileShare.Write' : file_share'
00:10:23 #17625 [verbose] > | ShareReadWrite => $'System.IO.FileShare.ReadWrite' : file_share'
00:10:23 #17626 [verbose] > | ShareDelete => $'System.IO.FileShare.Delete' : file_share'
00:10:23 #17627 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f4599e5fe72536acc1c1ba15d6cb145f3fb9d7147a52b31a38215cd4be3326ae\main.spi
00:10:23 #17628 [verbose] >
00:10:23 #17629 [verbose] > ╭─[ 228.13ms - stdout ]────────────────────────────────────────────────────────╮
00:10:23 #17630 [verbose] > │ () │
00:10:23 #17631 [verbose] > │ │
00:10:23 #17632 [verbose] > │ │
00:10:23 #17633 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:23 #17634 [verbose] >
00:10:23 #17635 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:23 #17636 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:23 #17637 [verbose] > │ ## file_stream │
00:10:23 #17638 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:23 #17639 [verbose] >
00:10:23 #17640 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:23 #17641 [verbose] > nominal file_stream' = $'System.IO.FileStream'
00:10:23 #17642 [verbose] >
00:10:23 #17643 [verbose] > inl file_stream (path : string) mode access share : file_stream' =
00:10:23 #17644 [verbose] > run_target function
00:10:23 #17645 [verbose] > | Fsharp (Native) => fun () =>
00:10:23 #17646 [verbose] > inl mode = mode |> file_mode
00:10:23 #17647 [verbose] > inl access = access |> file_access
00:10:23 #17648 [verbose] > inl share = share |> file_share
00:10:23 #17649 [verbose] > $'new System.IO.FileStream (!path, !mode, !access, !share)'
00:10:23 #17650 [verbose] > | _ => fun () => null ()
00:10:23 #17651 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e9d00de34f54cd5950a679147d9884b659b41b666d3e05df0f3fd64514d863c5\main.spi
00:10:23 #17652 [verbose] >
00:10:23 #17653 [verbose] > ╭─[ 239.14ms - stdout ]────────────────────────────────────────────────────────╮
00:10:23 #17654 [verbose] > │ () │
00:10:23 #17655 [verbose] > │ │
00:10:23 #17656 [verbose] > │ │
00:10:23 #17657 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:23 #17658 [verbose] >
00:10:23 #17659 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:23 #17660 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:23 #17661 [verbose] > │ ## path │
00:10:23 #17662 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:23 #17663 [verbose] >
00:10:23 #17664 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:23 #17665 [verbose] > nominal path = $'std_path_Path'
00:10:23 #17666 [verbose] > nominal path_buf = $'std_path_PathBuf'
00:10:23 #17667 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\35d79212916f6890c31315266bbf13ac3a8f374727ea00859a67e269414521e5\main.spi
00:10:23 #17668 [verbose] >
00:10:23 #17669 [verbose] > ╭─[ 233.35ms - stdout ]────────────────────────────────────────────────────────╮
00:10:23 #17670 [verbose] > │ () │
00:10:23 #17671 [verbose] > │ │
00:10:23 #17672 [verbose] > │ │
00:10:23 #17673 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:23 #17674 [verbose] >
00:10:23 #17675 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:23 #17676 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:23 #17677 [verbose] > │ ## new_path_buf │
00:10:23 #17678 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:23 #17679 [verbose] >
00:10:23 #17680 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:24 #17681 [verbose] > inl new_path_buf (path : string) : path_buf =
00:10:24 #17682 [verbose] > open rust_operators
00:10:24 #17683 [verbose] > inl path = path |> sm'.to_std_string
00:10:24 #17684 [verbose] > !\\(path, $'"std::path::PathBuf::from($0)"')
00:10:24 #17685 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\7baad357bc03e35ecda7f8cf53cedf9ee6132b1eff380a0956f226835da5ba91\main.spi
00:10:24 #17686 [verbose] >
00:10:24 #17687 [verbose] > ╭─[ 254.69ms - stdout ]────────────────────────────────────────────────────────╮
00:10:24 #17688 [verbose] > │ () │
00:10:24 #17689 [verbose] > │ │
00:10:24 #17690 [verbose] > │ │
00:10:24 #17691 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:24 #17692 [verbose] >
00:10:24 #17693 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:24 #17694 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:24 #17695 [verbose] > │ ## path_buf_from │
00:10:24 #17696 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:24 #17697 [verbose] >
00:10:24 #17698 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:24 #17699 [verbose] > inl path_buf_from (path : rust.box path) : path_buf =
00:10:24 #17700 [verbose] > open rust_operators
00:10:24 #17701 [verbose] > !\\(path, $'"std::path::PathBuf::from($0)"')
00:10:24 #17702 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d928a0ce805e6e889177d873f242e9845297cc61910809a039c8ab5dd6bfe924\main.spi
00:10:24 #17703 [verbose] >
00:10:24 #17704 [verbose] > ╭─[ 235.36ms - stdout ]────────────────────────────────────────────────────────╮
00:10:24 #17705 [verbose] > │ () │
00:10:24 #17706 [verbose] > │ │
00:10:24 #17707 [verbose] > │ │
00:10:24 #17708 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:24 #17709 [verbose] >
00:10:24 #17710 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:24 #17711 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:24 #17712 [verbose] > │ ## path_join │
00:10:24 #17713 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:24 #17714 [verbose] >
00:10:24 #17715 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:24 #17716 [verbose] > inl path_join (s : string) (path_buf : path_buf) : path_buf =
00:10:24 #17717 [verbose] > open rust_operators
00:10:24 #17718 [verbose] > !\\((path_buf, s |> sm'.to_std_string), $'"$0.join($1)"')
00:10:24 #17719 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5638cc72691b554ae2d57be04679caa80415feaacb826e81ccc0359db518eeb5\main.spi
00:10:24 #17720 [verbose] >
00:10:24 #17721 [verbose] > ╭─[ 267.88ms - stdout ]────────────────────────────────────────────────────────╮
00:10:24 #17722 [verbose] > │ () │
00:10:24 #17723 [verbose] > │ │
00:10:24 #17724 [verbose] > │ │
00:10:24 #17725 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:24 #17726 [verbose] >
00:10:24 #17727 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:24 #17728 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:24 #17729 [verbose] > │ ## path_display │
00:10:24 #17730 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:24 #17731 [verbose] >
00:10:24 #17732 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:24 #17733 [verbose] > inl path_display (path : rust.ref' path) : sm'.std_string =
00:10:24 #17734 [verbose] > open rust_operators
00:10:24 #17735 [verbose] > !\\(path, $'"$0.display().to_string()"')
00:10:25 #17736 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e27324cfedf3791b19b1931b7ae55a321f14b96fcd0ae76666afd4c8d17f58d3\main.spi
00:10:25 #17737 [verbose] >
00:10:25 #17738 [verbose] > ╭─[ 367.83ms - stdout ]────────────────────────────────────────────────────────╮
00:10:25 #17739 [verbose] > │ () │
00:10:25 #17740 [verbose] > │ │
00:10:25 #17741 [verbose] > │ │
00:10:25 #17742 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:25 #17743 [verbose] >
00:10:25 #17744 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:25 #17745 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:25 #17746 [verbose] > │ ## path_buf_file_name │
00:10:25 #17747 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:25 #17748 [verbose] >
00:10:25 #17749 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:25 #17750 [verbose] > inl path_buf_file_name (path : path_buf) : optionm'.option' (rust.ref'
00:10:25 #17751 [verbose] > sm'.os_str) =
00:10:25 #17752 [verbose] > open rust_operators
00:10:25 #17753 [verbose] > !\($'"!path.file_name()"')
00:10:25 #17754 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\609e6d2b938374c38bb307c0b969035066cb89ffcebc3d2cbc8ad338b3f4c110\main.spi
00:10:25 #17755 [verbose] >
00:10:25 #17756 [verbose] > ╭─[ 204.84ms - stdout ]────────────────────────────────────────────────────────╮
00:10:25 #17757 [verbose] > │ () │
00:10:25 #17758 [verbose] > │ │
00:10:25 #17759 [verbose] > │ │
00:10:25 #17760 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:25 #17761 [verbose] >
00:10:25 #17762 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:25 #17763 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:25 #17764 [verbose] > │ ## path_buf_display │
00:10:25 #17765 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:25 #17766 [verbose] >
00:10:25 #17767 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:25 #17768 [verbose] > inl path_buf_display (path_buf : path_buf) : sm'.std_string =
00:10:25 #17769 [verbose] > open rust_operators
00:10:25 #17770 [verbose] > !\\(path_buf, $'"$0.display().to_string()"')
00:10:25 #17771 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c97bfb19456f1fe0a20519ebb24ac28ebf121575bb202ef5b7721d7e51417a74\main.spi
00:10:25 #17772 [verbose] >
00:10:25 #17773 [verbose] > ╭─[ 218.45ms - stdout ]────────────────────────────────────────────────────────╮
00:10:25 #17774 [verbose] > │ () │
00:10:25 #17775 [verbose] > │ │
00:10:25 #17776 [verbose] > │ │
00:10:25 #17777 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:25 #17778 [verbose] >
00:10:25 #17779 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:25 #17780 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:25 #17781 [verbose] > │ ## path_exists │
00:10:25 #17782 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:25 #17783 [verbose] >
00:10:25 #17784 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:25 #17785 [verbose] > inl path_buf_exists (path_buf : path_buf) : bool =
00:10:25 #17786 [verbose] > open rust_operators
00:10:25 #17787 [verbose] > !\\(path_buf, $'"$0.exists()"')
00:10:25 #17788 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\21d60e80919d6c096058e7f6419f02c121b9b8ed9b4a754cf9313fd560baf912\main.spi
00:10:25 #17789 [verbose] >
00:10:25 #17790 [verbose] > ╭─[ 227.02ms - stdout ]────────────────────────────────────────────────────────╮
00:10:25 #17791 [verbose] > │ () │
00:10:25 #17792 [verbose] > │ │
00:10:25 #17793 [verbose] > │ │
00:10:25 #17794 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:25 #17795 [verbose] >
00:10:25 #17796 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:25 #17797 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:25 #17798 [verbose] > │ ## path_is_dir │
00:10:25 #17799 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:25 #17800 [verbose] >
00:10:25 #17801 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:25 #17802 [verbose] > inl path_buf_is_dir (path_buf : path_buf) : bool =
00:10:25 #17803 [verbose] > open rust_operators
00:10:25 #17804 [verbose] > !\\(path_buf, $'"$0.is_dir()"')
00:10:25 #17805 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\69140b3077799c33c915a3c4f4d9820c1aa2af10ba1574ab69c295c8e90fce56\main.spi
00:10:26 #17806 [verbose] >
00:10:26 #17807 [verbose] > ╭─[ 235.74ms - stdout ]────────────────────────────────────────────────────────╮
00:10:26 #17808 [verbose] > │ () │
00:10:26 #17809 [verbose] > │ │
00:10:26 #17810 [verbose] > │ │
00:10:26 #17811 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:26 #17812 [verbose] >
00:10:26 #17813 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:26 #17814 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:26 #17815 [verbose] > │ ## path_is_file │
00:10:26 #17816 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:26 #17817 [verbose] >
00:10:26 #17818 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:26 #17819 [verbose] > inl path_buf_is_file (path_buf : path_buf) : bool =
00:10:26 #17820 [verbose] > open rust_operators
00:10:26 #17821 [verbose] > !\\(path_buf, $'"$0.is_file()"')
00:10:26 #17822 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8ec59c7174d31994c0eb3ef68d083c8d80076eb0fe6c4841b3d0c01cc7463677\main.spi
00:10:26 #17823 [verbose] >
00:10:26 #17824 [verbose] > ╭─[ 335.72ms - stdout ]────────────────────────────────────────────────────────╮
00:10:26 #17825 [verbose] > │ () │
00:10:26 #17826 [verbose] > │ │
00:10:26 #17827 [verbose] > │ │
00:10:26 #17828 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:26 #17829 [verbose] >
00:10:26 #17830 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:26 #17831 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:26 #17832 [verbose] > │ ## path_buf_parent │
00:10:26 #17833 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:26 #17834 [verbose] >
00:10:26 #17835 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:26 #17836 [verbose] > inl path_buf_parent (path_buf : path_buf) : optionm'.option' path_buf =
00:10:26 #17837 [verbose] > open rust_operators
00:10:26 #17838 [verbose] > !\\(path_buf, $'"$0.parent().map(std::path::PathBuf::from)"')
00:10:26 #17839 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9319952f747666870eee57be97ce9cc870ef9599f5c07c43a9416d0813f7b20d\main.spi
00:10:26 #17840 [verbose] >
00:10:26 #17841 [verbose] > ╭─[ 258.00ms - stdout ]────────────────────────────────────────────────────────╮
00:10:26 #17842 [verbose] > │ () │
00:10:26 #17843 [verbose] > │ │
00:10:26 #17844 [verbose] > │ │
00:10:26 #17845 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:26 #17846 [verbose] >
00:10:26 #17847 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:26 #17848 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:26 #17849 [verbose] > │ ## ts_path_join │
00:10:26 #17850 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:26 #17851 [verbose] >
00:10:26 #17852 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:26 #17853 [verbose] > inl ts_path_join (b : string) (a : string) : string =
00:10:26 #17854 [verbose] > open ts_operators
00:10:26 #17855 [verbose] > global "type IPathJoin = abstract join: [[<System.ParamArray>]] paths:
00:10:26 #17856 [verbose] > string[[]] -> string"
00:10:26 #17857 [verbose] > inl path : $'IPathJoin' = ts.import_all "path"
00:10:26 #17858 [verbose] > !\\((a, b), $'"!path.join($0, $1)"')
00:10:26 #17859 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e4358c1b996e341f9adabad7687775c6b568823f6faef49d2fd054805b10ade9\main.spi
00:10:26 #17860 [verbose] >
00:10:26 #17861 [verbose] > ╭─[ 223.48ms - stdout ]────────────────────────────────────────────────────────╮
00:10:26 #17862 [verbose] > │ () │
00:10:26 #17863 [verbose] > │ │
00:10:26 #17864 [verbose] > │ │
00:10:26 #17865 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:26 #17866 [verbose] >
00:10:26 #17867 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:26 #17868 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:26 #17869 [verbose] > │ ## (< />) │
00:10:26 #17870 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:26 #17871 [verbose] >
00:10:26 #17872 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:26 #17873 [verbose] > inl (</>) (a : string) (b : string) : string =
00:10:26 #17874 [verbose] > run_target function
00:10:26 #17875 [verbose] > | Rust (Native) => fun () =>
00:10:26 #17876 [verbose] > a |> new_path_buf |> path_join b |> path_buf_display |>
00:10:26 #17877 [verbose] > sm'.from_std_string
00:10:26 #17878 [verbose] > | Fsharp (Native) => fun () =>
00:10:26 #17879 [verbose] > $'System.IO.Path.Combine (!a, !b)'
00:10:26 #17880 [verbose] > | TypeScript _ => fun () =>
00:10:26 #17881 [verbose] > a |> ts_path_join b
00:10:26 #17882 [verbose] > | _ => fun () => null ()
00:10:27 #17883 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\007ad635c9661a2cec0a2c5c2208dc4646ce88e42f1ef63cc6c9a2b95cde2953\main.spi
00:10:27 #17884 [verbose] >
00:10:27 #17885 [verbose] > ╭─[ 198.38ms - stdout ]────────────────────────────────────────────────────────╮
00:10:27 #17886 [verbose] > │ () │
00:10:27 #17887 [verbose] > │ │
00:10:27 #17888 [verbose] > │ │
00:10:27 #17889 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:27 #17890 [verbose] >
00:10:27 #17891 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:27 #17892 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:27 #17893 [verbose] > │ ## get_temp_path │
00:10:27 #17894 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:27 #17895 [verbose] >
00:10:27 #17896 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:27 #17897 [verbose] > inl get_temp_path () : string =
00:10:27 #17898 [verbose] > $'System.IO.Path.GetTempPath' ()
00:10:27 #17899 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e84e15ef92cb8025f748044a7ea42476e0831601d649f8b383bd018eb08ab7d8\main.spi
00:10:27 #17900 [verbose] >
00:10:27 #17901 [verbose] > ╭─[ 197.62ms - stdout ]────────────────────────────────────────────────────────╮
00:10:27 #17902 [verbose] > │ () │
00:10:27 #17903 [verbose] > │ │
00:10:27 #17904 [verbose] > │ │
00:10:27 #17905 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:27 #17906 [verbose] >
00:10:27 #17907 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:27 #17908 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:27 #17909 [verbose] > │ ## get_file_name │
00:10:27 #17910 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:27 #17911 [verbose] >
00:10:27 #17912 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:27 #17913 [verbose] > inl get_file_name (path : string) : string =
00:10:27 #17914 [verbose] > run_target function
00:10:27 #17915 [verbose] > | Fsharp (Native) => fun () =>
00:10:27 #17916 [verbose] > path |> $'System.IO.Path.GetFileName'
00:10:27 #17917 [verbose] > | _ => fun () => null ()
00:10:27 #17918 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c47505e13b585b7f79e1c32c7b8bfcd0755836e7fa4cb84935fad5bdb210a64e\main.spi
00:10:27 #17919 [verbose] >
00:10:27 #17920 [verbose] > ╭─[ 222.95ms - stdout ]────────────────────────────────────────────────────────╮
00:10:27 #17921 [verbose] > │ () │
00:10:27 #17922 [verbose] > │ │
00:10:27 #17923 [verbose] > │ │
00:10:27 #17924 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:27 #17925 [verbose] >
00:10:27 #17926 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:27 #17927 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:27 #17928 [verbose] > │ ## create_temp_directory_name │
00:10:27 #17929 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:27 #17930 [verbose] >
00:10:27 #17931 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:27 #17932 [verbose] > inl create_temp_directory_name () =
00:10:27 #17933 [verbose] > run_target function
00:10:27 #17934 [verbose] > | Fsharp (Native) => fun () =>
00:10:27 #17935 [verbose] > get_temp_path ()
00:10:27 #17936 [verbose] > </> ($'$"\!{!get_entry_assembly_name ()}"' : string)
00:10:27 #17937 [verbose] > </> (date_time.now () |> date_time.new_guid_from_date_time |>
00:10:27 #17938 [verbose] > sm'.obj_to_string)
00:10:27 #17939 [verbose] > | target => fun () => null ()
00:10:27 #17940 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3b9f9e25d4a8f9c7640425b49cf43b2be7f026718abfaf7e8ad4ef43fb845152\main.spi
00:10:27 #17941 [verbose] >
00:10:27 #17942 [verbose] > ╭─[ 238.82ms - stdout ]────────────────────────────────────────────────────────╮
00:10:27 #17943 [verbose] > │ () │
00:10:27 #17944 [verbose] > │ │
00:10:27 #17945 [verbose] > │ │
00:10:27 #17946 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:27 #17947 [verbose] >
00:10:27 #17948 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:27 #17949 [verbose] > // // test
00:10:27 #17950 [verbose] >
00:10:27 #17951 [verbose] > create_temp_directory_name ()
00:10:27 #17952 [verbose] > |> _assert_contains ($'System.IO.Path.DirectorySeparatorChar' : char)
00:10:28 #17953 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b8fa5422a3a0f51d068b69c04450e05ee04f3c061341f5753aca34269d34d204\main.spi
00:10:29 #17954 [verbose] >
00:10:29 #17955 [verbose] > ╭─[ 1.85s - stdout ]───────────────────────────────────────────────────────────╮
00:10:29 #17956 [verbose] > │ type IPathJoin = abstract join: [<System.ParamArray>] paths: string[] -> │
00:10:29 #17957 [verbose] > │ string │
00:10:29 #17958 [verbose] > │ type [<Struct>] US0 = │
00:10:29 #17959 [verbose] > │ | US0_0 of f0_0 : char │
00:10:29 #17960 [verbose] > │ | US0_1 │
00:10:29 #17961 [verbose] > │ let rec closure0 () () : string = │
00:10:29 #17962 [verbose] > │ let v0 : string option = None │
00:10:29 #17963 [verbose] > │ let mutable _v0 = v0 │
00:10:29 #17964 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:29 #17965 [verbose] > │ let v1 : string = null |> unbox<string> │
00:10:29 #17966 [verbose] > │ v1 │
00:10:29 #17967 [verbose] > │ #endif │
00:10:29 #17968 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:29 #17969 [verbose] > │ let v2 : string = null |> unbox<string> │
00:10:29 #17970 [verbose] > │ v2 │
00:10:29 #17971 [verbose] > │ #endif │
00:10:29 #17972 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:29 #17973 [verbose] > │ let v3 : string = null |> unbox<string> │
00:10:29 #17974 [verbose] > │ v3 │
00:10:29 #17975 [verbose] > │ #endif │
00:10:29 #17976 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:29 #17977 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:29 #17978 [verbose] > │ let v4 : string = │
00:10:29 #17979 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:10:29 #17980 [verbose] > │ v4 │
00:10:29 #17981 [verbose] > │ #endif │
00:10:29 #17982 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:29 #17983 [verbose] > │ let v5 : string = null |> unbox<string> │
00:10:29 #17984 [verbose] > │ v5 │
00:10:29 #17985 [verbose] > │ #endif │
00:10:29 #17986 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:29 #17987 [verbose] > │ Unchecked.defaultof<string> │
00:10:29 #17988 [verbose] > │ #endif │
00:10:29 #17989 [verbose] > │ |> fun x -> _v0 <- Some x │
00:10:29 #17990 [verbose] > │ let v6 : string = _v0.Value │
00:10:29 #17991 [verbose] > │ v6 │
00:10:29 #17992 [verbose] > │ and method1 (v0 : string) : string = │
00:10:29 #17993 [verbose] > │ v0 │
00:10:29 #17994 [verbose] > │ and closure1 (v0 : char) (v1 : char) : bool = │
00:10:29 #17995 [verbose] > │ let v2 : bool = v0 = v1 │
00:10:29 #17996 [verbose] > │ v2 │
00:10:29 #17997 [verbose] > │ and closure2 () (v0 : char) : US0 = │
00:10:29 #17998 [verbose] > │ US0_0(v0) │
00:10:29 #17999 [verbose] > │ and method2 () : (char -> US0) = │
00:10:29 #18000 [verbose] > │ closure2() │
00:10:29 #18001 [verbose] > │ and method3 (v0 : bool) : bool = │
00:10:29 #18002 [verbose] > │ v0 │
00:10:29 #18003 [verbose] > │ and method0 () : unit = │
00:10:29 #18004 [verbose] > │ let v0 : string option = None │
00:10:29 #18005 [verbose] > │ let mutable _v0 = v0 │
00:10:29 #18006 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:29 #18007 [verbose] > │ let v1 : string = null |> unbox<string> │
00:10:29 #18008 [verbose] > │ v1 │
00:10:29 #18009 [verbose] > │ #endif │
00:10:29 #18010 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:29 #18011 [verbose] > │ let v2 : string = null |> unbox<string> │
00:10:29 #18012 [verbose] > │ v2 │
00:10:29 #18013 [verbose] > │ #endif │
00:10:29 #18014 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:29 #18015 [verbose] > │ let v3 : string = null |> unbox<string> │
00:10:29 #18016 [verbose] > │ v3 │
00:10:29 #18017 [verbose] > │ #endif │
00:10:29 #18018 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:29 #18019 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:29 #18020 [verbose] > │ let v4 : (unit -> string) = System.IO.Path.GetTempPath │
00:10:29 #18021 [verbose] > │ let v5 : string = v4 () │
00:10:29 #18022 [verbose] > │ let v6 : (unit -> string) = closure0() │
00:10:29 #18023 [verbose] > │ let v7 : string = $"!{v6 ()}" │
00:10:29 #18024 [verbose] > │ let v8 : string option = None │
00:10:29 #18025 [verbose] > │ let mutable _v8 = v8 │
00:10:29 #18026 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:29 #18027 [verbose] > │ let v9 : string = method1(v5) │
00:10:29 #18028 [verbose] > │ let v10 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:29 #18029 [verbose] > │ let v11 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v9 v10 │
00:10:29 #18030 [verbose] > │ let v12 : string = "String::from($0)" │
00:10:29 #18031 [verbose] > │ let v13 : std_string_String = Fable.Core.RustInterop.emitRustExpr v11 │
00:10:29 #18032 [verbose] > │ v12 │
00:10:29 #18033 [verbose] > │ let v14 : string = "std::path::PathBuf::from($0)" │
00:10:29 #18034 [verbose] > │ let v15 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v13 v14 │
00:10:29 #18035 [verbose] > │ let v16 : string = method1(v7) │
00:10:29 #18036 [verbose] > │ let v17 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:29 #18037 [verbose] > │ let v18 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v16 v17 │
00:10:29 #18038 [verbose] > │ let v19 : string = "String::from($0)" │
00:10:29 #18039 [verbose] > │ let v20 : std_string_String = Fable.Core.RustInterop.emitRustExpr v18 │
00:10:29 #18040 [verbose] > │ v19 │
00:10:29 #18041 [verbose] > │ let v21 : string = "$0.join($1)" │
00:10:29 #18042 [verbose] > │ let v22 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:29 #18043 [verbose] > │ (v15, v20) v21 │
00:10:29 #18044 [verbose] > │ let v23 : string = "$0.display().to_string()" │
00:10:29 #18045 [verbose] > │ let v24 : std_string_String = Fable.Core.RustInterop.emitRustExpr v22 │
00:10:29 #18046 [verbose] > │ v23 │
00:10:29 #18047 [verbose] > │ let v25 : string = "fable_library_rust::String_::fromString($0)" │
00:10:29 #18048 [verbose] > │ let v26 : string = Fable.Core.RustInterop.emitRustExpr v24 v25 │
00:10:29 #18049 [verbose] > │ v26 │
00:10:29 #18050 [verbose] > │ #endif │
00:10:29 #18051 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:29 #18052 [verbose] > │ let v27 : string = null |> unbox<string> │
00:10:29 #18053 [verbose] > │ v27 │
00:10:29 #18054 [verbose] > │ #endif │
00:10:29 #18055 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:29 #18056 [verbose] > │ let v28 : string = null |> unbox<string> │
00:10:29 #18057 [verbose] > │ v28 │
00:10:29 #18058 [verbose] > │ #endif │
00:10:29 #18059 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:29 #18060 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:29 #18061 [verbose] > │ let v29 : string = System.IO.Path.Combine (v5, v7) │
00:10:29 #18062 [verbose] > │ v29 │
00:10:29 #18063 [verbose] > │ #endif │
00:10:29 #18064 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:29 #18065 [verbose] > │ let v30 : string = "path" │
00:10:29 #18066 [verbose] > │ let v31 : IPathJoin = Fable.Core.JsInterop.importAll v30 │
00:10:29 #18067 [verbose] > │ let v32 : string = "v31.join($0, $1)" │
00:10:29 #18068 [verbose] > │ let v33 : string = Fable.Core.JsInterop.emitJsExpr struct (v5, v7) v32 │
00:10:29 #18069 [verbose] > │ v33 │
00:10:29 #18070 [verbose] > │ #endif │
00:10:29 #18071 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:29 #18072 [verbose] > │ Unchecked.defaultof<string> │
00:10:29 #18073 [verbose] > │ #endif │
00:10:29 #18074 [verbose] > │ |> fun x -> _v8 <- Some x │
00:10:29 #18075 [verbose] > │ let v34 : string = _v8.Value │
00:10:29 #18076 [verbose] > │ let v35 : System.DateTime = System.DateTime.Now │
00:10:29 #18077 [verbose] > │ let v36 : System.Guid = System.Guid.NewGuid () │
00:10:29 #18078 [verbose] > │ let v37 : (System.Guid -> string) = _.ToString() │
00:10:29 #18079 [verbose] > │ let v38 : string = v37 v36 │
00:10:29 #18080 [verbose] > │ let v39 : string = v35.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:10:29 #18081 [verbose] > │ let v40 : System.Guid = System.Guid $"{v39}{v38.[v39.Length..]}" │
00:10:29 #18082 [verbose] > │ let v41 : (System.Guid -> string) = _.ToString() │
00:10:29 #18083 [verbose] > │ let v42 : string = v41 v40 │
00:10:29 #18084 [verbose] > │ let v43 : string option = None │
00:10:29 #18085 [verbose] > │ let mutable _v43 = v43 │
00:10:29 #18086 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:29 #18087 [verbose] > │ let v44 : string = method1(v34) │
00:10:29 #18088 [verbose] > │ let v45 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:29 #18089 [verbose] > │ let v46 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v44 v45 │
00:10:29 #18090 [verbose] > │ let v47 : string = "String::from($0)" │
00:10:29 #18091 [verbose] > │ let v48 : std_string_String = Fable.Core.RustInterop.emitRustExpr v46 │
00:10:29 #18092 [verbose] > │ v47 │
00:10:29 #18093 [verbose] > │ let v49 : string = "std::path::PathBuf::from($0)" │
00:10:29 #18094 [verbose] > │ let v50 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v48 v49 │
00:10:29 #18095 [verbose] > │ let v51 : string = method1(v42) │
00:10:29 #18096 [verbose] > │ let v52 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:29 #18097 [verbose] > │ let v53 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v51 v52 │
00:10:29 #18098 [verbose] > │ let v54 : string = "String::from($0)" │
00:10:29 #18099 [verbose] > │ let v55 : std_string_String = Fable.Core.RustInterop.emitRustExpr v53 │
00:10:29 #18100 [verbose] > │ v54 │
00:10:29 #18101 [verbose] > │ let v56 : string = "$0.join($1)" │
00:10:29 #18102 [verbose] > │ let v57 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:29 #18103 [verbose] > │ (v50, v55) v56 │
00:10:29 #18104 [verbose] > │ let v58 : string = "$0.display().to_string()" │
00:10:29 #18105 [verbose] > │ let v59 : std_string_String = Fable.Core.RustInterop.emitRustExpr v57 │
00:10:29 #18106 [verbose] > │ v58 │
00:10:29 #18107 [verbose] > │ let v60 : string = "fable_library_rust::String_::fromString($0)" │
00:10:29 #18108 [verbose] > │ let v61 : string = Fable.Core.RustInterop.emitRustExpr v59 v60 │
00:10:29 #18109 [verbose] > │ v61 │
00:10:29 #18110 [verbose] > │ #endif │
00:10:29 #18111 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:29 #18112 [verbose] > │ let v62 : string = null |> unbox<string> │
00:10:29 #18113 [verbose] > │ v62 │
00:10:29 #18114 [verbose] > │ #endif │
00:10:29 #18115 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:29 #18116 [verbose] > │ let v63 : string = null |> unbox<string> │
00:10:29 #18117 [verbose] > │ v63 │
00:10:29 #18118 [verbose] > │ #endif │
00:10:29 #18119 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:29 #18120 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:29 #18121 [verbose] > │ let v64 : string = System.IO.Path.Combine (v34, v42) │
00:10:29 #18122 [verbose] > │ v64 │
00:10:29 #18123 [verbose] > │ #endif │
00:10:29 #18124 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:29 #18125 [verbose] > │ let v65 : IPathJoin = Fable.Core.JsInterop.importAll v30 │
00:10:29 #18126 [verbose] > │ let v66 : string = "v65.join($0, $1)" │
00:10:29 #18127 [verbose] > │ let v67 : string = Fable.Core.JsInterop.emitJsExpr struct (v34, v42) v66 │
00:10:29 #18128 [verbose] > │ v67 │
00:10:29 #18129 [verbose] > │ #endif │
00:10:29 #18130 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:29 #18131 [verbose] > │ Unchecked.defaultof<string> │
00:10:29 #18132 [verbose] > │ #endif │
00:10:29 #18133 [verbose] > │ |> fun x -> _v43 <- Some x │
00:10:29 #18134 [verbose] > │ let v68 : string = _v43.Value │
00:10:29 #18135 [verbose] > │ v68 │
00:10:29 #18136 [verbose] > │ #endif │
00:10:29 #18137 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:29 #18138 [verbose] > │ let v69 : string = null |> unbox<string> │
00:10:29 #18139 [verbose] > │ v69 │
00:10:29 #18140 [verbose] > │ #endif │
00:10:29 #18141 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:29 #18142 [verbose] > │ Unchecked.defaultof<string> │
00:10:29 #18143 [verbose] > │ #endif │
00:10:29 #18144 [verbose] > │ |> fun x -> _v0 <- Some x │
00:10:29 #18145 [verbose] > │ let v70 : string = _v0.Value │
00:10:29 #18146 [verbose] > │ let v71 : char = System.IO.Path.DirectorySeparatorChar │
00:10:29 #18147 [verbose] > │ let v72 : string = $"%A{v70}" │
00:10:29 #18148 [verbose] > │ System.Console.WriteLine v72 │
00:10:29 #18149 [verbose] > │ let v73 : ((char -> bool) -> (string -> char option)) = Seq.tryFind │
00:10:29 #18150 [verbose] > │ let v74 : (char -> bool) = closure1(v71) │
00:10:29 #18151 [verbose] > │ let v75 : (string -> char option) = v73 v74 │
00:10:29 #18152 [verbose] > │ let v76 : char option = v75 v70 │
00:10:29 #18153 [verbose] > │ let v77 : (char -> US0) = method2() │
00:10:29 #18154 [verbose] > │ let v78 : US0 = US0_1 │
00:10:29 #18155 [verbose] > │ let v79 : US0 = v76 |> Option.map v77 |> Option.defaultValue v78 │
00:10:29 #18156 [verbose] > │ let v81 : bool = │
00:10:29 #18157 [verbose] > │ match v79 with │
00:10:29 #18158 [verbose] > │ | US0_1 -> (* None *) │
00:10:29 #18159 [verbose] > │ true │
00:10:29 #18160 [verbose] > │ | _ -> │
00:10:29 #18161 [verbose] > │ false │
00:10:29 #18162 [verbose] > │ let v82 : bool = v81 <> true │
00:10:29 #18163 [verbose] > │ let v84 : bool = │
00:10:29 #18164 [verbose] > │ if v82 then │
00:10:29 #18165 [verbose] > │ true │
00:10:29 #18166 [verbose] > │ else │
00:10:29 #18167 [verbose] > │ method3(v82) │
00:10:29 #18168 [verbose] > │ let v85 : string = $"__expect / actual: %A{v70} / expected: %A{v71}" │
00:10:29 #18169 [verbose] > │ let v86 : bool = v84 = false │
00:10:29 #18170 [verbose] > │ if v86 then │
00:10:29 #18171 [verbose] > │ failwith<unit> v85 │
00:10:29 #18172 [verbose] > │ method0() │
00:10:29 #18173 [verbose] > │ │
00:10:29 #18174 [verbose] > │ "C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20240410-1914-2919-1991-13f8 │
00:10:29 #18175 [verbose] > │ b546aec7" │
00:10:29 #18176 [verbose] > │ │
00:10:29 #18177 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:29 #18178 [verbose] >
00:10:29 #18179 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:29 #18180 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:29 #18181 [verbose] > │ ## directory_info │
00:10:29 #18182 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:29 #18183 [verbose] >
00:10:29 #18184 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:29 #18185 [verbose] > nominal directory_info = $'System.IO.DirectoryInfo'
00:10:29 #18186 [verbose] >
00:10:29 #18187 [verbose] > inl directory_info (path : string) : directory_info =
00:10:29 #18188 [verbose] > path |> $'`directory_info '
00:10:29 #18189 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5466402083aea3dc26c9b1b4876f1778846baf79383e479b88a8836487b7e821\main.spi
00:10:30 #18190 [verbose] >
00:10:30 #18191 [verbose] > ╭─[ 298.05ms - stdout ]────────────────────────────────────────────────────────╮
00:10:30 #18192 [verbose] > │ () │
00:10:30 #18193 [verbose] > │ │
00:10:30 #18194 [verbose] > │ │
00:10:30 #18195 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:30 #18196 [verbose] >
00:10:30 #18197 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:30 #18198 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:30 #18199 [verbose] > │ ## directory_info_exists │
00:10:30 #18200 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:30 #18201 [verbose] >
00:10:30 #18202 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:30 #18203 [verbose] > inl directory_info_exists (info : directory_info) : bool =
00:10:30 #18204 [verbose] > run_target function
00:10:30 #18205 [verbose] > | Fsharp (Native) => fun () =>
00:10:30 #18206 [verbose] > $'!info.Exists'
00:10:30 #18207 [verbose] > | _ => fun () => null ()
00:10:30 #18208 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d68c04ebda50d54a988fc8b0a91d92d14503d25de13ce8d191cdf9bcb1695ab3\main.spi
00:10:30 #18209 [verbose] >
00:10:30 #18210 [verbose] > ╭─[ 268.47ms - stdout ]────────────────────────────────────────────────────────╮
00:10:30 #18211 [verbose] > │ () │
00:10:30 #18212 [verbose] > │ │
00:10:30 #18213 [verbose] > │ │
00:10:30 #18214 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:30 #18215 [verbose] >
00:10:30 #18216 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:30 #18217 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:30 #18218 [verbose] > │ ## directory_info_creation_time │
00:10:30 #18219 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:30 #18220 [verbose] >
00:10:30 #18221 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:30 #18222 [verbose] > inl directory_info_creation_time (info : directory_info) : date_time.date_time =
00:10:30 #18223 [verbose] > run_target function
00:10:30 #18224 [verbose] > | Fsharp (Native) => fun () =>
00:10:30 #18225 [verbose] > $'!info.CreationTime'
00:10:30 #18226 [verbose] > | _ => fun () => null ()
00:10:30 #18227 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\7da088a91c81266592eca6af105ecb47c29efd74ac091ebb8a58f4e661bc6c30\main.spi
00:10:30 #18228 [verbose] >
00:10:30 #18229 [verbose] > ╭─[ 228.86ms - stdout ]────────────────────────────────────────────────────────╮
00:10:30 #18230 [verbose] > │ () │
00:10:30 #18231 [verbose] > │ │
00:10:30 #18232 [verbose] > │ │
00:10:30 #18233 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:30 #18234 [verbose] >
00:10:30 #18235 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:30 #18236 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:30 #18237 [verbose] > │ ## directory_info_name │
00:10:30 #18238 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:30 #18239 [verbose] >
00:10:30 #18240 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:30 #18241 [verbose] > inl directory_info_name (info : directory_info) : string =
00:10:30 #18242 [verbose] > run_target function
00:10:30 #18243 [verbose] > | Fsharp (Native) => fun () =>
00:10:30 #18244 [verbose] > $'!info.Name'
00:10:30 #18245 [verbose] > | _ => fun () => null ()
00:10:30 #18246 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\02ded3fb4ac663c21ae263254afea73e4b79d23b21790dc7adbb65b7b2606933\main.spi
00:10:30 #18247 [verbose] >
00:10:30 #18248 [verbose] > ╭─[ 382.68ms - stdout ]────────────────────────────────────────────────────────╮
00:10:30 #18249 [verbose] > │ () │
00:10:30 #18250 [verbose] > │ │
00:10:30 #18251 [verbose] > │ │
00:10:30 #18252 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:30 #18253 [verbose] >
00:10:30 #18254 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:30 #18255 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:30 #18256 [verbose] > │ ## directory_info_full_name │
00:10:30 #18257 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:30 #18258 [verbose] >
00:10:30 #18259 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:30 #18260 [verbose] > inl directory_info_full_name (info : directory_info) : string =
00:10:30 #18261 [verbose] > run_target function
00:10:30 #18262 [verbose] > | Fsharp (Native) => fun () =>
00:10:30 #18263 [verbose] > $'!info.FullName'
00:10:30 #18264 [verbose] > | _ => fun () => null ()
00:10:31 #18265 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f33f48a1e0e53f9b2a7aa374be2ebdc3297314e1cd3a311ab69122d2e979ae2e\main.spi
00:10:31 #18266 [verbose] >
00:10:31 #18267 [verbose] > ╭─[ 264.82ms - stdout ]────────────────────────────────────────────────────────╮
00:10:31 #18268 [verbose] > │ () │
00:10:31 #18269 [verbose] > │ │
00:10:31 #18270 [verbose] > │ │
00:10:31 #18271 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:31 #18272 [verbose] >
00:10:31 #18273 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:31 #18274 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:31 #18275 [verbose] > │ ## get_source_directory │
00:10:31 #18276 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:31 #18277 [verbose] >
00:10:31 #18278 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:31 #18279 [verbose] > inl get_source_directory () =
00:10:31 #18280 [verbose] > $'__SOURCE_DIRECTORY__' : string
00:10:31 #18281 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5e1ac56a7ac1c0051346307b84c5ad8ad4996d99ebfafb6b3a013208d106791e\main.spi
00:10:31 #18282 [verbose] >
00:10:31 #18283 [verbose] > ╭─[ 275.95ms - stdout ]────────────────────────────────────────────────────────╮
00:10:31 #18284 [verbose] > │ () │
00:10:31 #18285 [verbose] > │ │
00:10:31 #18286 [verbose] > │ │
00:10:31 #18287 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:31 #18288 [verbose] >
00:10:31 #18289 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:31 #18290 [verbose] > // // test
00:10:31 #18291 [verbose] >
00:10:31 #18292 [verbose] > get_source_directory ()
00:10:31 #18293 [verbose] > |> directory_info
00:10:31 #18294 [verbose] > |> directory_info_name
00:10:31 #18295 [verbose] > |> _assert_eq "spiral"
00:10:31 #18296 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\181a3e7fc4797a329b7900bfb753b38a5f8630b6da11347da236209cc94d15e9\main.spi
00:10:31 #18297 [verbose] >
00:10:31 #18298 [verbose] > ╭─[ 320.70ms - stdout ]────────────────────────────────────────────────────────╮
00:10:31 #18299 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:10:31 #18300 [verbose] > │ v0 │
00:10:31 #18301 [verbose] > │ and method0 () : unit = │
00:10:31 #18302 [verbose] > │ let v0 : string = __SOURCE_DIRECTORY__ │
00:10:31 #18303 [verbose] > │ let v1 : (string -> System.IO.DirectoryInfo) = System.IO.DirectoryInfo │
00:10:31 #18304 [verbose] > │ let v2 : System.IO.DirectoryInfo = v1 v0 │
00:10:31 #18305 [verbose] > │ let v3 : string option = None │
00:10:31 #18306 [verbose] > │ let mutable _v3 = v3 │
00:10:31 #18307 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:31 #18308 [verbose] > │ let v4 : string = null |> unbox<string> │
00:10:31 #18309 [verbose] > │ v4 │
00:10:31 #18310 [verbose] > │ #endif │
00:10:31 #18311 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:31 #18312 [verbose] > │ let v5 : string = null |> unbox<string> │
00:10:31 #18313 [verbose] > │ v5 │
00:10:31 #18314 [verbose] > │ #endif │
00:10:31 #18315 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:31 #18316 [verbose] > │ let v6 : string = null |> unbox<string> │
00:10:31 #18317 [verbose] > │ v6 │
00:10:31 #18318 [verbose] > │ #endif │
00:10:31 #18319 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:31 #18320 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:31 #18321 [verbose] > │ let v7 : string = v2.Name │
00:10:31 #18322 [verbose] > │ v7 │
00:10:31 #18323 [verbose] > │ #endif │
00:10:31 #18324 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:31 #18325 [verbose] > │ let v8 : string = null |> unbox<string> │
00:10:31 #18326 [verbose] > │ v8 │
00:10:31 #18327 [verbose] > │ #endif │
00:10:31 #18328 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:31 #18329 [verbose] > │ Unchecked.defaultof<string> │
00:10:31 #18330 [verbose] > │ #endif │
00:10:31 #18331 [verbose] > │ |> fun x -> _v3 <- Some x │
00:10:31 #18332 [verbose] > │ let v9 : string = _v3.Value │
00:10:31 #18333 [verbose] > │ let v10 : string = $"%A{v9}" │
00:10:31 #18334 [verbose] > │ System.Console.WriteLine v10 │
00:10:31 #18335 [verbose] > │ let v12 : bool = v9 = "spiral" │
00:10:31 #18336 [verbose] > │ let v14 : bool = │
00:10:31 #18337 [verbose] > │ if v12 then │
00:10:31 #18338 [verbose] > │ true │
00:10:31 #18339 [verbose] > │ else │
00:10:31 #18340 [verbose] > │ method1(v12) │
00:10:31 #18341 [verbose] > │ let v15 : string = "spiral" │
00:10:31 #18342 [verbose] > │ let v16 : string = $"__expect / actual: %A{v9} / expected: %A{v15}" │
00:10:31 #18343 [verbose] > │ let v17 : bool = v14 = false │
00:10:31 #18344 [verbose] > │ if v17 then │
00:10:31 #18345 [verbose] > │ failwith<unit> v16 │
00:10:31 #18346 [verbose] > │ method0() │
00:10:31 #18347 [verbose] > │ │
00:10:31 #18348 [verbose] > │ "spiral" │
00:10:31 #18349 [verbose] > │ │
00:10:31 #18350 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:31 #18351 [verbose] >
00:10:31 #18352 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:31 #18353 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:31 #18354 [verbose] > │ ## create_directory │
00:10:31 #18355 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:31 #18356 [verbose] >
00:10:31 #18357 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:31 #18358 [verbose] > inl create_directory (path : string) : directory_info =
00:10:31 #18359 [verbose] > run_target function
00:10:31 #18360 [verbose] > | Fsharp (Native) => fun () =>
00:10:31 #18361 [verbose] > path |> $'System.IO.Directory.CreateDirectory'
00:10:31 #18362 [verbose] > | _ => fun () => null ()
00:10:31 #18363 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0b3824446321b020fd0dfa251646c22db315f9ead0c8ce415544d57b5d6fcbc8\main.spi
00:10:32 #18364 [verbose] >
00:10:32 #18365 [verbose] > ╭─[ 349.32ms - stdout ]────────────────────────────────────────────────────────╮
00:10:32 #18366 [verbose] > │ () │
00:10:32 #18367 [verbose] > │ │
00:10:32 #18368 [verbose] > │ │
00:10:32 #18369 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:32 #18370 [verbose] >
00:10:32 #18371 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:32 #18372 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:32 #18373 [verbose] > │ ## directory_exists │
00:10:32 #18374 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:32 #18375 [verbose] >
00:10:32 #18376 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:32 #18377 [verbose] > inl directory_exists (path : string) : bool =
00:10:32 #18378 [verbose] > run_target function
00:10:32 #18379 [verbose] > | Rust (Native) => fun () =>
00:10:32 #18380 [verbose] > inl path = path |> new_path_buf
00:10:32 #18381 [verbose] > (path |> path_buf_exists) && (path |> path_buf_is_dir)
00:10:32 #18382 [verbose] > | Fsharp (Native) => fun () =>
00:10:32 #18383 [verbose] > path |> $'System.IO.Directory.Exists'
00:10:32 #18384 [verbose] > | TypeScript (Native) => fun () =>
00:10:32 #18385 [verbose] > global "type IFsExistsSync = abstract existsSync: path: string ->
00:10:32 #18386 [verbose] > bool"
00:10:32 #18387 [verbose] > inl fs : $'IFsExistsSync' = ts.import_all "fs"
00:10:32 #18388 [verbose] > ts.emit_expr path $'"!fs.existsSync($0)"'
00:10:32 #18389 [verbose] > | _ => fun () => null ()
00:10:32 #18390 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\40ae47aa17b6f6fc26907ecf2e785469ad7d25084e81f015eecbfdc13ea0e033\main.spi
00:10:32 #18391 [verbose] >
00:10:32 #18392 [verbose] > ╭─[ 266.27ms - stdout ]────────────────────────────────────────────────────────╮
00:10:32 #18393 [verbose] > │ () │
00:10:32 #18394 [verbose] > │ │
00:10:32 #18395 [verbose] > │ │
00:10:32 #18396 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:32 #18397 [verbose] >
00:10:32 #18398 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:32 #18399 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:32 #18400 [verbose] > │ ## directory_get_parent │
00:10:32 #18401 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:32 #18402 [verbose] >
00:10:32 #18403 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:32 #18404 [verbose] > inl directory_get_parent (path : string) : optionm'.option' string =
00:10:32 #18405 [verbose] > run_target function
00:10:32 #18406 [verbose] > | Rust (Native) => fun () =>
00:10:32 #18407 [verbose] > path
00:10:32 #18408 [verbose] > |> new_path_buf
00:10:32 #18409 [verbose] > |> path_buf_parent
00:10:32 #18410 [verbose] > |> optionm'.try'
00:10:32 #18411 [verbose] > |> path_buf_display
00:10:32 #18412 [verbose] > |> sm'.from_std_string
00:10:32 #18413 [verbose] > |> Some
00:10:32 #18414 [verbose] > | Fsharp (Native) => fun () =>
00:10:32 #18415 [verbose] > inl parent : directory_info = path |>
00:10:32 #18416 [verbose] > $'System.IO.Directory.GetParent'
00:10:32 #18417 [verbose] > if parent =. null ()
00:10:32 #18418 [verbose] > then None
00:10:32 #18419 [verbose] > else parent |> directory_info_full_name |> Some
00:10:32 #18420 [verbose] > | TypeScript _ => fun () =>
00:10:32 #18421 [verbose] > global "type IPathDirname = abstract dirname: path: string ->
00:10:32 #18422 [verbose] > string"
00:10:32 #18423 [verbose] > inl fs : $'IPathDirname' = ts.import_all "path"
00:10:32 #18424 [verbose] > ts.emit_expr path $'"!fs.dirname($0)"' |> Some
00:10:32 #18425 [verbose] > | _ => fun () => null ()
00:10:32 #18426 [verbose] > |> optionm'.box
00:10:32 #18427 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ae12221c9cab3397fb872e84f4879eaf43d1cf3b699222035ac988407a271651\main.spi
00:10:32 #18428 [verbose] >
00:10:32 #18429 [verbose] > ╭─[ 288.54ms - stdout ]────────────────────────────────────────────────────────╮
00:10:32 #18430 [verbose] > │ () │
00:10:32 #18431 [verbose] > │ │
00:10:32 #18432 [verbose] > │ │
00:10:32 #18433 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:32 #18434 [verbose] >
00:10:32 #18435 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:32 #18436 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:32 #18437 [verbose] > │ ## file_delete │
00:10:32 #18438 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:32 #18439 [verbose] >
00:10:32 #18440 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:32 #18441 [verbose] > inl file_delete (path : string) : () =
00:10:32 #18442 [verbose] > run_target function
00:10:32 #18443 [verbose] > | Fsharp (Native) => fun () =>
00:10:32 #18444 [verbose] > path |> $'System.IO.File.Delete'
00:10:32 #18445 [verbose] > | _ => fun () => null ()
00:10:33 #18446 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5306aa46322207ec81cbcaa207c76eb977ea6edd40aa4343e79fc2f5d851d040\main.spi
00:10:33 #18447 [verbose] >
00:10:33 #18448 [verbose] > ╭─[ 524.19ms - stdout ]────────────────────────────────────────────────────────╮
00:10:33 #18449 [verbose] > │ () │
00:10:33 #18450 [verbose] > │ │
00:10:33 #18451 [verbose] > │ │
00:10:33 #18452 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:33 #18453 [verbose] >
00:10:33 #18454 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:33 #18455 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:33 #18456 [verbose] > │ ## file_move │
00:10:33 #18457 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:33 #18458 [verbose] >
00:10:33 #18459 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:33 #18460 [verbose] > inl file_move (old_path : string) (new_path : string) : () =
00:10:33 #18461 [verbose] > run_target function
00:10:33 #18462 [verbose] > | Fsharp (Native) => fun () =>
00:10:33 #18463 [verbose] > $'System.IO.File.Move (!old_path, !new_path)'
00:10:33 #18464 [verbose] > | _ => fun () => null ()
00:10:33 #18465 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3a0114adb85271345bd3c502a89ab481d85cd1c959f36206b4ca983e6a2e481d\main.spi
00:10:33 #18466 [verbose] >
00:10:33 #18467 [verbose] > ╭─[ 264.30ms - stdout ]────────────────────────────────────────────────────────╮
00:10:33 #18468 [verbose] > │ () │
00:10:33 #18469 [verbose] > │ │
00:10:33 #18470 [verbose] > │ │
00:10:33 #18471 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:33 #18472 [verbose] >
00:10:33 #18473 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:33 #18474 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:33 #18475 [verbose] > │ ## file_exists │
00:10:33 #18476 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:33 #18477 [verbose] >
00:10:33 #18478 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:33 #18479 [verbose] > inl file_exists (path : string) : bool =
00:10:33 #18480 [verbose] > run_target function
00:10:33 #18481 [verbose] > | Rust (Native) => fun () =>
00:10:33 #18482 [verbose] > inl path_buf = path |> new_path_buf
00:10:33 #18483 [verbose] > (path_buf |> path_buf_exists) && (path_buf |> path_buf_is_file)
00:10:33 #18484 [verbose] > | Fsharp (Native) => fun () =>
00:10:33 #18485 [verbose] > path |> $'System.IO.File.Exists'
00:10:33 #18486 [verbose] > | TypeScript (Native) => fun () =>
00:10:33 #18487 [verbose] > global "type IFsExistsSync = abstract existsSync: path: string ->
00:10:33 #18488 [verbose] > bool"
00:10:33 #18489 [verbose] > inl fs : $'IFsExistsSync' = ts.import_all "fs"
00:10:33 #18490 [verbose] > ts.emit_expr path $'"!fs.existsSync($0)"'
00:10:33 #18491 [verbose] > | _ => fun () => null ()
00:10:33 #18492 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e11492c41308cf6e1b99f8ebdc8d37bbf2b2ff5ebcf4a250290ddb1887873007\main.spi
00:10:33 #18493 [verbose] >
00:10:33 #18494 [verbose] > ╭─[ 323.84ms - stdout ]────────────────────────────────────────────────────────╮
00:10:33 #18495 [verbose] > │ () │
00:10:33 #18496 [verbose] > │ │
00:10:33 #18497 [verbose] > │ │
00:10:33 #18498 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:33 #18499 [verbose] >
00:10:33 #18500 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:33 #18501 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:33 #18502 [verbose] > │ ## directory_delete │
00:10:33 #18503 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:33 #18504 [verbose] >
00:10:33 #18505 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:33 #18506 [verbose] > inl directory_delete recursive (path : string) : () =
00:10:33 #18507 [verbose] > run_target function
00:10:33 #18508 [verbose] > | Fsharp (Native) => fun () =>
00:10:33 #18509 [verbose] > $'System.IO.Directory.Delete (!path, !recursive)'
00:10:33 #18510 [verbose] > | _ => fun () => null ()
00:10:34 #18511 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c54873952c739f5756cadd40bf3eda5694966bbe14a2927e2d7f2fd941bf08fa\main.spi
00:10:34 #18512 [verbose] >
00:10:34 #18513 [verbose] > ╭─[ 299.46ms - stdout ]────────────────────────────────────────────────────────╮
00:10:34 #18514 [verbose] > │ () │
00:10:34 #18515 [verbose] > │ │
00:10:34 #18516 [verbose] > │ │
00:10:34 #18517 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:34 #18518 [verbose] >
00:10:34 #18519 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:34 #18520 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:34 #18521 [verbose] > │ ## read_all_text_async │
00:10:34 #18522 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:34 #18523 [verbose] >
00:10:34 #18524 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:34 #18525 [verbose] > inl read_all_text_async (path : string) : _ string =
00:10:34 #18526 [verbose] > run_target function
00:10:34 #18527 [verbose] > | Fsharp (Native) => fun () =>
00:10:34 #18528 [verbose] > path |> $'System.IO.File.ReadAllTextAsync' |> async.await_task
00:10:34 #18529 [verbose] > | _ => fun () => null ()
00:10:34 #18530 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a7b948b58dabef3ef1a80130b651791a0ab08a160dfde28f920754b7bdddd2f6\main.spi
00:10:34 #18531 [verbose] >
00:10:34 #18532 [verbose] > ╭─[ 253.67ms - stdout ]────────────────────────────────────────────────────────╮
00:10:34 #18533 [verbose] > │ () │
00:10:34 #18534 [verbose] > │ │
00:10:34 #18535 [verbose] > │ │
00:10:34 #18536 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:34 #18537 [verbose] >
00:10:34 #18538 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:34 #18539 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:34 #18540 [verbose] > │ ## file_exists_content │
00:10:34 #18541 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:34 #18542 [verbose] >
00:10:34 #18543 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:34 #18544 [verbose] > inl file_exists_content path content : _ bool =
00:10:34 #18545 [verbose] > run_target function
00:10:34 #18546 [verbose] > | Fsharp (Native) => fun () =>
00:10:34 #18547 [verbose] > fun () =>
00:10:34 #18548 [verbose] > if path |> file_exists |> not
00:10:34 #18549 [verbose] > then false |> return |> fun x => $'(*' : ()
00:10:34 #18550 [verbose] > else
00:10:34 #18551 [verbose] > $'*) else' : ()
00:10:34 #18552 [verbose] > inl existing_content = path |> read_all_text_async |>
00:10:34 #18553 [verbose] > async.let'
00:10:34 #18554 [verbose] > content = existing_content |> return |> fun x => $'(*' : ()
00:10:34 #18555 [verbose] > |> fun x => $'*)' : ()
00:10:34 #18556 [verbose] > |> async.new_async_unit
00:10:34 #18557 [verbose] > | _ => fun () => null ()
00:10:34 #18558 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\32740c64cd2f2a256530c58c6acbc42777c73a8591614d9366647ff41d26fbaf\main.spi
00:10:34 #18559 [verbose] >
00:10:34 #18560 [verbose] > ╭─[ 320.26ms - stdout ]────────────────────────────────────────────────────────╮
00:10:34 #18561 [verbose] > │ () │
00:10:34 #18562 [verbose] > │ │
00:10:34 #18563 [verbose] > │ │
00:10:34 #18564 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:34 #18565 [verbose] >
00:10:34 #18566 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:34 #18567 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:34 #18568 [verbose] > │ ## write_all_text │
00:10:34 #18569 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:34 #18570 [verbose] >
00:10:34 #18571 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:34 #18572 [verbose] > inl write_all_text (path : string) (text : string) : () =
00:10:34 #18573 [verbose] > run_target function
00:10:34 #18574 [verbose] > | Fsharp (Native) => fun () =>
00:10:34 #18575 [verbose] > $'System.IO.File.WriteAllText (!path, !text)'
00:10:34 #18576 [verbose] > | _ => fun () => null ()
00:10:34 #18577 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\715ed0d60688f58d15b38e180149d18cf5f055c038a816aa744bf17d0263748c\main.spi
00:10:35 #18578 [verbose] >
00:10:35 #18579 [verbose] > ╭─[ 299.05ms - stdout ]────────────────────────────────────────────────────────╮
00:10:35 #18580 [verbose] > │ () │
00:10:35 #18581 [verbose] > │ │
00:10:35 #18582 [verbose] > │ │
00:10:35 #18583 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:35 #18584 [verbose] >
00:10:35 #18585 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:35 #18586 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:35 #18587 [verbose] > │ ## write_all_text_async │
00:10:35 #18588 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:35 #18589 [verbose] >
00:10:35 #18590 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:35 #18591 [verbose] > inl write_all_text_async (path : string) (text : string) : _ () =
00:10:35 #18592 [verbose] > run_target function
00:10:35 #18593 [verbose] > | Fsharp (Native) => fun () =>
00:10:35 #18594 [verbose] > $'System.IO.File.WriteAllTextAsync (!path, !text)' |>
00:10:35 #18595 [verbose] > async.await_task
00:10:35 #18596 [verbose] > | _ => fun () => null ()
00:10:35 #18597 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\bc7ccaca373947724a436da27e53423e0d92ae3438fb4b27adde5cecb8f3bc6c\main.spi
00:10:35 #18598 [verbose] >
00:10:35 #18599 [verbose] > ╭─[ 330.64ms - stdout ]────────────────────────────────────────────────────────╮
00:10:35 #18600 [verbose] > │ () │
00:10:35 #18601 [verbose] > │ │
00:10:35 #18602 [verbose] > │ │
00:10:35 #18603 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:35 #18604 [verbose] >
00:10:35 #18605 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:35 #18606 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:35 #18607 [verbose] > │ ## write_all_text_exists │
00:10:35 #18608 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:35 #18609 [verbose] >
00:10:35 #18610 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:35 #18611 [verbose] > inl write_all_text_exists path contents =
00:10:35 #18612 [verbose] > fun () =>
00:10:35 #18613 [verbose] > inl exists' = contents |> file_exists_content path |> async.let'
00:10:35 #18614 [verbose] > if not exists'
00:10:35 #18615 [verbose] > then contents |> write_all_text_async path |> async.do
00:10:35 #18616 [verbose] > |> async.new_async
00:10:35 #18617 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\dfdcb0af56a76e1f5e3cfe865242c732fdfe85f1fb6fcff3238c1cbbc89297e3\main.spi
00:10:35 #18618 [verbose] >
00:10:35 #18619 [verbose] > ╭─[ 361.73ms - stdout ]────────────────────────────────────────────────────────╮
00:10:35 #18620 [verbose] > │ () │
00:10:35 #18621 [verbose] > │ │
00:10:35 #18622 [verbose] > │ │
00:10:35 #18623 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:35 #18624 [verbose] >
00:10:35 #18625 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:35 #18626 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:35 #18627 [verbose] > │ ## delete_directory_async │
00:10:35 #18628 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:35 #18629 [verbose] >
00:10:35 #18630 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:35 #18631 [verbose] > inl delete_directory_async path : _ i64 =
00:10:35 #18632 [verbose] > run_target function
00:10:35 #18633 [verbose] > | Fsharp (Native) => fun () =>
00:10:35 #18634 [verbose] > let rec loop (retry : i64) =
00:10:35 #18635 [verbose] > fun () =>
00:10:35 #18636 [verbose] > try_unit
00:10:35 #18637 [verbose] > fun () =>
00:10:35 #18638 [verbose] > path |> directory_delete true
00:10:35 #18639 [verbose] > retry |> return
00:10:35 #18640 [verbose] > fun ex =>
00:10:35 #18641 [verbose] > if retry % 100i64 = 0 then
00:10:35 #18642 [verbose] > inl ex = ex |> sm'.format_exception
00:10:35 #18643 [verbose] > let get_locals () = $'$"path: {!path |>
00:10:35 #18644 [verbose] > !get_file_name} / ex: {!ex} / {!get_locals ()}"' : string
00:10:35 #18645 [verbose] > // trace Debug (fun () ->
00:10:35 #18646 [verbose] > "delete_directory_async") getLocals
00:10:35 #18647 [verbose] > console.write_line ($'$"delete_directory_async
00:10:35 #18648 [verbose] > {!get_locals ()}"' : string)
00:10:35 #18649 [verbose] > async.sleep 10i32 |> async.do
00:10:35 #18650 [verbose] > loop (retry + 1) |> async.return_await
00:10:35 #18651 [verbose] > |> async.new_async
00:10:35 #18652 [verbose] > loop 0
00:10:35 #18653 [verbose] > | _ => fun () => null ()
00:10:35 #18654 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8fd1ba2f183ac33c40bee7160f6deb138a363ebaa7cb1f09ad731e64e197f09d\main.spi
00:10:36 #18655 [verbose] >
00:10:36 #18656 [verbose] > ╭─[ 246.73ms - stdout ]────────────────────────────────────────────────────────╮
00:10:36 #18657 [verbose] > │ () │
00:10:36 #18658 [verbose] > │ │
00:10:36 #18659 [verbose] > │ │
00:10:36 #18660 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:36 #18661 [verbose] >
00:10:36 #18662 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:36 #18663 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:36 #18664 [verbose] > │ ## create_temp_directory │
00:10:36 #18665 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:36 #18666 [verbose] >
00:10:36 #18667 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:36 #18668 [verbose] > inl create_temp_directory () =
00:10:36 #18669 [verbose] > run_target function
00:10:36 #18670 [verbose] > | Fsharp (Native) => fun () =>
00:10:36 #18671 [verbose] > inl temp_folder = create_temp_directory_name ()
00:10:36 #18672 [verbose] > inl result = temp_folder |> create_directory
00:10:36 #18673 [verbose] >
00:10:36 #18674 [verbose] > inl exists' = result |> directory_info_exists
00:10:36 #18675 [verbose] > if not exists' then
00:10:36 #18676 [verbose] > inl creation_time = result |> directory_info_creation_time
00:10:36 #18677 [verbose] > inl result = ($'{| Exists = !exists'; CreationTime =
00:10:36 #18678 [verbose] > !creation_time |}' : any) |> sm'.format_debug
00:10:36 #18679 [verbose] > inl get_locals () : string =
00:10:36 #18680 [verbose] > $'$"temp_folder: {!temp_folder} / result: {!result}
00:10:36 #18681 [verbose] > {!get_locals ()}"'
00:10:36 #18682 [verbose] > // trace Debug (fun () => "createTempDirectory") get_locals
00:10:36 #18683 [verbose] > console.write_line ($'$"create_temp_directory / {!get_locals
00:10:36 #18684 [verbose] > ()}"' : string)
00:10:36 #18685 [verbose] > inl disposable : _ () = new_disposable fun () =>
00:10:36 #18686 [verbose] > temp_folder
00:10:36 #18687 [verbose] > |> delete_directory_async
00:10:36 #18688 [verbose] > |> async.ignore
00:10:36 #18689 [verbose] > |> async.run_synchronously
00:10:36 #18690 [verbose] > temp_folder, disposable
00:10:36 #18691 [verbose] > | _ => fun () => null ()
00:10:36 #18692 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ec84f40cf1c325b18552f94d957c014f432462c26ecd5d2f7dcc8e5db6124528\main.spi
00:10:36 #18693 [verbose] >
00:10:36 #18694 [verbose] > ╭─[ 287.65ms - stdout ]────────────────────────────────────────────────────────╮
00:10:36 #18695 [verbose] > │ () │
00:10:36 #18696 [verbose] > │ │
00:10:36 #18697 [verbose] > │ │
00:10:36 #18698 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:36 #18699 [verbose] >
00:10:36 #18700 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:36 #18701 [verbose] > // // test
00:10:36 #18702 [verbose] >
00:10:36 #18703 [verbose] > inl path, disposable = create_temp_directory ()
00:10:36 #18704 [verbose] > disposable |> use |> ignore
00:10:36 #18705 [verbose] > path
00:10:36 #18706 [verbose] > |> directory_exists
00:10:36 #18707 [verbose] > |> _assert_eq true
00:10:36 #18708 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\6b9cc67ff5d0d8345bcdb16a075ac606918ad98c11e88e598beff738c5db1326\main.spi
00:10:37 #18709 [verbose] >
00:10:37 #18710 [verbose] > ╭─[ 1.19s - stdout ]───────────────────────────────────────────────────────────╮
00:10:37 #18711 [verbose] > │ type IPathJoin = abstract join: [<System.ParamArray>] paths: string[] -> │
00:10:37 #18712 [verbose] > │ string │
00:10:37 #18713 [verbose] > │ type IFsExistsSync = abstract existsSync: path: string -> bool │
00:10:37 #18714 [verbose] > │ let rec closure0 () () : string = │
00:10:37 #18715 [verbose] > │ let v0 : string option = None │
00:10:37 #18716 [verbose] > │ let mutable _v0 = v0 │
00:10:37 #18717 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:37 #18718 [verbose] > │ let v1 : string = null |> unbox<string> │
00:10:37 #18719 [verbose] > │ v1 │
00:10:37 #18720 [verbose] > │ #endif │
00:10:37 #18721 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:37 #18722 [verbose] > │ let v2 : string = null |> unbox<string> │
00:10:37 #18723 [verbose] > │ v2 │
00:10:37 #18724 [verbose] > │ #endif │
00:10:37 #18725 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:37 #18726 [verbose] > │ let v3 : string = null |> unbox<string> │
00:10:37 #18727 [verbose] > │ v3 │
00:10:37 #18728 [verbose] > │ #endif │
00:10:37 #18729 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:37 #18730 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:37 #18731 [verbose] > │ let v4 : string = │
00:10:37 #18732 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:10:37 #18733 [verbose] > │ v4 │
00:10:37 #18734 [verbose] > │ #endif │
00:10:37 #18735 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:37 #18736 [verbose] > │ let v5 : string = null |> unbox<string> │
00:10:37 #18737 [verbose] > │ v5 │
00:10:37 #18738 [verbose] > │ #endif │
00:10:37 #18739 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:37 #18740 [verbose] > │ Unchecked.defaultof<string> │
00:10:37 #18741 [verbose] > │ #endif │
00:10:37 #18742 [verbose] > │ |> fun x -> _v0 <- Some x │
00:10:37 #18743 [verbose] > │ let v6 : string = _v0.Value │
00:10:37 #18744 [verbose] > │ v6 │
00:10:37 #18745 [verbose] > │ and method1 (v0 : string) : string = │
00:10:37 #18746 [verbose] > │ v0 │
00:10:37 #18747 [verbose] > │ and closure2 () () : string = │
00:10:37 #18748 [verbose] > │ let v0 : string = "" │
00:10:37 #18749 [verbose] > │ v0 │
00:10:37 #18750 [verbose] > │ and closure1 (v0 : string, v1 : string) () : string = │
00:10:37 #18751 [verbose] > │ let v2 : (unit -> string) = closure2() │
00:10:37 #18752 [verbose] > │ let v3 : string = $"temp_folder: {v0} / result: {v1} {v2 ()}" │
00:10:37 #18753 [verbose] > │ v3 │
00:10:37 #18754 [verbose] > │ and closure5 () (v0 : string) : string = │
00:10:37 #18755 [verbose] > │ let v1 : string option = None │
00:10:37 #18756 [verbose] > │ let mutable _v1 = v1 │
00:10:37 #18757 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:37 #18758 [verbose] > │ let v2 : string = null |> unbox<string> │
00:10:37 #18759 [verbose] > │ v2 │
00:10:37 #18760 [verbose] > │ #endif │
00:10:37 #18761 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:37 #18762 [verbose] > │ let v3 : string = null |> unbox<string> │
00:10:37 #18763 [verbose] > │ v3 │
00:10:37 #18764 [verbose] > │ #endif │
00:10:37 #18765 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:37 #18766 [verbose] > │ let v4 : string = null |> unbox<string> │
00:10:37 #18767 [verbose] > │ v4 │
00:10:37 #18768 [verbose] > │ #endif │
00:10:37 #18769 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:37 #18770 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:37 #18771 [verbose] > │ let v5 : (string -> string) = System.IO.Path.GetFileName │
00:10:37 #18772 [verbose] > │ let v6 : string = v5 v0 │
00:10:37 #18773 [verbose] > │ v6 │
00:10:37 #18774 [verbose] > │ #endif │
00:10:37 #18775 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:37 #18776 [verbose] > │ let v7 : string = null |> unbox<string> │
00:10:37 #18777 [verbose] > │ v7 │
00:10:37 #18778 [verbose] > │ #endif │
00:10:37 #18779 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:37 #18780 [verbose] > │ Unchecked.defaultof<string> │
00:10:37 #18781 [verbose] > │ #endif │
00:10:37 #18782 [verbose] > │ |> fun x -> _v1 <- Some x │
00:10:37 #18783 [verbose] > │ let v8 : string = _v1.Value │
00:10:37 #18784 [verbose] > │ v8 │
00:10:37 #18785 [verbose] > │ and method3 (v0 : string, v1 : string) : string = │
00:10:37 #18786 [verbose] > │ let v2 : (string -> string) = closure5() │
00:10:37 #18787 [verbose] > │ let v3 : (unit -> string) = closure2() │
00:10:37 #18788 [verbose] > │ let v4 : string = $"path: {v0 |> v2} / ex: {v1} / {v3 ()}" │
00:10:37 #18789 [verbose] > │ v4 │
00:10:37 #18790 [verbose] > │ and closure4 (v0 : string, v1 : string) () : string = │
00:10:37 #18791 [verbose] > │ method3(v0, v1) │
00:10:37 #18792 [verbose] > │ and method2 (v0 : string, v1 : int64) : Async<int64> = │
00:10:37 #18793 [verbose] > │ let v2 : Async<int64> option = None │
00:10:37 #18794 [verbose] > │ let mutable _v2 = v2 │
00:10:37 #18795 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:37 #18796 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:37 #18797 [verbose] > │ v3 │
00:10:37 #18798 [verbose] > │ #endif │
00:10:37 #18799 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:37 #18800 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:37 #18801 [verbose] > │ v4 │
00:10:37 #18802 [verbose] > │ #endif │
00:10:37 #18803 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:37 #18804 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:10:37 #18805 [verbose] > │ v5 │
00:10:37 #18806 [verbose] > │ #endif │
00:10:37 #18807 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:37 #18808 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:37 #18809 [verbose] > │ let v6 : Async<int64> option = None │
00:10:37 #18810 [verbose] > │ let mutable _v6 = v6 │
00:10:37 #18811 [verbose] > │ async { │
00:10:37 #18812 [verbose] > │ try │
00:10:37 #18813 [verbose] > │ let v7 : unit option = None │
00:10:37 #18814 [verbose] > │ let mutable _v7 = v7 │
00:10:37 #18815 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:37 #18816 [verbose] > │ null |> unbox<unit> │
00:10:37 #18817 [verbose] > │ () │
00:10:37 #18818 [verbose] > │ #endif │
00:10:37 #18819 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:37 #18820 [verbose] > │ null |> unbox<unit> │
00:10:37 #18821 [verbose] > │ () │
00:10:37 #18822 [verbose] > │ #endif │
00:10:37 #18823 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:37 #18824 [verbose] > │ null |> unbox<unit> │
00:10:37 #18825 [verbose] > │ () │
00:10:37 #18826 [verbose] > │ #endif │
00:10:37 #18827 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:37 #18828 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:37 #18829 [verbose] > │ System.IO.Directory.Delete (v0, true) │
00:10:37 #18830 [verbose] > │ () │
00:10:37 #18831 [verbose] > │ #endif │
00:10:37 #18832 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:37 #18833 [verbose] > │ null |> unbox<unit> │
00:10:37 #18834 [verbose] > │ () │
00:10:37 #18835 [verbose] > │ #endif │
00:10:37 #18836 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:37 #18837 [verbose] > │ Unchecked.defaultof<unit> │
00:10:37 #18838 [verbose] > │ #endif │
00:10:37 #18839 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:37 #18840 [verbose] > │ _v7.Value │
00:10:37 #18841 [verbose] > │ return v1 │
00:10:37 #18842 [verbose] > │ with ex -> │
00:10:37 #18843 [verbose] > │ let v8 : exn = ex │
00:10:37 #18844 [verbose] > │ let v9 : int64 = v1 % 100L │
00:10:37 #18845 [verbose] > │ let v10 : bool = v9 = 0L │
00:10:37 #18846 [verbose] > │ if v10 then │
00:10:37 #18847 [verbose] > │ let v11 : string option = None │
00:10:37 #18848 [verbose] > │ let mutable _v11 = v11 │
00:10:37 #18849 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:37 #18850 [verbose] > │ let v12 : string = $"%A{v8}" │
00:10:37 #18851 [verbose] > │ v12 │
00:10:37 #18852 [verbose] > │ #endif │
00:10:37 #18853 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:37 #18854 [verbose] > │ let v13 : string = $"%A{v8}" │
00:10:37 #18855 [verbose] > │ v13 │
00:10:37 #18856 [verbose] > │ #endif │
00:10:37 #18857 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:37 #18858 [verbose] > │ let v14 : string = $"%A{v8}" │
00:10:37 #18859 [verbose] > │ v14 │
00:10:37 #18860 [verbose] > │ #endif │
00:10:37 #18861 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:37 #18862 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:37 #18863 [verbose] > │ let v15 : string = $"{v8.GetType ()}: {v8.Message}" │
00:10:37 #18864 [verbose] > │ v15 │
00:10:37 #18865 [verbose] > │ #endif │
00:10:37 #18866 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:37 #18867 [verbose] > │ let v16 : string = $"%A{v8}" │
00:10:37 #18868 [verbose] > │ v16 │
00:10:37 #18869 [verbose] > │ #endif │
00:10:37 #18870 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:37 #18871 [verbose] > │ FABLE_COMPILER_DART │
00:10:37 #18872 [verbose] > │ Unchecked.defaultof<string> │
00:10:37 #18873 [verbose] > │ #endif │
00:10:37 #18874 [verbose] > │ |> fun x -> _v11 <- Some x │
00:10:37 #18875 [verbose] > │ let v17 : string = _v11.Value │
00:10:37 #18876 [verbose] > │ let v18 : (unit -> string) = closure4(v0, v17) │
00:10:37 #18877 [verbose] > │ let v19 : string = $"delete_directory_async / {v18 ()}" │
00:10:37 #18878 [verbose] > │ System.Console.WriteLine v19 │
00:10:37 #18879 [verbose] > │ () │
00:10:37 #18880 [verbose] > │ let v20 : Async<unit> option = None │
00:10:37 #18881 [verbose] > │ let mutable _v20 = v20 │
00:10:37 #18882 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:37 #18883 [verbose] > │ let v21 : Async<unit> = null |> unbox<Async<unit>> │
00:10:37 #18884 [verbose] > │ v21 │
00:10:37 #18885 [verbose] > │ #endif │
00:10:37 #18886 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:37 #18887 [verbose] > │ let v22 : Async<unit> = null |> unbox<Async<unit>> │
00:10:37 #18888 [verbose] > │ v22 │
00:10:37 #18889 [verbose] > │ #endif │
00:10:37 #18890 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:37 #18891 [verbose] > │ let v23 : Async<unit> = null |> unbox<Async<unit>> │
00:10:37 #18892 [verbose] > │ v23 │
00:10:37 #18893 [verbose] > │ #endif │
00:10:37 #18894 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:37 #18895 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:37 #18896 [verbose] > │ let v24 : (int32 -> Async<unit>) = Async.Sleep │
00:10:37 #18897 [verbose] > │ let v25 : Async<unit> = v24 10 │
00:10:37 #18898 [verbose] > │ v25 │
00:10:37 #18899 [verbose] > │ #endif │
00:10:37 #18900 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:37 #18901 [verbose] > │ let v26 : Async<unit> = null |> unbox<Async<unit>> │
00:10:37 #18902 [verbose] > │ v26 │
00:10:37 #18903 [verbose] > │ #endif │
00:10:37 #18904 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:37 #18905 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:37 #18906 [verbose] > │ #endif │
00:10:37 #18907 [verbose] > │ |> fun x -> _v20 <- Some x │
00:10:37 #18908 [verbose] > │ let v27 : Async<unit> = _v20.Value │
00:10:37 #18909 [verbose] > │ do! v27 │
00:10:37 #18910 [verbose] > │ let v28 : int64 = v1 + 1L │
00:10:37 #18911 [verbose] > │ let v29 : Async<int64> = method2(v0, v28) │
00:10:37 #18912 [verbose] > │ return! v29 │
00:10:37 #18913 [verbose] > │ (* │
00:10:37 #18914 [verbose] > │ let v30 : int64 = *) │
00:10:37 #18915 [verbose] > │ } │
00:10:37 #18916 [verbose] > │ |> fun x -> _v6 <- Some x │
00:10:37 #18917 [verbose] > │ let v31 : Async<int64> = _v6 |> Option.get │
00:10:37 #18918 [verbose] > │ v31 │
00:10:37 #18919 [verbose] > │ #endif │
00:10:37 #18920 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:37 #18921 [verbose] > │ let v32 : Async<int64> = null |> unbox<Async<int64>> │
00:10:37 #18922 [verbose] > │ v32 │
00:10:37 #18923 [verbose] > │ #endif │
00:10:37 #18924 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:37 #18925 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:37 #18926 [verbose] > │ #endif │
00:10:37 #18927 [verbose] > │ |> fun x -> _v2 <- Some x │
00:10:37 #18928 [verbose] > │ let v33 : Async<int64> = _v2.Value │
00:10:37 #18929 [verbose] > │ v33 │
00:10:37 #18930 [verbose] > │ and closure3 (v0 : string) () : unit = │
00:10:37 #18931 [verbose] > │ let v1 : Async<int64> option = None │
00:10:37 #18932 [verbose] > │ let mutable _v1 = v1 │
00:10:37 #18933 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:37 #18934 [verbose] > │ let v2 : Async<int64> = null |> unbox<Async<int64>> │
00:10:37 #18935 [verbose] > │ v2 │
00:10:37 #18936 [verbose] > │ #endif │
00:10:37 #18937 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:37 #18938 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:37 #18939 [verbose] > │ v3 │
00:10:37 #18940 [verbose] > │ #endif │
00:10:37 #18941 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:37 #18942 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:37 #18943 [verbose] > │ v4 │
00:10:37 #18944 [verbose] > │ #endif │
00:10:37 #18945 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:37 #18946 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:37 #18947 [verbose] > │ let v5 : int64 = 0L │
00:10:37 #18948 [verbose] > │ let v6 : Async<int64> = method2(v0, v5) │
00:10:37 #18949 [verbose] > │ v6 │
00:10:37 #18950 [verbose] > │ #endif │
00:10:37 #18951 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:37 #18952 [verbose] > │ let v7 : Async<int64> = null |> unbox<Async<int64>> │
00:10:37 #18953 [verbose] > │ v7 │
00:10:37 #18954 [verbose] > │ #endif │
00:10:37 #18955 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:37 #18956 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:37 #18957 [verbose] > │ #endif │
00:10:37 #18958 [verbose] > │ |> fun x -> _v1 <- Some x │
00:10:37 #18959 [verbose] > │ let v8 : Async<int64> = _v1.Value │
00:10:37 #18960 [verbose] > │ let v9 : Async<unit> option = None │
00:10:37 #18961 [verbose] > │ let mutable _v9 = v9 │
00:10:37 #18962 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:37 #18963 [verbose] > │ let v10 : Async<unit> = null |> unbox<Async<unit>> │
00:10:37 #18964 [verbose] > │ v10 │
00:10:37 #18965 [verbose] > │ #endif │
00:10:37 #18966 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:37 #18967 [verbose] > │ let v11 : Async<unit> = null |> unbox<Async<unit>> │
00:10:37 #18968 [verbose] > │ v11 │
00:10:37 #18969 [verbose] > │ #endif │
00:10:37 #18970 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:37 #18971 [verbose] > │ let v12 : Async<unit> = null |> unbox<Async<unit>> │
00:10:37 #18972 [verbose] > │ v12 │
00:10:37 #18973 [verbose] > │ #endif │
00:10:37 #18974 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:37 #18975 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:37 #18976 [verbose] > │ let v13 : (Async<int64> -> Async<unit>) = Async.Ignore │
00:10:37 #18977 [verbose] > │ let v14 : Async<unit> = v13 v8 │
00:10:37 #18978 [verbose] > │ v14 │
00:10:37 #18979 [verbose] > │ #endif │
00:10:37 #18980 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:37 #18981 [verbose] > │ let v15 : Async<unit> = null |> unbox<Async<unit>> │
00:10:37 #18982 [verbose] > │ v15 │
00:10:37 #18983 [verbose] > │ #endif │
00:10:37 #18984 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:37 #18985 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:37 #18986 [verbose] > │ #endif │
00:10:37 #18987 [verbose] > │ |> fun x -> _v9 <- Some x │
00:10:37 #18988 [verbose] > │ let v16 : Async<unit> = _v9.Value │
00:10:37 #18989 [verbose] > │ let v17 : unit option = None │
00:10:37 #18990 [verbose] > │ let mutable _v17 = v17 │
00:10:37 #18991 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:37 #18992 [verbose] > │ null |> unbox<unit> │
00:10:37 #18993 [verbose] > │ () │
00:10:37 #18994 [verbose] > │ #endif │
00:10:37 #18995 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:37 #18996 [verbose] > │ null |> unbox<unit> │
00:10:37 #18997 [verbose] > │ () │
00:10:37 #18998 [verbose] > │ #endif │
00:10:37 #18999 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:37 #19000 [verbose] > │ null |> unbox<unit> │
00:10:37 #19001 [verbose] > │ () │
00:10:37 #19002 [verbose] > │ #endif │
00:10:37 #19003 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:37 #19004 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:37 #19005 [verbose] > │ let v18 : (Async<unit> -> unit) = Async.RunSynchronously │
00:10:37 #19006 [verbose] > │ v18 v16 │
00:10:37 #19007 [verbose] > │ () │
00:10:37 #19008 [verbose] > │ #endif │
00:10:37 #19009 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:37 #19010 [verbose] > │ null |> unbox<unit> │
00:10:37 #19011 [verbose] > │ () │
00:10:37 #19012 [verbose] > │ #endif │
00:10:37 #19013 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:37 #19014 [verbose] > │ Unchecked.defaultof<unit> │
00:10:37 #19015 [verbose] > │ #endif │
00:10:37 #19016 [verbose] > │ |> fun x -> _v17 <- Some x │
00:10:37 #19017 [verbose] > │ _v17.Value │
00:10:37 #19018 [verbose] > │ () │
00:10:37 #19019 [verbose] > │ and method4 (v0 : bool) : bool = │
00:10:37 #19020 [verbose] > │ v0 │
00:10:37 #19021 [verbose] > │ and method0 () : unit = │
00:10:37 #19022 [verbose] > │ let v0 : struct (string * System.IDisposable) option = None │
00:10:37 #19023 [verbose] > │ let mutable _v0 = v0 │
00:10:37 #19024 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:37 #19025 [verbose] > │ let struct (v1 : string, v2 : System.IDisposable) = null |> unbox<struct │
00:10:37 #19026 [verbose] > │ (string * System.IDisposable)> │
00:10:37 #19027 [verbose] > │ struct (v1, v2) │
00:10:37 #19028 [verbose] > │ #endif │
00:10:37 #19029 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:37 #19030 [verbose] > │ let struct (v3 : string, v4 : System.IDisposable) = null |> unbox<struct │
00:10:37 #19031 [verbose] > │ (string * System.IDisposable)> │
00:10:37 #19032 [verbose] > │ struct (v3, v4) │
00:10:37 #19033 [verbose] > │ #endif │
00:10:37 #19034 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:37 #19035 [verbose] > │ let struct (v5 : string, v6 : System.IDisposable) = null |> unbox<struct │
00:10:37 #19036 [verbose] > │ (string * System.IDisposable)> │
00:10:37 #19037 [verbose] > │ struct (v5, v6) │
00:10:37 #19038 [verbose] > │ #endif │
00:10:37 #19039 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:37 #19040 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:37 #19041 [verbose] > │ let v7 : string option = None │
00:10:37 #19042 [verbose] > │ let mutable _v7 = v7 │
00:10:37 #19043 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:37 #19044 [verbose] > │ let v8 : string = null |> unbox<string> │
00:10:37 #19045 [verbose] > │ v8 │
00:10:37 #19046 [verbose] > │ #endif │
00:10:37 #19047 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:37 #19048 [verbose] > │ let v9 : string = null |> unbox<string> │
00:10:37 #19049 [verbose] > │ v9 │
00:10:37 #19050 [verbose] > │ #endif │
00:10:37 #19051 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:37 #19052 [verbose] > │ let v10 : string = null |> unbox<string> │
00:10:37 #19053 [verbose] > │ v10 │
00:10:37 #19054 [verbose] > │ #endif │
00:10:37 #19055 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:37 #19056 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:37 #19057 [verbose] > │ let v11 : (unit -> string) = System.IO.Path.GetTempPath │
00:10:37 #19058 [verbose] > │ let v12 : string = v11 () │
00:10:37 #19059 [verbose] > │ let v13 : (unit -> string) = closure0() │
00:10:37 #19060 [verbose] > │ let v14 : string = $"!{v13 ()}" │
00:10:37 #19061 [verbose] > │ let v15 : string option = None │
00:10:37 #19062 [verbose] > │ let mutable _v15 = v15 │
00:10:37 #19063 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:37 #19064 [verbose] > │ let v16 : string = method1(v12) │
00:10:37 #19065 [verbose] > │ let v17 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:37 #19066 [verbose] > │ let v18 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v16 v17 │
00:10:37 #19067 [verbose] > │ let v19 : string = "String::from($0)" │
00:10:37 #19068 [verbose] > │ let v20 : std_string_String = Fable.Core.RustInterop.emitRustExpr v18 │
00:10:37 #19069 [verbose] > │ v19 │
00:10:37 #19070 [verbose] > │ let v21 : string = "std::path::PathBuf::from($0)" │
00:10:37 #19071 [verbose] > │ let v22 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v20 v21 │
00:10:37 #19072 [verbose] > │ let v23 : string = method1(v14) │
00:10:37 #19073 [verbose] > │ let v24 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:37 #19074 [verbose] > │ let v25 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v23 v24 │
00:10:37 #19075 [verbose] > │ let v26 : string = "String::from($0)" │
00:10:37 #19076 [verbose] > │ let v27 : std_string_String = Fable.Core.RustInterop.emitRustExpr v25 │
00:10:37 #19077 [verbose] > │ v26 │
00:10:37 #19078 [verbose] > │ let v28 : string = "$0.join($1)" │
00:10:37 #19079 [verbose] > │ let v29 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:37 #19080 [verbose] > │ (v22, v27) v28 │
00:10:37 #19081 [verbose] > │ let v30 : string = "$0.display().to_string()" │
00:10:37 #19082 [verbose] > │ let v31 : std_string_String = Fable.Core.RustInterop.emitRustExpr v29 │
00:10:37 #19083 [verbose] > │ v30 │
00:10:37 #19084 [verbose] > │ let v32 : string = "fable_library_rust::String_::fromString($0)" │
00:10:37 #19085 [verbose] > │ let v33 : string = Fable.Core.RustInterop.emitRustExpr v31 v32 │
00:10:37 #19086 [verbose] > │ v33 │
00:10:37 #19087 [verbose] > │ #endif │
00:10:37 #19088 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:37 #19089 [verbose] > │ let v34 : string = null |> unbox<string> │
00:10:37 #19090 [verbose] > │ v34 │
00:10:37 #19091 [verbose] > │ #endif │
00:10:37 #19092 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:37 #19093 [verbose] > │ let v35 : string = null |> unbox<string> │
00:10:37 #19094 [verbose] > │ v35 │
00:10:37 #19095 [verbose] > │ #endif │
00:10:37 #19096 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:37 #19097 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:37 #19098 [verbose] > │ let v36 : string = System.IO.Path.Combine (v12, v14) │
00:10:37 #19099 [verbose] > │ v36 │
00:10:37 #19100 [verbose] > │ #endif │
00:10:37 #19101 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:37 #19102 [verbose] > │ let v37 : string = "path" │
00:10:37 #19103 [verbose] > │ let v38 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:37 #19104 [verbose] > │ let v39 : string = "v38.join($0, $1)" │
00:10:37 #19105 [verbose] > │ let v40 : string = Fable.Core.JsInterop.emitJsExpr struct (v12, v14) v39 │
00:10:37 #19106 [verbose] > │ v40 │
00:10:37 #19107 [verbose] > │ #endif │
00:10:37 #19108 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:37 #19109 [verbose] > │ Unchecked.defaultof<string> │
00:10:37 #19110 [verbose] > │ #endif │
00:10:37 #19111 [verbose] > │ |> fun x -> _v15 <- Some x │
00:10:37 #19112 [verbose] > │ let v41 : string = _v15.Value │
00:10:37 #19113 [verbose] > │ let v42 : System.DateTime = System.DateTime.Now │
00:10:37 #19114 [verbose] > │ let v43 : System.Guid = System.Guid.NewGuid () │
00:10:37 #19115 [verbose] > │ let v44 : (System.Guid -> string) = _.ToString() │
00:10:37 #19116 [verbose] > │ let v45 : string = v44 v43 │
00:10:37 #19117 [verbose] > │ let v46 : string = v42.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:10:37 #19118 [verbose] > │ let v47 : System.Guid = System.Guid $"{v46}{v45.[v46.Length..]}" │
00:10:38 #19119 [verbose] > │ let v48 : (System.Guid -> string) = _.ToString() │
00:10:38 #19120 [verbose] > │ let v49 : string = v48 v47 │
00:10:38 #19121 [verbose] > │ let v50 : string option = None │
00:10:38 #19122 [verbose] > │ let mutable _v50 = v50 │
00:10:38 #19123 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:38 #19124 [verbose] > │ let v51 : string = method1(v41) │
00:10:38 #19125 [verbose] > │ let v52 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:38 #19126 [verbose] > │ let v53 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v51 v52 │
00:10:38 #19127 [verbose] > │ let v54 : string = "String::from($0)" │
00:10:38 #19128 [verbose] > │ let v55 : std_string_String = Fable.Core.RustInterop.emitRustExpr v53 │
00:10:38 #19129 [verbose] > │ v54 │
00:10:38 #19130 [verbose] > │ let v56 : string = "std::path::PathBuf::from($0)" │
00:10:38 #19131 [verbose] > │ let v57 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v55 v56 │
00:10:38 #19132 [verbose] > │ let v58 : string = method1(v49) │
00:10:38 #19133 [verbose] > │ let v59 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:38 #19134 [verbose] > │ let v60 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v58 v59 │
00:10:38 #19135 [verbose] > │ let v61 : string = "String::from($0)" │
00:10:38 #19136 [verbose] > │ let v62 : std_string_String = Fable.Core.RustInterop.emitRustExpr v60 │
00:10:38 #19137 [verbose] > │ v61 │
00:10:38 #19138 [verbose] > │ let v63 : string = "$0.join($1)" │
00:10:38 #19139 [verbose] > │ let v64 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:38 #19140 [verbose] > │ (v57, v62) v63 │
00:10:38 #19141 [verbose] > │ let v65 : string = "$0.display().to_string()" │
00:10:38 #19142 [verbose] > │ let v66 : std_string_String = Fable.Core.RustInterop.emitRustExpr v64 │
00:10:38 #19143 [verbose] > │ v65 │
00:10:38 #19144 [verbose] > │ let v67 : string = "fable_library_rust::String_::fromString($0)" │
00:10:38 #19145 [verbose] > │ let v68 : string = Fable.Core.RustInterop.emitRustExpr v66 v67 │
00:10:38 #19146 [verbose] > │ v68 │
00:10:38 #19147 [verbose] > │ #endif │
00:10:38 #19148 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:38 #19149 [verbose] > │ let v69 : string = null |> unbox<string> │
00:10:38 #19150 [verbose] > │ v69 │
00:10:38 #19151 [verbose] > │ #endif │
00:10:38 #19152 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:38 #19153 [verbose] > │ let v70 : string = null |> unbox<string> │
00:10:38 #19154 [verbose] > │ v70 │
00:10:38 #19155 [verbose] > │ #endif │
00:10:38 #19156 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:38 #19157 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:38 #19158 [verbose] > │ let v71 : string = System.IO.Path.Combine (v41, v49) │
00:10:38 #19159 [verbose] > │ v71 │
00:10:38 #19160 [verbose] > │ #endif │
00:10:38 #19161 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:38 #19162 [verbose] > │ let v72 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:38 #19163 [verbose] > │ let v73 : string = "v72.join($0, $1)" │
00:10:38 #19164 [verbose] > │ let v74 : string = Fable.Core.JsInterop.emitJsExpr struct (v41, v49) v73 │
00:10:38 #19165 [verbose] > │ v74 │
00:10:38 #19166 [verbose] > │ #endif │
00:10:38 #19167 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:38 #19168 [verbose] > │ Unchecked.defaultof<string> │
00:10:38 #19169 [verbose] > │ #endif │
00:10:38 #19170 [verbose] > │ |> fun x -> _v50 <- Some x │
00:10:38 #19171 [verbose] > │ let v75 : string = _v50.Value │
00:10:38 #19172 [verbose] > │ v75 │
00:10:38 #19173 [verbose] > │ #endif │
00:10:38 #19174 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:38 #19175 [verbose] > │ let v76 : string = null |> unbox<string> │
00:10:38 #19176 [verbose] > │ v76 │
00:10:38 #19177 [verbose] > │ #endif │
00:10:38 #19178 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:38 #19179 [verbose] > │ Unchecked.defaultof<string> │
00:10:38 #19180 [verbose] > │ #endif │
00:10:38 #19181 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:38 #19182 [verbose] > │ let v77 : string = _v7.Value │
00:10:38 #19183 [verbose] > │ let v78 : System.IO.DirectoryInfo option = None │
00:10:38 #19184 [verbose] > │ let mutable _v78 = v78 │
00:10:38 #19185 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:38 #19186 [verbose] > │ let v79 : System.IO.DirectoryInfo = null |> │
00:10:38 #19187 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:38 #19188 [verbose] > │ v79 │
00:10:38 #19189 [verbose] > │ #endif │
00:10:38 #19190 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:38 #19191 [verbose] > │ let v80 : System.IO.DirectoryInfo = null |> │
00:10:38 #19192 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:38 #19193 [verbose] > │ v80 │
00:10:38 #19194 [verbose] > │ #endif │
00:10:38 #19195 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:38 #19196 [verbose] > │ let v81 : System.IO.DirectoryInfo = null |> │
00:10:38 #19197 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:38 #19198 [verbose] > │ v81 │
00:10:38 #19199 [verbose] > │ #endif │
00:10:38 #19200 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:38 #19201 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:38 #19202 [verbose] > │ let v82 : (string -> System.IO.DirectoryInfo) = │
00:10:38 #19203 [verbose] > │ System.IO.Directory.CreateDirectory │
00:10:38 #19204 [verbose] > │ let v83 : System.IO.DirectoryInfo = v82 v77 │
00:10:38 #19205 [verbose] > │ v83 │
00:10:38 #19206 [verbose] > │ #endif │
00:10:38 #19207 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:38 #19208 [verbose] > │ let v84 : System.IO.DirectoryInfo = null |> │
00:10:38 #19209 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:38 #19210 [verbose] > │ v84 │
00:10:38 #19211 [verbose] > │ #endif │
00:10:38 #19212 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:38 #19213 [verbose] > │ Unchecked.defaultof<System.IO.DirectoryInfo> │
00:10:38 #19214 [verbose] > │ #endif │
00:10:38 #19215 [verbose] > │ |> fun x -> _v78 <- Some x │
00:10:38 #19216 [verbose] > │ let v85 : System.IO.DirectoryInfo = _v78.Value │
00:10:38 #19217 [verbose] > │ let v86 : bool option = None │
00:10:38 #19218 [verbose] > │ let mutable _v86 = v86 │
00:10:38 #19219 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:38 #19220 [verbose] > │ let v87 : bool = null |> unbox<bool> │
00:10:38 #19221 [verbose] > │ v87 │
00:10:38 #19222 [verbose] > │ #endif │
00:10:38 #19223 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:38 #19224 [verbose] > │ let v88 : bool = null |> unbox<bool> │
00:10:38 #19225 [verbose] > │ v88 │
00:10:38 #19226 [verbose] > │ #endif │
00:10:38 #19227 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:38 #19228 [verbose] > │ let v89 : bool = null |> unbox<bool> │
00:10:38 #19229 [verbose] > │ v89 │
00:10:38 #19230 [verbose] > │ #endif │
00:10:38 #19231 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:38 #19232 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:38 #19233 [verbose] > │ let v90 : bool = v85.Exists │
00:10:38 #19234 [verbose] > │ v90 │
00:10:38 #19235 [verbose] > │ #endif │
00:10:38 #19236 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:38 #19237 [verbose] > │ let v91 : bool = null |> unbox<bool> │
00:10:38 #19238 [verbose] > │ v91 │
00:10:38 #19239 [verbose] > │ #endif │
00:10:38 #19240 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:38 #19241 [verbose] > │ Unchecked.defaultof<bool> │
00:10:38 #19242 [verbose] > │ #endif │
00:10:38 #19243 [verbose] > │ |> fun x -> _v86 <- Some x │
00:10:38 #19244 [verbose] > │ let v92 : bool = _v86.Value │
00:10:38 #19245 [verbose] > │ let v93 : bool = v92 = false │
00:10:38 #19246 [verbose] > │ if v93 then │
00:10:38 #19247 [verbose] > │ let v94 : System.DateTime option = None │
00:10:38 #19248 [verbose] > │ let mutable _v94 = v94 │
00:10:38 #19249 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:38 #19250 [verbose] > │ let v95 : System.DateTime = null |> unbox<System.DateTime> │
00:10:38 #19251 [verbose] > │ v95 │
00:10:38 #19252 [verbose] > │ #endif │
00:10:38 #19253 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:38 #19254 [verbose] > │ let v96 : System.DateTime = null |> unbox<System.DateTime> │
00:10:38 #19255 [verbose] > │ v96 │
00:10:38 #19256 [verbose] > │ #endif │
00:10:38 #19257 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:38 #19258 [verbose] > │ let v97 : System.DateTime = null |> unbox<System.DateTime> │
00:10:38 #19259 [verbose] > │ v97 │
00:10:38 #19260 [verbose] > │ #endif │
00:10:38 #19261 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:38 #19262 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:38 #19263 [verbose] > │ let v98 : System.DateTime = v85.CreationTime │
00:10:38 #19264 [verbose] > │ v98 │
00:10:38 #19265 [verbose] > │ #endif │
00:10:38 #19266 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:38 #19267 [verbose] > │ let v99 : System.DateTime = null |> unbox<System.DateTime> │
00:10:38 #19268 [verbose] > │ v99 │
00:10:38 #19269 [verbose] > │ #endif │
00:10:38 #19270 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:38 #19271 [verbose] > │ FABLE_COMPILER_DART │
00:10:38 #19272 [verbose] > │ Unchecked.defaultof<System.DateTime> │
00:10:38 #19273 [verbose] > │ #endif │
00:10:38 #19274 [verbose] > │ |> fun x -> _v94 <- Some x │
00:10:38 #19275 [verbose] > │ let v100 : System.DateTime = _v94.Value │
00:10:38 #19276 [verbose] > │ let v101 : obj = {| Exists = v92; CreationTime = v100 |} │
00:10:38 #19277 [verbose] > │ let v102 : string = $"%A{v101}" │
00:10:38 #19278 [verbose] > │ let v103 : (unit -> string) = closure1(v77, v102) │
00:10:38 #19279 [verbose] > │ let v104 : string = $"create_temp_directory / {v103 ()}" │
00:10:38 #19280 [verbose] > │ System.Console.WriteLine v104 │
00:10:38 #19281 [verbose] > │ () │
00:10:38 #19282 [verbose] > │ let v105 : System.IDisposable option = None │
00:10:38 #19283 [verbose] > │ let mutable _v105 = v105 │
00:10:38 #19284 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:38 #19285 [verbose] > │ let v106 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:38 #19286 [verbose] > │ v106 │
00:10:38 #19287 [verbose] > │ #endif │
00:10:38 #19288 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:38 #19289 [verbose] > │ let v107 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:38 #19290 [verbose] > │ v107 │
00:10:38 #19291 [verbose] > │ #endif │
00:10:38 #19292 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:38 #19293 [verbose] > │ let v108 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:38 #19294 [verbose] > │ v108 │
00:10:38 #19295 [verbose] > │ #endif │
00:10:38 #19296 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:38 #19297 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:38 #19298 [verbose] > │ let v109 : (unit -> unit) = closure3(v77) │
00:10:38 #19299 [verbose] > │ let v110 : System.IDisposable = { new System.IDisposable with member │
00:10:38 #19300 [verbose] > │ _.Dispose () = v109 () } │
00:10:38 #19301 [verbose] > │ v110 │
00:10:38 #19302 [verbose] > │ #endif │
00:10:38 #19303 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:38 #19304 [verbose] > │ let v111 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:38 #19305 [verbose] > │ v111 │
00:10:38 #19306 [verbose] > │ #endif │
00:10:38 #19307 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:38 #19308 [verbose] > │ Unchecked.defaultof<System.IDisposable> │
00:10:38 #19309 [verbose] > │ #endif │
00:10:38 #19310 [verbose] > │ |> fun x -> _v105 <- Some x │
00:10:38 #19311 [verbose] > │ let v112 : System.IDisposable = _v105.Value │
00:10:38 #19312 [verbose] > │ struct (v77, v112) │
00:10:38 #19313 [verbose] > │ #endif │
00:10:38 #19314 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:38 #19315 [verbose] > │ let struct (v113 : string, v114 : System.IDisposable) = null |> │
00:10:38 #19316 [verbose] > │ unbox<struct (string * System.IDisposable)> │
00:10:38 #19317 [verbose] > │ struct (v113, v114) │
00:10:38 #19318 [verbose] > │ #endif │
00:10:38 #19319 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:38 #19320 [verbose] > │ Unchecked.defaultof<struct (string * System.IDisposable)> │
00:10:38 #19321 [verbose] > │ #endif │
00:10:38 #19322 [verbose] > │ |> fun x -> _v0 <- Some x │
00:10:38 #19323 [verbose] > │ let struct (v115 : string, v116 : System.IDisposable) = _v0.Value │
00:10:38 #19324 [verbose] > │ use v116 = v116 │
00:10:38 #19325 [verbose] > │ let v117 : System.IDisposable = v116 │
00:10:38 #19326 [verbose] > │ let v118 : bool option = None │
00:10:38 #19327 [verbose] > │ let mutable _v118 = v118 │
00:10:38 #19328 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:38 #19329 [verbose] > │ let v119 : string = method1(v115) │
00:10:38 #19330 [verbose] > │ let v120 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:38 #19331 [verbose] > │ let v121 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v119 v120 │
00:10:38 #19332 [verbose] > │ let v122 : string = "String::from($0)" │
00:10:38 #19333 [verbose] > │ let v123 : std_string_String = Fable.Core.RustInterop.emitRustExpr v121 │
00:10:38 #19334 [verbose] > │ v122 │
00:10:38 #19335 [verbose] > │ let v124 : string = "std::path::PathBuf::from($0)" │
00:10:38 #19336 [verbose] > │ let v125 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v123 │
00:10:38 #19337 [verbose] > │ v124 │
00:10:38 #19338 [verbose] > │ let v126 : string = "$0.exists()" │
00:10:38 #19339 [verbose] > │ let v127 : bool = Fable.Core.RustInterop.emitRustExpr v125 v126 │
00:10:38 #19340 [verbose] > │ let v130 : bool = │
00:10:38 #19341 [verbose] > │ if v127 then │
00:10:38 #19342 [verbose] > │ let v128 : string = "$0.is_dir()" │
00:10:38 #19343 [verbose] > │ let v129 : bool = Fable.Core.RustInterop.emitRustExpr v125 v128 │
00:10:38 #19344 [verbose] > │ v129 │
00:10:38 #19345 [verbose] > │ else │
00:10:38 #19346 [verbose] > │ false │
00:10:38 #19347 [verbose] > │ v130 │
00:10:38 #19348 [verbose] > │ #endif │
00:10:38 #19349 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:38 #19350 [verbose] > │ let v131 : bool = null |> unbox<bool> │
00:10:38 #19351 [verbose] > │ v131 │
00:10:38 #19352 [verbose] > │ #endif │
00:10:38 #19353 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:38 #19354 [verbose] > │ let v132 : bool = null |> unbox<bool> │
00:10:38 #19355 [verbose] > │ v132 │
00:10:38 #19356 [verbose] > │ #endif │
00:10:38 #19357 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:38 #19358 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:38 #19359 [verbose] > │ let v133 : (string -> bool) = System.IO.Directory.Exists │
00:10:38 #19360 [verbose] > │ let v134 : bool = v133 v115 │
00:10:38 #19361 [verbose] > │ v134 │
00:10:38 #19362 [verbose] > │ #endif │
00:10:38 #19363 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:38 #19364 [verbose] > │ let v135 : string = "fs" │
00:10:38 #19365 [verbose] > │ let v136 : IFsExistsSync = Fable.Core.JsInterop.importAll v135 │
00:10:38 #19366 [verbose] > │ let v137 : string = "v136.existsSync($0)" │
00:10:38 #19367 [verbose] > │ let v138 : bool = Fable.Core.JsInterop.emitJsExpr v115 v137 │
00:10:38 #19368 [verbose] > │ v138 │
00:10:38 #19369 [verbose] > │ #endif │
00:10:38 #19370 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:38 #19371 [verbose] > │ Unchecked.defaultof<bool> │
00:10:38 #19372 [verbose] > │ #endif │
00:10:38 #19373 [verbose] > │ |> fun x -> _v118 <- Some x │
00:10:38 #19374 [verbose] > │ let v139 : bool = _v118.Value │
00:10:38 #19375 [verbose] > │ let v140 : string = $"%A{v139}" │
00:10:38 #19376 [verbose] > │ System.Console.WriteLine v140 │
00:10:38 #19377 [verbose] > │ let v142 : bool = │
00:10:38 #19378 [verbose] > │ if v139 then │
00:10:38 #19379 [verbose] > │ true │
00:10:38 #19380 [verbose] > │ else │
00:10:38 #19381 [verbose] > │ method4(v139) │
00:10:38 #19382 [verbose] > │ let v143 : string = $"__expect / actual: %A{v139} / expected: %A{true}" │
00:10:38 #19383 [verbose] > │ let v144 : bool = v142 = false │
00:10:38 #19384 [verbose] > │ if v144 then │
00:10:38 #19385 [verbose] > │ failwith<unit> v143 │
00:10:38 #19386 [verbose] > │ method0() │
00:10:38 #19387 [verbose] > │ │
00:10:38 #19388 [verbose] > │ true │
00:10:38 #19389 [verbose] > │ │
00:10:38 #19390 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:38 #19391 [verbose] >
00:10:38 #19392 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:38 #19393 [verbose] > // // test
00:10:38 #19394 [verbose] >
00:10:38 #19395 [verbose] > inl lock_directory path =
00:10:38 #19396 [verbose] > fun () =>
00:10:38 #19397 [verbose] > trace Debug (fun () => "_1") get_locals
00:10:38 #19398 [verbose] > "0" |> write_all_text_async (path </> "test.txt") |> async.do
00:10:38 #19399 [verbose] > file_stream
00:10:38 #19400 [verbose] > (path </> "test.txt")
00:10:38 #19401 [verbose] > ModeOpen
00:10:38 #19402 [verbose] > AccessReadWrite
00:10:38 #19403 [verbose] > ShareNone
00:10:38 #19404 [verbose] > |> use
00:10:38 #19405 [verbose] > |> ignore
00:10:38 #19406 [verbose] > trace Debug (fun () => "_2") get_locals
00:10:38 #19407 [verbose] > async.sleep 2000 |> async.do
00:10:38 #19408 [verbose] > trace Debug (fun () => "_3") get_locals
00:10:38 #19409 [verbose] > () |> return
00:10:38 #19410 [verbose] > |> async.new_async
00:10:38 #19411 [verbose] >
00:10:38 #19412 [verbose] > inl temp_dir, disposable = create_temp_directory ()
00:10:38 #19413 [verbose] > disposable |> use |> ignore
00:10:38 #19414 [verbose] > inl path = temp_dir </> "test"
00:10:38 #19415 [verbose] >
00:10:38 #19416 [verbose] > fun () =>
00:10:38 #19417 [verbose] > trace Debug (fun () => "1") get_locals
00:10:38 #19418 [verbose] > path |> create_directory |> ignore
00:10:38 #19419 [verbose] > trace Debug (fun () => "2") get_locals
00:10:38 #19420 [verbose] > inl child = path |> lock_directory |> async.start_child |> async.let'
00:10:38 #19421 [verbose] > trace Debug (fun () => "3") get_locals
00:10:38 #19422 [verbose] > async.sleep 60 |> async.do
00:10:38 #19423 [verbose] > trace Debug (fun () => "4") get_locals
00:10:38 #19424 [verbose] > inl retries = path |> delete_directory_async |> async.let'
00:10:38 #19425 [verbose] > trace Debug (fun () => "5") get_locals
00:10:38 #19426 [verbose] > child |> async.do
00:10:38 #19427 [verbose] > trace Debug (fun () => "6") get_locals
00:10:38 #19428 [verbose] > retries |> return
00:10:38 #19429 [verbose] > |> async.new_async_unit
00:10:38 #19430 [verbose] > |> async.run_with_timeout 3000
00:10:38 #19431 [verbose] > |> fun x => x : _ i64
00:10:38 #19432 [verbose] > |> function
00:10:38 #19433 [verbose] > | Some (retries : i64) =>
00:10:38 #19434 [verbose] > retries
00:10:38 #19435 [verbose] > |> _assert_between
00:10:38 #19436 [verbose] > (if runtime.is_windows () then 50 else 0)
00:10:38 #19437 [verbose] > (if runtime.is_windows () then 150 else 0)
00:10:38 #19438 [verbose] >
00:10:38 #19439 [verbose] > true
00:10:38 #19440 [verbose] > | _ => false
00:10:38 #19441 [verbose] > |> _assert_eq true
00:10:38 #19442 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c21bcc2df7fb3255f0dc8814dc6ccffca58d5fa0f22b9a736a646db0f6300d34\main.spi
00:10:42 #19443 [verbose] >
00:10:42 #19444 [verbose] > ╭─[ 3.70s - stdout ]───────────────────────────────────────────────────────────╮
00:10:42 #19445 [verbose] > │ type IPathJoin = abstract join: [<System.ParamArray>] paths: string[] -> │
00:10:42 #19446 [verbose] > │ string │
00:10:42 #19447 [verbose] > │ module State = let mutable trace_state = None │
00:10:42 #19448 [verbose] > │ type [<Struct>] US0 = │
00:10:42 #19449 [verbose] > │ | US0_0 │
00:10:42 #19450 [verbose] > │ | US0_1 │
00:10:42 #19451 [verbose] > │ | US0_2 │
00:10:42 #19452 [verbose] > │ | US0_3 │
00:10:42 #19453 [verbose] > │ | US0_4 │
00:10:42 #19454 [verbose] > │ and Mut0 = {mutable l0 : int64} │
00:10:42 #19455 [verbose] > │ and Mut1 = {mutable l0 : bool} │
00:10:42 #19456 [verbose] > │ and Mut2 = {mutable l0 : US0} │
00:10:42 #19457 [verbose] > │ and [<Struct>] US1 = │
00:10:42 #19458 [verbose] > │ | US1_0 of f0_0 : int64 │
00:10:42 #19459 [verbose] > │ | US1_1 │
00:10:42 #19460 [verbose] > │ and [<Struct>] US2 = │
00:10:42 #19461 [verbose] > │ | US2_0 of f0_0 : int64 │
00:10:42 #19462 [verbose] > │ | US2_1 │
00:10:42 #19463 [verbose] > │ and [<Struct>] US3 = │
00:10:42 #19464 [verbose] > │ | US3_0 of f0_0 : int64 │
00:10:42 #19465 [verbose] > │ | US3_1 of f1_0 : exn │
00:10:42 #19466 [verbose] > │ and [<Struct>] US4 = │
00:10:42 #19467 [verbose] > │ | US4_0 of f0_0 : int64 │
00:10:42 #19468 [verbose] > │ | US4_1 of f1_0 : exn │
00:10:42 #19469 [verbose] > │ let rec closure0 () () : string = │
00:10:42 #19470 [verbose] > │ let v0 : string option = None │
00:10:42 #19471 [verbose] > │ let mutable _v0 = v0 │
00:10:42 #19472 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #19473 [verbose] > │ let v1 : string = null |> unbox<string> │
00:10:42 #19474 [verbose] > │ v1 │
00:10:42 #19475 [verbose] > │ #endif │
00:10:42 #19476 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #19477 [verbose] > │ let v2 : string = null |> unbox<string> │
00:10:42 #19478 [verbose] > │ v2 │
00:10:42 #19479 [verbose] > │ #endif │
00:10:42 #19480 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #19481 [verbose] > │ let v3 : string = null |> unbox<string> │
00:10:42 #19482 [verbose] > │ v3 │
00:10:42 #19483 [verbose] > │ #endif │
00:10:42 #19484 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #19485 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #19486 [verbose] > │ let v4 : string = │
00:10:42 #19487 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:10:42 #19488 [verbose] > │ v4 │
00:10:42 #19489 [verbose] > │ #endif │
00:10:42 #19490 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #19491 [verbose] > │ let v5 : string = null |> unbox<string> │
00:10:42 #19492 [verbose] > │ v5 │
00:10:42 #19493 [verbose] > │ #endif │
00:10:42 #19494 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #19495 [verbose] > │ Unchecked.defaultof<string> │
00:10:42 #19496 [verbose] > │ #endif │
00:10:42 #19497 [verbose] > │ |> fun x -> _v0 <- Some x │
00:10:42 #19498 [verbose] > │ let v6 : string = _v0.Value │
00:10:42 #19499 [verbose] > │ v6 │
00:10:42 #19500 [verbose] > │ and method1 (v0 : string) : string = │
00:10:42 #19501 [verbose] > │ v0 │
00:10:42 #19502 [verbose] > │ and closure2 () () : string = │
00:10:42 #19503 [verbose] > │ let v0 : string = "" │
00:10:42 #19504 [verbose] > │ v0 │
00:10:42 #19505 [verbose] > │ and closure1 (v0 : string, v1 : string) () : string = │
00:10:42 #19506 [verbose] > │ let v2 : (unit -> string) = closure2() │
00:10:42 #19507 [verbose] > │ let v3 : string = $"temp_folder: {v0} / result: {v1} {v2 ()}" │
00:10:42 #19508 [verbose] > │ v3 │
00:10:42 #19509 [verbose] > │ and closure5 () (v0 : string) : string = │
00:10:42 #19510 [verbose] > │ let v1 : string option = None │
00:10:42 #19511 [verbose] > │ let mutable _v1 = v1 │
00:10:42 #19512 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #19513 [verbose] > │ let v2 : string = null |> unbox<string> │
00:10:42 #19514 [verbose] > │ v2 │
00:10:42 #19515 [verbose] > │ #endif │
00:10:42 #19516 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #19517 [verbose] > │ let v3 : string = null |> unbox<string> │
00:10:42 #19518 [verbose] > │ v3 │
00:10:42 #19519 [verbose] > │ #endif │
00:10:42 #19520 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #19521 [verbose] > │ let v4 : string = null |> unbox<string> │
00:10:42 #19522 [verbose] > │ v4 │
00:10:42 #19523 [verbose] > │ #endif │
00:10:42 #19524 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #19525 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #19526 [verbose] > │ let v5 : (string -> string) = System.IO.Path.GetFileName │
00:10:42 #19527 [verbose] > │ let v6 : string = v5 v0 │
00:10:42 #19528 [verbose] > │ v6 │
00:10:42 #19529 [verbose] > │ #endif │
00:10:42 #19530 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #19531 [verbose] > │ let v7 : string = null |> unbox<string> │
00:10:42 #19532 [verbose] > │ v7 │
00:10:42 #19533 [verbose] > │ #endif │
00:10:42 #19534 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #19535 [verbose] > │ Unchecked.defaultof<string> │
00:10:42 #19536 [verbose] > │ #endif │
00:10:42 #19537 [verbose] > │ |> fun x -> _v1 <- Some x │
00:10:42 #19538 [verbose] > │ let v8 : string = _v1.Value │
00:10:42 #19539 [verbose] > │ v8 │
00:10:42 #19540 [verbose] > │ and method3 (v0 : string, v1 : string) : string = │
00:10:42 #19541 [verbose] > │ let v2 : (string -> string) = closure5() │
00:10:42 #19542 [verbose] > │ let v3 : (unit -> string) = closure2() │
00:10:42 #19543 [verbose] > │ let v4 : string = $"path: {v0 |> v2} / ex: {v1} / {v3 ()}" │
00:10:42 #19544 [verbose] > │ v4 │
00:10:42 #19545 [verbose] > │ and closure4 (v0 : string, v1 : string) () : string = │
00:10:42 #19546 [verbose] > │ method3(v0, v1) │
00:10:42 #19547 [verbose] > │ and method2 (v0 : string, v1 : int64) : Async<int64> = │
00:10:42 #19548 [verbose] > │ let v2 : Async<int64> option = None │
00:10:42 #19549 [verbose] > │ let mutable _v2 = v2 │
00:10:42 #19550 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #19551 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #19552 [verbose] > │ v3 │
00:10:42 #19553 [verbose] > │ #endif │
00:10:42 #19554 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #19555 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #19556 [verbose] > │ v4 │
00:10:42 #19557 [verbose] > │ #endif │
00:10:42 #19558 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #19559 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #19560 [verbose] > │ v5 │
00:10:42 #19561 [verbose] > │ #endif │
00:10:42 #19562 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #19563 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #19564 [verbose] > │ let v6 : Async<int64> option = None │
00:10:42 #19565 [verbose] > │ let mutable _v6 = v6 │
00:10:42 #19566 [verbose] > │ async { │
00:10:42 #19567 [verbose] > │ try │
00:10:42 #19568 [verbose] > │ let v7 : unit option = None │
00:10:42 #19569 [verbose] > │ let mutable _v7 = v7 │
00:10:42 #19570 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #19571 [verbose] > │ null |> unbox<unit> │
00:10:42 #19572 [verbose] > │ () │
00:10:42 #19573 [verbose] > │ #endif │
00:10:42 #19574 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #19575 [verbose] > │ null |> unbox<unit> │
00:10:42 #19576 [verbose] > │ () │
00:10:42 #19577 [verbose] > │ #endif │
00:10:42 #19578 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #19579 [verbose] > │ null |> unbox<unit> │
00:10:42 #19580 [verbose] > │ () │
00:10:42 #19581 [verbose] > │ #endif │
00:10:42 #19582 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #19583 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #19584 [verbose] > │ System.IO.Directory.Delete (v0, true) │
00:10:42 #19585 [verbose] > │ () │
00:10:42 #19586 [verbose] > │ #endif │
00:10:42 #19587 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #19588 [verbose] > │ null |> unbox<unit> │
00:10:42 #19589 [verbose] > │ () │
00:10:42 #19590 [verbose] > │ #endif │
00:10:42 #19591 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #19592 [verbose] > │ Unchecked.defaultof<unit> │
00:10:42 #19593 [verbose] > │ #endif │
00:10:42 #19594 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:42 #19595 [verbose] > │ _v7.Value │
00:10:42 #19596 [verbose] > │ return v1 │
00:10:42 #19597 [verbose] > │ with ex -> │
00:10:42 #19598 [verbose] > │ let v8 : exn = ex │
00:10:42 #19599 [verbose] > │ let v9 : int64 = v1 % 100L │
00:10:42 #19600 [verbose] > │ let v10 : bool = v9 = 0L │
00:10:42 #19601 [verbose] > │ if v10 then │
00:10:42 #19602 [verbose] > │ let v11 : string option = None │
00:10:42 #19603 [verbose] > │ let mutable _v11 = v11 │
00:10:42 #19604 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #19605 [verbose] > │ let v12 : string = $"%A{v8}" │
00:10:42 #19606 [verbose] > │ v12 │
00:10:42 #19607 [verbose] > │ #endif │
00:10:42 #19608 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #19609 [verbose] > │ let v13 : string = $"%A{v8}" │
00:10:42 #19610 [verbose] > │ v13 │
00:10:42 #19611 [verbose] > │ #endif │
00:10:42 #19612 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #19613 [verbose] > │ let v14 : string = $"%A{v8}" │
00:10:42 #19614 [verbose] > │ v14 │
00:10:42 #19615 [verbose] > │ #endif │
00:10:42 #19616 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #19617 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #19618 [verbose] > │ let v15 : string = $"{v8.GetType ()}: {v8.Message}" │
00:10:42 #19619 [verbose] > │ v15 │
00:10:42 #19620 [verbose] > │ #endif │
00:10:42 #19621 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #19622 [verbose] > │ let v16 : string = $"%A{v8}" │
00:10:42 #19623 [verbose] > │ v16 │
00:10:42 #19624 [verbose] > │ #endif │
00:10:42 #19625 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:42 #19626 [verbose] > │ FABLE_COMPILER_DART │
00:10:42 #19627 [verbose] > │ Unchecked.defaultof<string> │
00:10:42 #19628 [verbose] > │ #endif │
00:10:42 #19629 [verbose] > │ |> fun x -> _v11 <- Some x │
00:10:42 #19630 [verbose] > │ let v17 : string = _v11.Value │
00:10:42 #19631 [verbose] > │ let v18 : (unit -> string) = closure4(v0, v17) │
00:10:42 #19632 [verbose] > │ let v19 : string = $"delete_directory_async / {v18 ()}" │
00:10:42 #19633 [verbose] > │ System.Console.WriteLine v19 │
00:10:42 #19634 [verbose] > │ () │
00:10:42 #19635 [verbose] > │ let v20 : Async<unit> option = None │
00:10:42 #19636 [verbose] > │ let mutable _v20 = v20 │
00:10:42 #19637 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #19638 [verbose] > │ let v21 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #19639 [verbose] > │ v21 │
00:10:42 #19640 [verbose] > │ #endif │
00:10:42 #19641 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #19642 [verbose] > │ let v22 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #19643 [verbose] > │ v22 │
00:10:42 #19644 [verbose] > │ #endif │
00:10:42 #19645 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #19646 [verbose] > │ let v23 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #19647 [verbose] > │ v23 │
00:10:42 #19648 [verbose] > │ #endif │
00:10:42 #19649 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #19650 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #19651 [verbose] > │ let v24 : (int32 -> Async<unit>) = Async.Sleep │
00:10:42 #19652 [verbose] > │ let v25 : Async<unit> = v24 10 │
00:10:42 #19653 [verbose] > │ v25 │
00:10:42 #19654 [verbose] > │ #endif │
00:10:42 #19655 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #19656 [verbose] > │ let v26 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #19657 [verbose] > │ v26 │
00:10:42 #19658 [verbose] > │ #endif │
00:10:42 #19659 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #19660 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:42 #19661 [verbose] > │ #endif │
00:10:42 #19662 [verbose] > │ |> fun x -> _v20 <- Some x │
00:10:42 #19663 [verbose] > │ let v27 : Async<unit> = _v20.Value │
00:10:42 #19664 [verbose] > │ do! v27 │
00:10:42 #19665 [verbose] > │ let v28 : int64 = v1 + 1L │
00:10:42 #19666 [verbose] > │ let v29 : Async<int64> = method2(v0, v28) │
00:10:42 #19667 [verbose] > │ return! v29 │
00:10:42 #19668 [verbose] > │ (* │
00:10:42 #19669 [verbose] > │ let v30 : int64 = *) │
00:10:42 #19670 [verbose] > │ } │
00:10:42 #19671 [verbose] > │ |> fun x -> _v6 <- Some x │
00:10:42 #19672 [verbose] > │ let v31 : Async<int64> = _v6 |> Option.get │
00:10:42 #19673 [verbose] > │ v31 │
00:10:42 #19674 [verbose] > │ #endif │
00:10:42 #19675 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #19676 [verbose] > │ let v32 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #19677 [verbose] > │ v32 │
00:10:42 #19678 [verbose] > │ #endif │
00:10:42 #19679 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #19680 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:42 #19681 [verbose] > │ #endif │
00:10:42 #19682 [verbose] > │ |> fun x -> _v2 <- Some x │
00:10:42 #19683 [verbose] > │ let v33 : Async<int64> = _v2.Value │
00:10:42 #19684 [verbose] > │ v33 │
00:10:42 #19685 [verbose] > │ and closure3 (v0 : string) () : unit = │
00:10:42 #19686 [verbose] > │ let v1 : Async<int64> option = None │
00:10:42 #19687 [verbose] > │ let mutable _v1 = v1 │
00:10:42 #19688 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #19689 [verbose] > │ let v2 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #19690 [verbose] > │ v2 │
00:10:42 #19691 [verbose] > │ #endif │
00:10:42 #19692 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #19693 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #19694 [verbose] > │ v3 │
00:10:42 #19695 [verbose] > │ #endif │
00:10:42 #19696 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #19697 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #19698 [verbose] > │ v4 │
00:10:42 #19699 [verbose] > │ #endif │
00:10:42 #19700 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #19701 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #19702 [verbose] > │ let v5 : int64 = 0L │
00:10:42 #19703 [verbose] > │ let v6 : Async<int64> = method2(v0, v5) │
00:10:42 #19704 [verbose] > │ v6 │
00:10:42 #19705 [verbose] > │ #endif │
00:10:42 #19706 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #19707 [verbose] > │ let v7 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #19708 [verbose] > │ v7 │
00:10:42 #19709 [verbose] > │ #endif │
00:10:42 #19710 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #19711 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:42 #19712 [verbose] > │ #endif │
00:10:42 #19713 [verbose] > │ |> fun x -> _v1 <- Some x │
00:10:42 #19714 [verbose] > │ let v8 : Async<int64> = _v1.Value │
00:10:42 #19715 [verbose] > │ let v9 : Async<unit> option = None │
00:10:42 #19716 [verbose] > │ let mutable _v9 = v9 │
00:10:42 #19717 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #19718 [verbose] > │ let v10 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #19719 [verbose] > │ v10 │
00:10:42 #19720 [verbose] > │ #endif │
00:10:42 #19721 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #19722 [verbose] > │ let v11 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #19723 [verbose] > │ v11 │
00:10:42 #19724 [verbose] > │ #endif │
00:10:42 #19725 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #19726 [verbose] > │ let v12 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #19727 [verbose] > │ v12 │
00:10:42 #19728 [verbose] > │ #endif │
00:10:42 #19729 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #19730 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #19731 [verbose] > │ let v13 : (Async<int64> -> Async<unit>) = Async.Ignore │
00:10:42 #19732 [verbose] > │ let v14 : Async<unit> = v13 v8 │
00:10:42 #19733 [verbose] > │ v14 │
00:10:42 #19734 [verbose] > │ #endif │
00:10:42 #19735 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #19736 [verbose] > │ let v15 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #19737 [verbose] > │ v15 │
00:10:42 #19738 [verbose] > │ #endif │
00:10:42 #19739 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #19740 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:42 #19741 [verbose] > │ #endif │
00:10:42 #19742 [verbose] > │ |> fun x -> _v9 <- Some x │
00:10:42 #19743 [verbose] > │ let v16 : Async<unit> = _v9.Value │
00:10:42 #19744 [verbose] > │ let v17 : unit option = None │
00:10:42 #19745 [verbose] > │ let mutable _v17 = v17 │
00:10:42 #19746 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #19747 [verbose] > │ null |> unbox<unit> │
00:10:42 #19748 [verbose] > │ () │
00:10:42 #19749 [verbose] > │ #endif │
00:10:42 #19750 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #19751 [verbose] > │ null |> unbox<unit> │
00:10:42 #19752 [verbose] > │ () │
00:10:42 #19753 [verbose] > │ #endif │
00:10:42 #19754 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #19755 [verbose] > │ null |> unbox<unit> │
00:10:42 #19756 [verbose] > │ () │
00:10:42 #19757 [verbose] > │ #endif │
00:10:42 #19758 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #19759 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #19760 [verbose] > │ let v18 : (Async<unit> -> unit) = Async.RunSynchronously │
00:10:42 #19761 [verbose] > │ v18 v16 │
00:10:42 #19762 [verbose] > │ () │
00:10:42 #19763 [verbose] > │ #endif │
00:10:42 #19764 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #19765 [verbose] > │ null |> unbox<unit> │
00:10:42 #19766 [verbose] > │ () │
00:10:42 #19767 [verbose] > │ #endif │
00:10:42 #19768 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #19769 [verbose] > │ Unchecked.defaultof<unit> │
00:10:42 #19770 [verbose] > │ #endif │
00:10:42 #19771 [verbose] > │ |> fun x -> _v17 <- Some x │
00:10:42 #19772 [verbose] > │ _v17.Value │
00:10:42 #19773 [verbose] > │ () │
00:10:42 #19774 [verbose] > │ and method4 () : string = │
00:10:42 #19775 [verbose] > │ let v0 : string = "test" │
00:10:42 #19776 [verbose] > │ v0 │
00:10:42 #19777 [verbose] > │ and closure6 () () : string = │
00:10:42 #19778 [verbose] > │ let v0 : string = "1" │
00:10:42 #19779 [verbose] > │ v0 │
00:10:42 #19780 [verbose] > │ and method6 (v0 : int64 option) : int64 option = │
00:10:42 #19781 [verbose] > │ v0 │
00:10:42 #19782 [verbose] > │ and method7 (v0 : int64 option) : int64 option = │
00:10:42 #19783 [verbose] > │ v0 │
00:10:42 #19784 [verbose] > │ and closure7 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) = │
00:10:42 #19785 [verbose] > │ let v0 : Mut1 = {l0 = true} : Mut1 │
00:10:42 #19786 [verbose] > │ let v1 : Mut0 = {l0 = 0L} : Mut0 │
00:10:42 #19787 [verbose] > │ let v2 : US0 = US0_0 │
00:10:42 #19788 [verbose] > │ let v3 : Mut2 = {l0 = v2} : Mut2 │
00:10:42 #19789 [verbose] > │ let v4 : Mut1 = {l0 = false} : Mut1 │
00:10:42 #19790 [verbose] > │ let v5 : int64 option option = None │
00:10:42 #19791 [verbose] > │ let mutable _v5 = v5 │
00:10:42 #19792 [verbose] > │ #if INTERACTIVE || !FABLE_COMPILER │
00:10:42 #19793 [verbose] > │ let v6 : string option = None │
00:10:42 #19794 [verbose] > │ let mutable _v6 = v6 │
00:10:42 #19795 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #19796 [verbose] > │ let v7 : string = null |> unbox<string> │
00:10:42 #19797 [verbose] > │ v7 │
00:10:42 #19798 [verbose] > │ #endif │
00:10:42 #19799 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #19800 [verbose] > │ let v8 : string = null |> unbox<string> │
00:10:42 #19801 [verbose] > │ v8 │
00:10:42 #19802 [verbose] > │ #endif │
00:10:42 #19803 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #19804 [verbose] > │ let v9 : string = null |> unbox<string> │
00:10:42 #19805 [verbose] > │ v9 │
00:10:42 #19806 [verbose] > │ #endif │
00:10:42 #19807 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #19808 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #19809 [verbose] > │ let v10 : string = │
00:10:42 #19810 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:10:42 #19811 [verbose] > │ v10 │
00:10:42 #19812 [verbose] > │ #endif │
00:10:42 #19813 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #19814 [verbose] > │ let v11 : string = null |> unbox<string> │
00:10:42 #19815 [verbose] > │ v11 │
00:10:42 #19816 [verbose] > │ #endif │
00:10:42 #19817 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #19818 [verbose] > │ Unchecked.defaultof<string> │
00:10:42 #19819 [verbose] > │ #endif │
00:10:42 #19820 [verbose] > │ |> fun x -> _v6 <- Some x │
00:10:42 #19821 [verbose] > │ let v12 : string = _v6.Value │
00:10:42 #19822 [verbose] > │ let v14 : bool = v12 = "Microsoft.DotNet.Interactive.App" │
00:10:42 #19823 [verbose] > │ let v15 : bool = v14 <> true │
00:10:42 #19824 [verbose] > │ let v21 : US1 = │
00:10:42 #19825 [verbose] > │ if v15 then │
00:10:42 #19826 [verbose] > │ let v16 : System.DateTime = System.DateTime.Now │
00:10:42 #19827 [verbose] > │ let v17 : (System.DateTime -> int64) = _.Ticks │
00:10:42 #19828 [verbose] > │ let v18 : int64 = v17 v16 │
00:10:42 #19829 [verbose] > │ US1_0(v18) │
00:10:42 #19830 [verbose] > │ else │
00:10:42 #19831 [verbose] > │ US1_1 │
00:10:42 #19832 [verbose] > │ let v26 : int64 option = │
00:10:42 #19833 [verbose] > │ match v21 with │
00:10:42 #19834 [verbose] > │ | US1_1 -> (* None *) │
00:10:42 #19835 [verbose] > │ let v24 : int64 option = None │
00:10:42 #19836 [verbose] > │ v24 │
00:10:42 #19837 [verbose] > │ | US1_0(v22) -> (* Some *) │
00:10:42 #19838 [verbose] > │ let v23 : int64 option = Some v22 │
00:10:42 #19839 [verbose] > │ v23 │
00:10:42 #19840 [verbose] > │ let v27 : int64 option = method6(v26) │
00:10:42 #19841 [verbose] > │ v27 │
00:10:42 #19842 [verbose] > │ #else │
00:10:42 #19843 [verbose] > │ let v28 : int64 option = None │
00:10:42 #19844 [verbose] > │ let v29 : int64 option = method7(v28) │
00:10:42 #19845 [verbose] > │ v29 │
00:10:42 #19846 [verbose] > │ #endif │
00:10:42 #19847 [verbose] > │ |> fun x -> _v5 <- Some x │
00:10:42 #19848 [verbose] > │ let v30 : int64 option = _v5.Value │
00:10:42 #19849 [verbose] > │ struct (v1, v4, v0, v3, v30) │
00:10:42 #19850 [verbose] > │ and closure9 () (v0 : int64) : US2 = │
00:10:42 #19851 [verbose] > │ US2_0(v0) │
00:10:42 #19852 [verbose] > │ and method8 () : (int64 -> US2) = │
00:10:42 #19853 [verbose] > │ closure9() │
00:10:42 #19854 [verbose] > │ and method9 () : string = │
00:10:42 #19855 [verbose] > │ let v0 : string = "" │
00:10:42 #19856 [verbose] > │ v0 │
00:10:42 #19857 [verbose] > │ and closure8 (v0 : US0, v1 : (unit -> string), v2 : (unit -> string)) () : │
00:10:42 #19858 [verbose] > │ string = │
00:10:42 #19859 [verbose] > │ let v3 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:10:42 #19860 [verbose] > │ closure7() │
00:10:42 #19861 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:10:42 #19862 [verbose] > │ let struct (v4 : Mut0, v5 : Mut1, v6 : Mut1, v7 : Mut2, v8 : int64 │
00:10:42 #19863 [verbose] > │ option) = State.trace_state.Value │
00:10:42 #19864 [verbose] > │ let v9 : string option = None │
00:10:42 #19865 [verbose] > │ let mutable _v9 = v9 │
00:10:42 #19866 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #19867 [verbose] > │ let v10 : (int64 -> US2) = method8() │
00:10:42 #19868 [verbose] > │ let v11 : US2 = US2_1 │
00:10:42 #19869 [verbose] > │ let v12 : US2 = v8 |> Option.map v10 |> Option.defaultValue v11 │
00:10:42 #19870 [verbose] > │ let v30 : System.DateTime = │
00:10:42 #19871 [verbose] > │ match v12 with │
00:10:42 #19872 [verbose] > │ | US2_1 -> (* None *) │
00:10:42 #19873 [verbose] > │ let v28 : System.DateTime = System.DateTime.Now │
00:10:42 #19874 [verbose] > │ v28 │
00:10:42 #19875 [verbose] > │ | US2_0(v13) -> (* Some *) │
00:10:42 #19876 [verbose] > │ let v14 : System.DateTime = System.DateTime.Now │
00:10:42 #19877 [verbose] > │ let v15 : (System.DateTime -> int64) = _.Ticks │
00:10:42 #19878 [verbose] > │ let v16 : int64 = v15 v14 │
00:10:42 #19879 [verbose] > │ let v17 : int64 = v16 - v13 │
00:10:42 #19880 [verbose] > │ let v18 : System.TimeSpan = System.TimeSpan v17 │
00:10:42 #19881 [verbose] > │ let v19 : (System.TimeSpan -> int32) = _.Hours │
00:10:42 #19882 [verbose] > │ let v20 : int32 = v19 v18 │
00:10:42 #19883 [verbose] > │ let v21 : (System.TimeSpan -> int32) = _.Minutes │
00:10:42 #19884 [verbose] > │ let v22 : int32 = v21 v18 │
00:10:42 #19885 [verbose] > │ let v23 : (System.TimeSpan -> int32) = _.Seconds │
00:10:42 #19886 [verbose] > │ let v24 : int32 = v23 v18 │
00:10:42 #19887 [verbose] > │ let v25 : (System.TimeSpan -> int32) = _.Milliseconds │
00:10:42 #19888 [verbose] > │ let v26 : int32 = v25 v18 │
00:10:42 #19889 [verbose] > │ let v27 : System.DateTime = System.DateTime (1, 1, 1, v20, v22, │
00:10:42 #19890 [verbose] > │ v24, v26) │
00:10:42 #19891 [verbose] > │ v27 │
00:10:42 #19892 [verbose] > │ let v31 : string = "hh:mm:ss" │
00:10:42 #19893 [verbose] > │ let v32 : string = v30.ToString v31 │
00:10:42 #19894 [verbose] > │ v32 │
00:10:42 #19895 [verbose] > │ #endif │
00:10:42 #19896 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #19897 [verbose] > │ let v33 : string = method9() │
00:10:42 #19898 [verbose] > │ v33 │
00:10:42 #19899 [verbose] > │ #endif │
00:10:42 #19900 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #19901 [verbose] > │ let v34 : string = method9() │
00:10:42 #19902 [verbose] > │ v34 │
00:10:42 #19903 [verbose] > │ #endif │
00:10:42 #19904 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #19905 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #19906 [verbose] > │ let v35 : (int64 -> US2) = method8() │
00:10:42 #19907 [verbose] > │ let v36 : US2 = US2_1 │
00:10:42 #19908 [verbose] > │ let v37 : US2 = v8 |> Option.map v35 |> Option.defaultValue v36 │
00:10:42 #19909 [verbose] > │ let v55 : System.DateTime = │
00:10:42 #19910 [verbose] > │ match v37 with │
00:10:42 #19911 [verbose] > │ | US2_1 -> (* None *) │
00:10:42 #19912 [verbose] > │ let v53 : System.DateTime = System.DateTime.Now │
00:10:42 #19913 [verbose] > │ v53 │
00:10:42 #19914 [verbose] > │ | US2_0(v38) -> (* Some *) │
00:10:42 #19915 [verbose] > │ let v39 : System.DateTime = System.DateTime.Now │
00:10:42 #19916 [verbose] > │ let v40 : (System.DateTime -> int64) = _.Ticks │
00:10:42 #19917 [verbose] > │ let v41 : int64 = v40 v39 │
00:10:42 #19918 [verbose] > │ let v42 : int64 = v41 - v38 │
00:10:42 #19919 [verbose] > │ let v43 : System.TimeSpan = System.TimeSpan v42 │
00:10:42 #19920 [verbose] > │ let v44 : (System.TimeSpan -> int32) = _.Hours │
00:10:42 #19921 [verbose] > │ let v45 : int32 = v44 v43 │
00:10:42 #19922 [verbose] > │ let v46 : (System.TimeSpan -> int32) = _.Minutes │
00:10:42 #19923 [verbose] > │ let v47 : int32 = v46 v43 │
00:10:42 #19924 [verbose] > │ let v48 : (System.TimeSpan -> int32) = _.Seconds │
00:10:42 #19925 [verbose] > │ let v49 : int32 = v48 v43 │
00:10:42 #19926 [verbose] > │ let v50 : (System.TimeSpan -> int32) = _.Milliseconds │
00:10:42 #19927 [verbose] > │ let v51 : int32 = v50 v43 │
00:10:42 #19928 [verbose] > │ let v52 : System.DateTime = System.DateTime (1, 1, 1, v45, v47, │
00:10:42 #19929 [verbose] > │ v49, v51) │
00:10:42 #19930 [verbose] > │ v52 │
00:10:42 #19931 [verbose] > │ let v56 : string = "HH:mm:ss" │
00:10:42 #19932 [verbose] > │ let v57 : string = v55.ToString v56 │
00:10:42 #19933 [verbose] > │ v57 │
00:10:42 #19934 [verbose] > │ #endif │
00:10:42 #19935 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #19936 [verbose] > │ let v58 : string = method9() │
00:10:42 #19937 [verbose] > │ v58 │
00:10:42 #19938 [verbose] > │ #endif │
00:10:42 #19939 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #19940 [verbose] > │ Unchecked.defaultof<string> │
00:10:42 #19941 [verbose] > │ #endif │
00:10:42 #19942 [verbose] > │ |> fun x -> _v9 <- Some x │
00:10:42 #19943 [verbose] > │ let v59 : string = _v9.Value │
00:10:42 #19944 [verbose] > │ let v60 : int64 = v4.l0 │
00:10:42 #19945 [verbose] > │ let v70 : string = │
00:10:42 #19946 [verbose] > │ match v0 with │
00:10:42 #19947 [verbose] > │ | US0_4 -> (* Critical *) │
00:10:42 #19948 [verbose] > │ let v65 : string = "Critical" │
00:10:42 #19949 [verbose] > │ v65 │
00:10:42 #19950 [verbose] > │ | US0_1 -> (* Debug *) │
00:10:42 #19951 [verbose] > │ let v62 : string = "Debug" │
00:10:42 #19952 [verbose] > │ v62 │
00:10:42 #19953 [verbose] > │ | US0_2 -> (* Info *) │
00:10:42 #19954 [verbose] > │ let v63 : string = "Info" │
00:10:42 #19955 [verbose] > │ v63 │
00:10:42 #19956 [verbose] > │ | US0_0 -> (* Verbose *) │
00:10:42 #19957 [verbose] > │ let v61 : string = "Verbose" │
00:10:42 #19958 [verbose] > │ v61 │
00:10:42 #19959 [verbose] > │ | US0_3 -> (* Warning *) │
00:10:42 #19960 [verbose] > │ let v64 : string = "Warning" │
00:10:42 #19961 [verbose] > │ v64 │
00:10:42 #19962 [verbose] > │ let v71 : string = v70.ToLower () │
00:10:42 #19963 [verbose] > │ let v72 : string = $"{v59} #{v60} [{v71}] %s{v1 ()} / %s{v2 ()}" │
00:10:42 #19964 [verbose] > │ let v73 : (char []) = [||] │
00:10:42 #19965 [verbose] > │ let v74 : string = v72.TrimStart v73 │
00:10:42 #19966 [verbose] > │ let v75 : (char []) = [|' '; '/'|] │
00:10:42 #19967 [verbose] > │ let v76 : string = v74.TrimEnd v75 │
00:10:42 #19968 [verbose] > │ v76 │
00:10:42 #19969 [verbose] > │ and method5 (v0 : US0, v1 : (unit -> string), v2 : (unit -> string)) : unit │
00:10:42 #19970 [verbose] > │ = │
00:10:42 #19971 [verbose] > │ let v3 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:10:42 #19972 [verbose] > │ closure7() │
00:10:42 #19973 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:10:42 #19974 [verbose] > │ let struct (v4 : Mut0, v5 : Mut1, v6 : Mut1, v7 : Mut2, v8 : int64 │
00:10:42 #19975 [verbose] > │ option) = State.trace_state.Value │
00:10:42 #19976 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:10:42 #19977 [verbose] > │ let struct (v9 : Mut0, v10 : Mut1, v11 : Mut1, v12 : Mut2, v13 : int64 │
00:10:42 #19978 [verbose] > │ option) = State.trace_state.Value │
00:10:42 #19979 [verbose] > │ let v14 : US0 = v12.l0 │
00:10:42 #19980 [verbose] > │ let v15 : bool = v11.l0 │
00:10:42 #19981 [verbose] > │ let v17 : bool = │
00:10:42 #19982 [verbose] > │ if v15 then │
00:10:42 #19983 [verbose] > │ let v16 : bool = v0 >= v14 │
00:10:42 #19984 [verbose] > │ v16 │
00:10:42 #19985 [verbose] > │ else │
00:10:42 #19986 [verbose] > │ false │
00:10:42 #19987 [verbose] > │ if v17 then │
00:10:42 #19988 [verbose] > │ let v18 : int64 = v4.l0 │
00:10:42 #19989 [verbose] > │ let v19 : int64 = v18 + 1L │
00:10:42 #19990 [verbose] > │ v4.l0 <- v19 │
00:10:42 #19991 [verbose] > │ let v20 : (unit -> string) = closure8(v0, v1, v2) │
00:10:42 #19992 [verbose] > │ let v21 : string = $"%s{v20 ()}" │
00:10:42 #19993 [verbose] > │ let v22 : unit option = None │
00:10:42 #19994 [verbose] > │ let mutable _v22 = v22 │
00:10:42 #19995 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #19996 [verbose] > │ let v23 : string = @"println!(""{}"", $0)" │
00:10:42 #19997 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v23 │
00:10:42 #19998 [verbose] > │ () │
00:10:42 #19999 [verbose] > │ #endif │
00:10:42 #20000 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20001 [verbose] > │ let v24 : string = @"println!(""{}"", $0)" │
00:10:42 #20002 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v24 │
00:10:42 #20003 [verbose] > │ () │
00:10:42 #20004 [verbose] > │ #endif │
00:10:42 #20005 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20006 [verbose] > │ let v25 : string = @"println!(""{}"", $0)" │
00:10:42 #20007 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v25 │
00:10:42 #20008 [verbose] > │ () │
00:10:42 #20009 [verbose] > │ #endif │
00:10:42 #20010 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20011 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20012 [verbose] > │ System.Console.WriteLine v21 │
00:10:42 #20013 [verbose] > │ () │
00:10:42 #20014 [verbose] > │ #endif │
00:10:42 #20015 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20016 [verbose] > │ System.Console.WriteLine v21 │
00:10:42 #20017 [verbose] > │ () │
00:10:42 #20018 [verbose] > │ #endif │
00:10:42 #20019 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:42 #20020 [verbose] > │ FABLE_COMPILER_DART │
00:10:42 #20021 [verbose] > │ Unchecked.defaultof<unit> │
00:10:42 #20022 [verbose] > │ #endif │
00:10:42 #20023 [verbose] > │ |> fun x -> _v22 <- Some x │
00:10:42 #20024 [verbose] > │ _v22.Value │
00:10:42 #20025 [verbose] > │ () │
00:10:42 #20026 [verbose] > │ and closure10 () () : string = │
00:10:42 #20027 [verbose] > │ let v0 : string = "2" │
00:10:42 #20028 [verbose] > │ v0 │
00:10:42 #20029 [verbose] > │ and closure11 () () : string = │
00:10:42 #20030 [verbose] > │ let v0 : string = "_1" │
00:10:42 #20031 [verbose] > │ v0 │
00:10:42 #20032 [verbose] > │ and method10 () : string = │
00:10:42 #20033 [verbose] > │ let v0 : string = "test.txt" │
00:10:42 #20034 [verbose] > │ v0 │
00:10:42 #20035 [verbose] > │ and closure12 () () : string = │
00:10:42 #20036 [verbose] > │ let v0 : string = "_2" │
00:10:42 #20037 [verbose] > │ v0 │
00:10:42 #20038 [verbose] > │ and closure13 () () : string = │
00:10:42 #20039 [verbose] > │ let v0 : string = "_3" │
00:10:42 #20040 [verbose] > │ v0 │
00:10:42 #20041 [verbose] > │ and closure14 () () : string = │
00:10:42 #20042 [verbose] > │ let v0 : string = "3" │
00:10:42 #20043 [verbose] > │ v0 │
00:10:42 #20044 [verbose] > │ and closure15 () () : string = │
00:10:42 #20045 [verbose] > │ let v0 : string = "4" │
00:10:42 #20046 [verbose] > │ v0 │
00:10:42 #20047 [verbose] > │ and closure16 () () : string = │
00:10:42 #20048 [verbose] > │ let v0 : string = "5" │
00:10:42 #20049 [verbose] > │ v0 │
00:10:42 #20050 [verbose] > │ and closure17 () () : string = │
00:10:42 #20051 [verbose] > │ let v0 : string = "6" │
00:10:42 #20052 [verbose] > │ v0 │
00:10:42 #20053 [verbose] > │ and closure18 () (v0 : int64) : US3 = │
00:10:42 #20054 [verbose] > │ US3_0(v0) │
00:10:42 #20055 [verbose] > │ and closure19 () (v0 : exn) : US3 = │
00:10:42 #20056 [verbose] > │ US3_1(v0) │
00:10:42 #20057 [verbose] > │ and closure20 () () : string = │
00:10:42 #20058 [verbose] > │ let v0 : string = "run_with_timeout_async" │
00:10:42 #20059 [verbose] > │ v0 │
00:10:42 #20060 [verbose] > │ and closure21 () () : string = │
00:10:42 #20061 [verbose] > │ let v0 : (unit -> string) = closure2() │
00:10:42 #20062 [verbose] > │ let v1 : string = $"timeout: {3000} / {v0 ()}" │
00:10:42 #20063 [verbose] > │ v1 │
00:10:42 #20064 [verbose] > │ and closure22 (v0 : string) () : string = │
00:10:42 #20065 [verbose] > │ let v1 : string = $"run_with_timeout_async** / ex: {v0}" │
00:10:42 #20066 [verbose] > │ v1 │
00:10:42 #20067 [verbose] > │ and method11 (v0 : bool) : bool = │
00:10:42 #20068 [verbose] > │ v0 │
00:10:42 #20069 [verbose] > │ and method0 () : unit = │
00:10:42 #20070 [verbose] > │ let v0 : struct (string * System.IDisposable) option = None │
00:10:42 #20071 [verbose] > │ let mutable _v0 = v0 │
00:10:42 #20072 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20073 [verbose] > │ let struct (v1 : string, v2 : System.IDisposable) = null |> unbox<struct │
00:10:42 #20074 [verbose] > │ (string * System.IDisposable)> │
00:10:42 #20075 [verbose] > │ struct (v1, v2) │
00:10:42 #20076 [verbose] > │ #endif │
00:10:42 #20077 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20078 [verbose] > │ let struct (v3 : string, v4 : System.IDisposable) = null |> unbox<struct │
00:10:42 #20079 [verbose] > │ (string * System.IDisposable)> │
00:10:42 #20080 [verbose] > │ struct (v3, v4) │
00:10:42 #20081 [verbose] > │ #endif │
00:10:42 #20082 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20083 [verbose] > │ let struct (v5 : string, v6 : System.IDisposable) = null |> unbox<struct │
00:10:42 #20084 [verbose] > │ (string * System.IDisposable)> │
00:10:42 #20085 [verbose] > │ struct (v5, v6) │
00:10:42 #20086 [verbose] > │ #endif │
00:10:42 #20087 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20088 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20089 [verbose] > │ let v7 : string option = None │
00:10:42 #20090 [verbose] > │ let mutable _v7 = v7 │
00:10:42 #20091 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20092 [verbose] > │ let v8 : string = null |> unbox<string> │
00:10:42 #20093 [verbose] > │ v8 │
00:10:42 #20094 [verbose] > │ #endif │
00:10:42 #20095 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20096 [verbose] > │ let v9 : string = null |> unbox<string> │
00:10:42 #20097 [verbose] > │ v9 │
00:10:42 #20098 [verbose] > │ #endif │
00:10:42 #20099 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20100 [verbose] > │ let v10 : string = null |> unbox<string> │
00:10:42 #20101 [verbose] > │ v10 │
00:10:42 #20102 [verbose] > │ #endif │
00:10:42 #20103 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20104 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20105 [verbose] > │ let v11 : (unit -> string) = System.IO.Path.GetTempPath │
00:10:42 #20106 [verbose] > │ let v12 : string = v11 () │
00:10:42 #20107 [verbose] > │ let v13 : (unit -> string) = closure0() │
00:10:42 #20108 [verbose] > │ let v14 : string = $"!{v13 ()}" │
00:10:42 #20109 [verbose] > │ let v15 : string option = None │
00:10:42 #20110 [verbose] > │ let mutable _v15 = v15 │
00:10:42 #20111 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20112 [verbose] > │ let v16 : string = method1(v12) │
00:10:42 #20113 [verbose] > │ let v17 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:42 #20114 [verbose] > │ let v18 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v16 v17 │
00:10:42 #20115 [verbose] > │ let v19 : string = "String::from($0)" │
00:10:42 #20116 [verbose] > │ let v20 : std_string_String = Fable.Core.RustInterop.emitRustExpr v18 │
00:10:42 #20117 [verbose] > │ v19 │
00:10:42 #20118 [verbose] > │ let v21 : string = "std::path::PathBuf::from($0)" │
00:10:42 #20119 [verbose] > │ let v22 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v20 v21 │
00:10:42 #20120 [verbose] > │ let v23 : string = method1(v14) │
00:10:42 #20121 [verbose] > │ let v24 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:42 #20122 [verbose] > │ let v25 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v23 v24 │
00:10:42 #20123 [verbose] > │ let v26 : string = "String::from($0)" │
00:10:42 #20124 [verbose] > │ let v27 : std_string_String = Fable.Core.RustInterop.emitRustExpr v25 │
00:10:42 #20125 [verbose] > │ v26 │
00:10:42 #20126 [verbose] > │ let v28 : string = "$0.join($1)" │
00:10:42 #20127 [verbose] > │ let v29 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:42 #20128 [verbose] > │ (v22, v27) v28 │
00:10:42 #20129 [verbose] > │ let v30 : string = "$0.display().to_string()" │
00:10:42 #20130 [verbose] > │ let v31 : std_string_String = Fable.Core.RustInterop.emitRustExpr v29 │
00:10:42 #20131 [verbose] > │ v30 │
00:10:42 #20132 [verbose] > │ let v32 : string = "fable_library_rust::String_::fromString($0)" │
00:10:42 #20133 [verbose] > │ let v33 : string = Fable.Core.RustInterop.emitRustExpr v31 v32 │
00:10:42 #20134 [verbose] > │ v33 │
00:10:42 #20135 [verbose] > │ #endif │
00:10:42 #20136 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20137 [verbose] > │ let v34 : string = null |> unbox<string> │
00:10:42 #20138 [verbose] > │ v34 │
00:10:42 #20139 [verbose] > │ #endif │
00:10:42 #20140 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20141 [verbose] > │ let v35 : string = null |> unbox<string> │
00:10:42 #20142 [verbose] > │ v35 │
00:10:42 #20143 [verbose] > │ #endif │
00:10:42 #20144 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20145 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20146 [verbose] > │ let v36 : string = System.IO.Path.Combine (v12, v14) │
00:10:42 #20147 [verbose] > │ v36 │
00:10:42 #20148 [verbose] > │ #endif │
00:10:42 #20149 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20150 [verbose] > │ let v37 : string = "path" │
00:10:42 #20151 [verbose] > │ let v38 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:42 #20152 [verbose] > │ let v39 : string = "v38.join($0, $1)" │
00:10:42 #20153 [verbose] > │ let v40 : string = Fable.Core.JsInterop.emitJsExpr struct (v12, v14) v39 │
00:10:42 #20154 [verbose] > │ v40 │
00:10:42 #20155 [verbose] > │ #endif │
00:10:42 #20156 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20157 [verbose] > │ Unchecked.defaultof<string> │
00:10:42 #20158 [verbose] > │ #endif │
00:10:42 #20159 [verbose] > │ |> fun x -> _v15 <- Some x │
00:10:42 #20160 [verbose] > │ let v41 : string = _v15.Value │
00:10:42 #20161 [verbose] > │ let v42 : System.DateTime = System.DateTime.Now │
00:10:42 #20162 [verbose] > │ let v43 : System.Guid = System.Guid.NewGuid () │
00:10:42 #20163 [verbose] > │ let v44 : (System.Guid -> string) = _.ToString() │
00:10:42 #20164 [verbose] > │ let v45 : string = v44 v43 │
00:10:42 #20165 [verbose] > │ let v46 : string = v42.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:10:42 #20166 [verbose] > │ let v47 : System.Guid = System.Guid $"{v46}{v45.[v46.Length..]}" │
00:10:42 #20167 [verbose] > │ let v48 : (System.Guid -> string) = _.ToString() │
00:10:42 #20168 [verbose] > │ let v49 : string = v48 v47 │
00:10:42 #20169 [verbose] > │ let v50 : string option = None │
00:10:42 #20170 [verbose] > │ let mutable _v50 = v50 │
00:10:42 #20171 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20172 [verbose] > │ let v51 : string = method1(v41) │
00:10:42 #20173 [verbose] > │ let v52 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:42 #20174 [verbose] > │ let v53 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v51 v52 │
00:10:42 #20175 [verbose] > │ let v54 : string = "String::from($0)" │
00:10:42 #20176 [verbose] > │ let v55 : std_string_String = Fable.Core.RustInterop.emitRustExpr v53 │
00:10:42 #20177 [verbose] > │ v54 │
00:10:42 #20178 [verbose] > │ let v56 : string = "std::path::PathBuf::from($0)" │
00:10:42 #20179 [verbose] > │ let v57 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v55 v56 │
00:10:42 #20180 [verbose] > │ let v58 : string = method1(v49) │
00:10:42 #20181 [verbose] > │ let v59 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:42 #20182 [verbose] > │ let v60 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v58 v59 │
00:10:42 #20183 [verbose] > │ let v61 : string = "String::from($0)" │
00:10:42 #20184 [verbose] > │ let v62 : std_string_String = Fable.Core.RustInterop.emitRustExpr v60 │
00:10:42 #20185 [verbose] > │ v61 │
00:10:42 #20186 [verbose] > │ let v63 : string = "$0.join($1)" │
00:10:42 #20187 [verbose] > │ let v64 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:42 #20188 [verbose] > │ (v57, v62) v63 │
00:10:42 #20189 [verbose] > │ let v65 : string = "$0.display().to_string()" │
00:10:42 #20190 [verbose] > │ let v66 : std_string_String = Fable.Core.RustInterop.emitRustExpr v64 │
00:10:42 #20191 [verbose] > │ v65 │
00:10:42 #20192 [verbose] > │ let v67 : string = "fable_library_rust::String_::fromString($0)" │
00:10:42 #20193 [verbose] > │ let v68 : string = Fable.Core.RustInterop.emitRustExpr v66 v67 │
00:10:42 #20194 [verbose] > │ v68 │
00:10:42 #20195 [verbose] > │ #endif │
00:10:42 #20196 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20197 [verbose] > │ let v69 : string = null |> unbox<string> │
00:10:42 #20198 [verbose] > │ v69 │
00:10:42 #20199 [verbose] > │ #endif │
00:10:42 #20200 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20201 [verbose] > │ let v70 : string = null |> unbox<string> │
00:10:42 #20202 [verbose] > │ v70 │
00:10:42 #20203 [verbose] > │ #endif │
00:10:42 #20204 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20205 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20206 [verbose] > │ let v71 : string = System.IO.Path.Combine (v41, v49) │
00:10:42 #20207 [verbose] > │ v71 │
00:10:42 #20208 [verbose] > │ #endif │
00:10:42 #20209 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20210 [verbose] > │ let v72 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:42 #20211 [verbose] > │ let v73 : string = "v72.join($0, $1)" │
00:10:42 #20212 [verbose] > │ let v74 : string = Fable.Core.JsInterop.emitJsExpr struct (v41, v49) v73 │
00:10:42 #20213 [verbose] > │ v74 │
00:10:42 #20214 [verbose] > │ #endif │
00:10:42 #20215 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20216 [verbose] > │ Unchecked.defaultof<string> │
00:10:42 #20217 [verbose] > │ #endif │
00:10:42 #20218 [verbose] > │ |> fun x -> _v50 <- Some x │
00:10:42 #20219 [verbose] > │ let v75 : string = _v50.Value │
00:10:42 #20220 [verbose] > │ v75 │
00:10:42 #20221 [verbose] > │ #endif │
00:10:42 #20222 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20223 [verbose] > │ let v76 : string = null |> unbox<string> │
00:10:42 #20224 [verbose] > │ v76 │
00:10:42 #20225 [verbose] > │ #endif │
00:10:42 #20226 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20227 [verbose] > │ Unchecked.defaultof<string> │
00:10:42 #20228 [verbose] > │ #endif │
00:10:42 #20229 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:42 #20230 [verbose] > │ let v77 : string = _v7.Value │
00:10:42 #20231 [verbose] > │ let v78 : System.IO.DirectoryInfo option = None │
00:10:42 #20232 [verbose] > │ let mutable _v78 = v78 │
00:10:42 #20233 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20234 [verbose] > │ let v79 : System.IO.DirectoryInfo = null |> │
00:10:42 #20235 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:42 #20236 [verbose] > │ v79 │
00:10:42 #20237 [verbose] > │ #endif │
00:10:42 #20238 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20239 [verbose] > │ let v80 : System.IO.DirectoryInfo = null |> │
00:10:42 #20240 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:42 #20241 [verbose] > │ v80 │
00:10:42 #20242 [verbose] > │ #endif │
00:10:42 #20243 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20244 [verbose] > │ let v81 : System.IO.DirectoryInfo = null |> │
00:10:42 #20245 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:42 #20246 [verbose] > │ v81 │
00:10:42 #20247 [verbose] > │ #endif │
00:10:42 #20248 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20249 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20250 [verbose] > │ let v82 : (string -> System.IO.DirectoryInfo) = │
00:10:42 #20251 [verbose] > │ System.IO.Directory.CreateDirectory │
00:10:42 #20252 [verbose] > │ let v83 : System.IO.DirectoryInfo = v82 v77 │
00:10:42 #20253 [verbose] > │ v83 │
00:10:42 #20254 [verbose] > │ #endif │
00:10:42 #20255 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20256 [verbose] > │ let v84 : System.IO.DirectoryInfo = null |> │
00:10:42 #20257 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:42 #20258 [verbose] > │ v84 │
00:10:42 #20259 [verbose] > │ #endif │
00:10:42 #20260 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20261 [verbose] > │ Unchecked.defaultof<System.IO.DirectoryInfo> │
00:10:42 #20262 [verbose] > │ #endif │
00:10:42 #20263 [verbose] > │ |> fun x -> _v78 <- Some x │
00:10:42 #20264 [verbose] > │ let v85 : System.IO.DirectoryInfo = _v78.Value │
00:10:42 #20265 [verbose] > │ let v86 : bool option = None │
00:10:42 #20266 [verbose] > │ let mutable _v86 = v86 │
00:10:42 #20267 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20268 [verbose] > │ let v87 : bool = null |> unbox<bool> │
00:10:42 #20269 [verbose] > │ v87 │
00:10:42 #20270 [verbose] > │ #endif │
00:10:42 #20271 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20272 [verbose] > │ let v88 : bool = null |> unbox<bool> │
00:10:42 #20273 [verbose] > │ v88 │
00:10:42 #20274 [verbose] > │ #endif │
00:10:42 #20275 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20276 [verbose] > │ let v89 : bool = null |> unbox<bool> │
00:10:42 #20277 [verbose] > │ v89 │
00:10:42 #20278 [verbose] > │ #endif │
00:10:42 #20279 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20280 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20281 [verbose] > │ let v90 : bool = v85.Exists │
00:10:42 #20282 [verbose] > │ v90 │
00:10:42 #20283 [verbose] > │ #endif │
00:10:42 #20284 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20285 [verbose] > │ let v91 : bool = null |> unbox<bool> │
00:10:42 #20286 [verbose] > │ v91 │
00:10:42 #20287 [verbose] > │ #endif │
00:10:42 #20288 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20289 [verbose] > │ Unchecked.defaultof<bool> │
00:10:42 #20290 [verbose] > │ #endif │
00:10:42 #20291 [verbose] > │ |> fun x -> _v86 <- Some x │
00:10:42 #20292 [verbose] > │ let v92 : bool = _v86.Value │
00:10:42 #20293 [verbose] > │ let v93 : bool = v92 = false │
00:10:42 #20294 [verbose] > │ if v93 then │
00:10:42 #20295 [verbose] > │ let v94 : System.DateTime option = None │
00:10:42 #20296 [verbose] > │ let mutable _v94 = v94 │
00:10:42 #20297 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20298 [verbose] > │ let v95 : System.DateTime = null |> unbox<System.DateTime> │
00:10:42 #20299 [verbose] > │ v95 │
00:10:42 #20300 [verbose] > │ #endif │
00:10:42 #20301 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20302 [verbose] > │ let v96 : System.DateTime = null |> unbox<System.DateTime> │
00:10:42 #20303 [verbose] > │ v96 │
00:10:42 #20304 [verbose] > │ #endif │
00:10:42 #20305 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20306 [verbose] > │ let v97 : System.DateTime = null |> unbox<System.DateTime> │
00:10:42 #20307 [verbose] > │ v97 │
00:10:42 #20308 [verbose] > │ #endif │
00:10:42 #20309 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20310 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20311 [verbose] > │ let v98 : System.DateTime = v85.CreationTime │
00:10:42 #20312 [verbose] > │ v98 │
00:10:42 #20313 [verbose] > │ #endif │
00:10:42 #20314 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20315 [verbose] > │ let v99 : System.DateTime = null |> unbox<System.DateTime> │
00:10:42 #20316 [verbose] > │ v99 │
00:10:42 #20317 [verbose] > │ #endif │
00:10:42 #20318 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:42 #20319 [verbose] > │ FABLE_COMPILER_DART │
00:10:42 #20320 [verbose] > │ Unchecked.defaultof<System.DateTime> │
00:10:42 #20321 [verbose] > │ #endif │
00:10:42 #20322 [verbose] > │ |> fun x -> _v94 <- Some x │
00:10:42 #20323 [verbose] > │ let v100 : System.DateTime = _v94.Value │
00:10:42 #20324 [verbose] > │ let v101 : obj = {| Exists = v92; CreationTime = v100 |} │
00:10:42 #20325 [verbose] > │ let v102 : string = $"%A{v101}" │
00:10:42 #20326 [verbose] > │ let v103 : (unit -> string) = closure1(v77, v102) │
00:10:42 #20327 [verbose] > │ let v104 : string = $"create_temp_directory / {v103 ()}" │
00:10:42 #20328 [verbose] > │ System.Console.WriteLine v104 │
00:10:42 #20329 [verbose] > │ () │
00:10:42 #20330 [verbose] > │ let v105 : System.IDisposable option = None │
00:10:42 #20331 [verbose] > │ let mutable _v105 = v105 │
00:10:42 #20332 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20333 [verbose] > │ let v106 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:42 #20334 [verbose] > │ v106 │
00:10:42 #20335 [verbose] > │ #endif │
00:10:42 #20336 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20337 [verbose] > │ let v107 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:42 #20338 [verbose] > │ v107 │
00:10:42 #20339 [verbose] > │ #endif │
00:10:42 #20340 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20341 [verbose] > │ let v108 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:42 #20342 [verbose] > │ v108 │
00:10:42 #20343 [verbose] > │ #endif │
00:10:42 #20344 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20345 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20346 [verbose] > │ let v109 : (unit -> unit) = closure3(v77) │
00:10:42 #20347 [verbose] > │ let v110 : System.IDisposable = { new System.IDisposable with member │
00:10:42 #20348 [verbose] > │ _.Dispose () = v109 () } │
00:10:42 #20349 [verbose] > │ v110 │
00:10:42 #20350 [verbose] > │ #endif │
00:10:42 #20351 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20352 [verbose] > │ let v111 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:42 #20353 [verbose] > │ v111 │
00:10:42 #20354 [verbose] > │ #endif │
00:10:42 #20355 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20356 [verbose] > │ Unchecked.defaultof<System.IDisposable> │
00:10:42 #20357 [verbose] > │ #endif │
00:10:42 #20358 [verbose] > │ |> fun x -> _v105 <- Some x │
00:10:42 #20359 [verbose] > │ let v112 : System.IDisposable = _v105.Value │
00:10:42 #20360 [verbose] > │ struct (v77, v112) │
00:10:42 #20361 [verbose] > │ #endif │
00:10:42 #20362 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20363 [verbose] > │ let struct (v113 : string, v114 : System.IDisposable) = null |> │
00:10:42 #20364 [verbose] > │ unbox<struct (string * System.IDisposable)> │
00:10:42 #20365 [verbose] > │ struct (v113, v114) │
00:10:42 #20366 [verbose] > │ #endif │
00:10:42 #20367 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20368 [verbose] > │ Unchecked.defaultof<struct (string * System.IDisposable)> │
00:10:42 #20369 [verbose] > │ #endif │
00:10:42 #20370 [verbose] > │ |> fun x -> _v0 <- Some x │
00:10:42 #20371 [verbose] > │ let struct (v115 : string, v116 : System.IDisposable) = _v0.Value │
00:10:42 #20372 [verbose] > │ use v116 = v116 │
00:10:42 #20373 [verbose] > │ let v117 : System.IDisposable = v116 │
00:10:42 #20374 [verbose] > │ let v118 : string option = None │
00:10:42 #20375 [verbose] > │ let mutable _v118 = v118 │
00:10:42 #20376 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20377 [verbose] > │ let v119 : string = method1(v115) │
00:10:42 #20378 [verbose] > │ let v120 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:42 #20379 [verbose] > │ let v121 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v119 v120 │
00:10:42 #20380 [verbose] > │ let v122 : string = "String::from($0)" │
00:10:42 #20381 [verbose] > │ let v123 : std_string_String = Fable.Core.RustInterop.emitRustExpr v121 │
00:10:42 #20382 [verbose] > │ v122 │
00:10:42 #20383 [verbose] > │ let v124 : string = "std::path::PathBuf::from($0)" │
00:10:42 #20384 [verbose] > │ let v125 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v123 │
00:10:42 #20385 [verbose] > │ v124 │
00:10:42 #20386 [verbose] > │ let v126 : string = method4() │
00:10:42 #20387 [verbose] > │ let v127 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:42 #20388 [verbose] > │ let v128 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v126 v127 │
00:10:42 #20389 [verbose] > │ let v129 : string = "String::from($0)" │
00:10:42 #20390 [verbose] > │ let v130 : std_string_String = Fable.Core.RustInterop.emitRustExpr v128 │
00:10:42 #20391 [verbose] > │ v129 │
00:10:42 #20392 [verbose] > │ let v131 : string = "$0.join($1)" │
00:10:42 #20393 [verbose] > │ let v132 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:42 #20394 [verbose] > │ (v125, v130) v131 │
00:10:42 #20395 [verbose] > │ let v133 : string = "$0.display().to_string()" │
00:10:42 #20396 [verbose] > │ let v134 : std_string_String = Fable.Core.RustInterop.emitRustExpr v132 │
00:10:42 #20397 [verbose] > │ v133 │
00:10:42 #20398 [verbose] > │ let v135 : string = "fable_library_rust::String_::fromString($0)" │
00:10:42 #20399 [verbose] > │ let v136 : string = Fable.Core.RustInterop.emitRustExpr v134 v135 │
00:10:42 #20400 [verbose] > │ v136 │
00:10:42 #20401 [verbose] > │ #endif │
00:10:42 #20402 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20403 [verbose] > │ let v137 : string = null |> unbox<string> │
00:10:42 #20404 [verbose] > │ v137 │
00:10:42 #20405 [verbose] > │ #endif │
00:10:42 #20406 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20407 [verbose] > │ let v138 : string = null |> unbox<string> │
00:10:42 #20408 [verbose] > │ v138 │
00:10:42 #20409 [verbose] > │ #endif │
00:10:42 #20410 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20411 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20412 [verbose] > │ let v139 : string = "test" │
00:10:42 #20413 [verbose] > │ let v140 : string = System.IO.Path.Combine (v115, v139) │
00:10:42 #20414 [verbose] > │ v140 │
00:10:42 #20415 [verbose] > │ #endif │
00:10:42 #20416 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20417 [verbose] > │ let v141 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:42 #20418 [verbose] > │ let v142 : string = "v141.join($0, $1)" │
00:10:42 #20419 [verbose] > │ let v143 : string = Fable.Core.JsInterop.emitJsExpr struct (v115, v139) │
00:10:42 #20420 [verbose] > │ v142 │
00:10:42 #20421 [verbose] > │ v143 │
00:10:42 #20422 [verbose] > │ #endif │
00:10:42 #20423 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20424 [verbose] > │ Unchecked.defaultof<string> │
00:10:42 #20425 [verbose] > │ #endif │
00:10:42 #20426 [verbose] > │ |> fun x -> _v118 <- Some x │
00:10:42 #20427 [verbose] > │ let v144 : string = _v118.Value │
00:10:42 #20428 [verbose] > │ let v145 : Async<int64> option = None │
00:10:42 #20429 [verbose] > │ let mutable _v145 = v145 │
00:10:42 #20430 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20431 [verbose] > │ let v146 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #20432 [verbose] > │ v146 │
00:10:42 #20433 [verbose] > │ #endif │
00:10:42 #20434 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20435 [verbose] > │ let v147 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #20436 [verbose] > │ v147 │
00:10:42 #20437 [verbose] > │ #endif │
00:10:42 #20438 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20439 [verbose] > │ let v148 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #20440 [verbose] > │ v148 │
00:10:42 #20441 [verbose] > │ #endif │
00:10:42 #20442 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20443 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20444 [verbose] > │ let v149 : Async<int64> option = None │
00:10:42 #20445 [verbose] > │ let mutable _v149 = v149 │
00:10:42 #20446 [verbose] > │ async { │
00:10:42 #20447 [verbose] > │ let v150 : US0 = US0_1 │
00:10:42 #20448 [verbose] > │ let v151 : (unit -> string) = closure6() │
00:10:42 #20449 [verbose] > │ let v152 : (unit -> string) = closure2() │
00:10:42 #20450 [verbose] > │ method5(v150, v151, v152) │
00:10:42 #20451 [verbose] > │ let v153 : System.IO.DirectoryInfo option = None │
00:10:42 #20452 [verbose] > │ let mutable _v153 = v153 │
00:10:42 #20453 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20454 [verbose] > │ let v154 : System.IO.DirectoryInfo = null |> │
00:10:42 #20455 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:42 #20456 [verbose] > │ v154 │
00:10:42 #20457 [verbose] > │ #endif │
00:10:42 #20458 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20459 [verbose] > │ let v155 : System.IO.DirectoryInfo = null |> │
00:10:42 #20460 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:42 #20461 [verbose] > │ v155 │
00:10:42 #20462 [verbose] > │ #endif │
00:10:42 #20463 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20464 [verbose] > │ let v156 : System.IO.DirectoryInfo = null |> │
00:10:42 #20465 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:42 #20466 [verbose] > │ v156 │
00:10:42 #20467 [verbose] > │ #endif │
00:10:42 #20468 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20469 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20470 [verbose] > │ let v157 : (string -> System.IO.DirectoryInfo) = │
00:10:42 #20471 [verbose] > │ System.IO.Directory.CreateDirectory │
00:10:42 #20472 [verbose] > │ let v158 : System.IO.DirectoryInfo = v157 v144 │
00:10:42 #20473 [verbose] > │ v158 │
00:10:42 #20474 [verbose] > │ #endif │
00:10:42 #20475 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20476 [verbose] > │ let v159 : System.IO.DirectoryInfo = null |> │
00:10:42 #20477 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:42 #20478 [verbose] > │ v159 │
00:10:42 #20479 [verbose] > │ #endif │
00:10:42 #20480 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20481 [verbose] > │ Unchecked.defaultof<System.IO.DirectoryInfo> │
00:10:42 #20482 [verbose] > │ #endif │
00:10:42 #20483 [verbose] > │ |> fun x -> _v153 <- Some x │
00:10:42 #20484 [verbose] > │ let v160 : System.IO.DirectoryInfo = _v153.Value │
00:10:42 #20485 [verbose] > │ let v161 : US0 = US0_1 │
00:10:42 #20486 [verbose] > │ let v162 : (unit -> string) = closure10() │
00:10:42 #20487 [verbose] > │ method5(v161, v162, v152) │
00:10:42 #20488 [verbose] > │ let v163 : Async<unit> option = None │
00:10:42 #20489 [verbose] > │ let mutable _v163 = v163 │
00:10:42 #20490 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20491 [verbose] > │ let v164 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20492 [verbose] > │ v164 │
00:10:42 #20493 [verbose] > │ #endif │
00:10:42 #20494 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20495 [verbose] > │ let v165 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20496 [verbose] > │ v165 │
00:10:42 #20497 [verbose] > │ #endif │
00:10:42 #20498 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20499 [verbose] > │ let v166 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20500 [verbose] > │ v166 │
00:10:42 #20501 [verbose] > │ #endif │
00:10:42 #20502 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20503 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20504 [verbose] > │ let v167 : Async<unit> option = None │
00:10:42 #20505 [verbose] > │ let mutable _v167 = v167 │
00:10:42 #20506 [verbose] > │ async { │
00:10:42 #20507 [verbose] > │ let v168 : US0 = US0_1 │
00:10:42 #20508 [verbose] > │ let v169 : (unit -> string) = closure11() │
00:10:42 #20509 [verbose] > │ method5(v168, v169, v152) │
00:10:42 #20510 [verbose] > │ let v170 : string option = None │
00:10:42 #20511 [verbose] > │ let mutable _v170 = v170 │
00:10:42 #20512 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20513 [verbose] > │ let v171 : string = method1(v144) │
00:10:42 #20514 [verbose] > │ let v172 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:42 #20515 [verbose] > │ let v173 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v171 v172 │
00:10:42 #20516 [verbose] > │ let v174 : string = "String::from($0)" │
00:10:42 #20517 [verbose] > │ let v175 : std_string_String = Fable.Core.RustInterop.emitRustExpr v173 │
00:10:42 #20518 [verbose] > │ v174 │
00:10:42 #20519 [verbose] > │ let v176 : string = "std::path::PathBuf::from($0)" │
00:10:42 #20520 [verbose] > │ let v177 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v175 │
00:10:42 #20521 [verbose] > │ v176 │
00:10:42 #20522 [verbose] > │ let v178 : string = method10() │
00:10:42 #20523 [verbose] > │ let v179 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:42 #20524 [verbose] > │ let v180 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v178 v179 │
00:10:42 #20525 [verbose] > │ let v181 : string = "String::from($0)" │
00:10:42 #20526 [verbose] > │ let v182 : std_string_String = Fable.Core.RustInterop.emitRustExpr v180 │
00:10:42 #20527 [verbose] > │ v181 │
00:10:42 #20528 [verbose] > │ let v183 : string = "$0.join($1)" │
00:10:42 #20529 [verbose] > │ let v184 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:42 #20530 [verbose] > │ (v177, v182) v183 │
00:10:42 #20531 [verbose] > │ let v185 : string = "$0.display().to_string()" │
00:10:42 #20532 [verbose] > │ let v186 : std_string_String = Fable.Core.RustInterop.emitRustExpr v184 │
00:10:42 #20533 [verbose] > │ v185 │
00:10:42 #20534 [verbose] > │ let v187 : string = "fable_library_rust::String_::fromString($0)" │
00:10:42 #20535 [verbose] > │ let v188 : string = Fable.Core.RustInterop.emitRustExpr v186 v187 │
00:10:42 #20536 [verbose] > │ v188 │
00:10:42 #20537 [verbose] > │ #endif │
00:10:42 #20538 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20539 [verbose] > │ let v189 : string = null |> unbox<string> │
00:10:42 #20540 [verbose] > │ v189 │
00:10:42 #20541 [verbose] > │ #endif │
00:10:42 #20542 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20543 [verbose] > │ let v190 : string = null |> unbox<string> │
00:10:42 #20544 [verbose] > │ v190 │
00:10:42 #20545 [verbose] > │ #endif │
00:10:42 #20546 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20547 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20548 [verbose] > │ let v191 : string = "test.txt" │
00:10:42 #20549 [verbose] > │ let v192 : string = System.IO.Path.Combine (v144, v191) │
00:10:42 #20550 [verbose] > │ v192 │
00:10:42 #20551 [verbose] > │ #endif │
00:10:42 #20552 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20553 [verbose] > │ let v193 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:42 #20554 [verbose] > │ let v194 : string = "v193.join($0, $1)" │
00:10:42 #20555 [verbose] > │ let v195 : string = Fable.Core.JsInterop.emitJsExpr struct (v144, v191) │
00:10:42 #20556 [verbose] > │ v194 │
00:10:42 #20557 [verbose] > │ v195 │
00:10:42 #20558 [verbose] > │ #endif │
00:10:42 #20559 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20560 [verbose] > │ Unchecked.defaultof<string> │
00:10:42 #20561 [verbose] > │ #endif │
00:10:42 #20562 [verbose] > │ |> fun x -> _v170 <- Some x │
00:10:42 #20563 [verbose] > │ let v196 : string = _v170.Value │
00:10:42 #20564 [verbose] > │ let v197 : Async<unit> option = None │
00:10:42 #20565 [verbose] > │ let mutable _v197 = v197 │
00:10:42 #20566 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20567 [verbose] > │ let v198 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20568 [verbose] > │ v198 │
00:10:42 #20569 [verbose] > │ #endif │
00:10:42 #20570 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20571 [verbose] > │ let v199 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20572 [verbose] > │ v199 │
00:10:42 #20573 [verbose] > │ #endif │
00:10:42 #20574 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20575 [verbose] > │ let v200 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20576 [verbose] > │ v200 │
00:10:42 #20577 [verbose] > │ #endif │
00:10:42 #20578 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20579 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20580 [verbose] > │ let v201 : string = "0" │
00:10:42 #20581 [verbose] > │ let v202 : System.Threading.Tasks.Task = │
00:10:42 #20582 [verbose] > │ System.IO.File.WriteAllTextAsync (v196, v201) │
00:10:42 #20583 [verbose] > │ let v203 : Async<unit> option = None │
00:10:42 #20584 [verbose] > │ let mutable _v203 = v203 │
00:10:42 #20585 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20586 [verbose] > │ let v204 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20587 [verbose] > │ v204 │
00:10:42 #20588 [verbose] > │ #endif │
00:10:42 #20589 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20590 [verbose] > │ let v205 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20591 [verbose] > │ v205 │
00:10:42 #20592 [verbose] > │ #endif │
00:10:42 #20593 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20594 [verbose] > │ let v206 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20595 [verbose] > │ v206 │
00:10:42 #20596 [verbose] > │ #endif │
00:10:42 #20597 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20598 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20599 [verbose] > │ let v207 : (System.Threading.Tasks.Task -> Async<unit>) = │
00:10:42 #20600 [verbose] > │ Async.AwaitTask │
00:10:42 #20601 [verbose] > │ let v208 : Async<unit> = v207 v202 │
00:10:42 #20602 [verbose] > │ v208 │
00:10:42 #20603 [verbose] > │ #endif │
00:10:42 #20604 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20605 [verbose] > │ let v209 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20606 [verbose] > │ v209 │
00:10:42 #20607 [verbose] > │ #endif │
00:10:42 #20608 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20609 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:42 #20610 [verbose] > │ #endif │
00:10:42 #20611 [verbose] > │ |> fun x -> _v203 <- Some x │
00:10:42 #20612 [verbose] > │ let v210 : Async<unit> = _v203.Value │
00:10:42 #20613 [verbose] > │ v210 │
00:10:42 #20614 [verbose] > │ #endif │
00:10:42 #20615 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20616 [verbose] > │ let v211 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20617 [verbose] > │ v211 │
00:10:42 #20618 [verbose] > │ #endif │
00:10:42 #20619 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20620 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:42 #20621 [verbose] > │ #endif │
00:10:42 #20622 [verbose] > │ |> fun x -> _v197 <- Some x │
00:10:42 #20623 [verbose] > │ let v212 : Async<unit> = _v197.Value │
00:10:42 #20624 [verbose] > │ do! v212 │
00:10:42 #20625 [verbose] > │ let v213 : string option = None │
00:10:42 #20626 [verbose] > │ let mutable _v213 = v213 │
00:10:42 #20627 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20628 [verbose] > │ let v214 : string = method1(v144) │
00:10:42 #20629 [verbose] > │ let v215 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:42 #20630 [verbose] > │ let v216 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v214 v215 │
00:10:42 #20631 [verbose] > │ let v217 : string = "String::from($0)" │
00:10:42 #20632 [verbose] > │ let v218 : std_string_String = Fable.Core.RustInterop.emitRustExpr v216 │
00:10:42 #20633 [verbose] > │ v217 │
00:10:42 #20634 [verbose] > │ let v219 : string = "std::path::PathBuf::from($0)" │
00:10:42 #20635 [verbose] > │ let v220 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v218 │
00:10:42 #20636 [verbose] > │ v219 │
00:10:42 #20637 [verbose] > │ let v221 : string = method10() │
00:10:42 #20638 [verbose] > │ let v222 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:42 #20639 [verbose] > │ let v223 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v221 v222 │
00:10:42 #20640 [verbose] > │ let v224 : string = "String::from($0)" │
00:10:42 #20641 [verbose] > │ let v225 : std_string_String = Fable.Core.RustInterop.emitRustExpr v223 │
00:10:42 #20642 [verbose] > │ v224 │
00:10:42 #20643 [verbose] > │ let v226 : string = "$0.join($1)" │
00:10:42 #20644 [verbose] > │ let v227 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:42 #20645 [verbose] > │ (v220, v225) v226 │
00:10:42 #20646 [verbose] > │ let v228 : string = "$0.display().to_string()" │
00:10:42 #20647 [verbose] > │ let v229 : std_string_String = Fable.Core.RustInterop.emitRustExpr v227 │
00:10:42 #20648 [verbose] > │ v228 │
00:10:42 #20649 [verbose] > │ let v230 : string = "fable_library_rust::String_::fromString($0)" │
00:10:42 #20650 [verbose] > │ let v231 : string = Fable.Core.RustInterop.emitRustExpr v229 v230 │
00:10:42 #20651 [verbose] > │ v231 │
00:10:42 #20652 [verbose] > │ #endif │
00:10:42 #20653 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20654 [verbose] > │ let v232 : string = null |> unbox<string> │
00:10:42 #20655 [verbose] > │ v232 │
00:10:42 #20656 [verbose] > │ #endif │
00:10:42 #20657 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20658 [verbose] > │ let v233 : string = null |> unbox<string> │
00:10:42 #20659 [verbose] > │ v233 │
00:10:42 #20660 [verbose] > │ #endif │
00:10:42 #20661 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20662 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20663 [verbose] > │ let v234 : string = System.IO.Path.Combine (v144, v191) │
00:10:42 #20664 [verbose] > │ v234 │
00:10:42 #20665 [verbose] > │ #endif │
00:10:42 #20666 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20667 [verbose] > │ let v235 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:42 #20668 [verbose] > │ let v236 : string = "v235.join($0, $1)" │
00:10:42 #20669 [verbose] > │ let v237 : string = Fable.Core.JsInterop.emitJsExpr struct (v144, v191) │
00:10:42 #20670 [verbose] > │ v236 │
00:10:42 #20671 [verbose] > │ v237 │
00:10:42 #20672 [verbose] > │ #endif │
00:10:42 #20673 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20674 [verbose] > │ Unchecked.defaultof<string> │
00:10:42 #20675 [verbose] > │ #endif │
00:10:42 #20676 [verbose] > │ |> fun x -> _v213 <- Some x │
00:10:42 #20677 [verbose] > │ let v238 : string = _v213.Value │
00:10:42 #20678 [verbose] > │ let v239 : System.IO.FileStream option = None │
00:10:42 #20679 [verbose] > │ let mutable _v239 = v239 │
00:10:42 #20680 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20681 [verbose] > │ let v240 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:42 #20682 [verbose] > │ v240 │
00:10:42 #20683 [verbose] > │ #endif │
00:10:42 #20684 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20685 [verbose] > │ let v241 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:42 #20686 [verbose] > │ v241 │
00:10:42 #20687 [verbose] > │ #endif │
00:10:42 #20688 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20689 [verbose] > │ let v242 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:42 #20690 [verbose] > │ v242 │
00:10:42 #20691 [verbose] > │ #endif │
00:10:42 #20692 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20693 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20694 [verbose] > │ let v243 : System.IO.FileMode = System.IO.FileMode.Open │
00:10:42 #20695 [verbose] > │ let v244 : System.IO.FileAccess = System.IO.FileAccess.ReadWrite │
00:10:42 #20696 [verbose] > │ let v245 : System.IO.FileShare = System.IO.FileShare.None │
00:10:42 #20697 [verbose] > │ let v246 : System.IO.FileStream = new System.IO.FileStream (v238, v243, │
00:10:42 #20698 [verbose] > │ v244, v245) │
00:10:42 #20699 [verbose] > │ v246 │
00:10:42 #20700 [verbose] > │ #endif │
00:10:42 #20701 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20702 [verbose] > │ let v247 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:42 #20703 [verbose] > │ v247 │
00:10:42 #20704 [verbose] > │ #endif │
00:10:42 #20705 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20706 [verbose] > │ Unchecked.defaultof<System.IO.FileStream> │
00:10:42 #20707 [verbose] > │ #endif │
00:10:42 #20708 [verbose] > │ |> fun x -> _v239 <- Some x │
00:10:42 #20709 [verbose] > │ let v248 : System.IO.FileStream = _v239.Value │
00:10:42 #20710 [verbose] > │ use v248 = v248 │
00:10:42 #20711 [verbose] > │ let v249 : System.IO.FileStream = v248 │
00:10:42 #20712 [verbose] > │ let v250 : US0 = US0_1 │
00:10:42 #20713 [verbose] > │ let v251 : (unit -> string) = closure12() │
00:10:42 #20714 [verbose] > │ method5(v250, v251, v152) │
00:10:42 #20715 [verbose] > │ let v252 : Async<unit> option = None │
00:10:42 #20716 [verbose] > │ let mutable _v252 = v252 │
00:10:42 #20717 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20718 [verbose] > │ let v253 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20719 [verbose] > │ v253 │
00:10:42 #20720 [verbose] > │ #endif │
00:10:42 #20721 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20722 [verbose] > │ let v254 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20723 [verbose] > │ v254 │
00:10:42 #20724 [verbose] > │ #endif │
00:10:42 #20725 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20726 [verbose] > │ let v255 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20727 [verbose] > │ v255 │
00:10:42 #20728 [verbose] > │ #endif │
00:10:42 #20729 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20730 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20731 [verbose] > │ let v256 : (int32 -> Async<unit>) = Async.Sleep │
00:10:42 #20732 [verbose] > │ let v257 : Async<unit> = v256 2000 │
00:10:42 #20733 [verbose] > │ v257 │
00:10:42 #20734 [verbose] > │ #endif │
00:10:42 #20735 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20736 [verbose] > │ let v258 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20737 [verbose] > │ v258 │
00:10:42 #20738 [verbose] > │ #endif │
00:10:42 #20739 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20740 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:42 #20741 [verbose] > │ #endif │
00:10:42 #20742 [verbose] > │ |> fun x -> _v252 <- Some x │
00:10:42 #20743 [verbose] > │ let v259 : Async<unit> = _v252.Value │
00:10:42 #20744 [verbose] > │ do! v259 │
00:10:42 #20745 [verbose] > │ let v260 : US0 = US0_1 │
00:10:42 #20746 [verbose] > │ let v261 : (unit -> string) = closure13() │
00:10:42 #20747 [verbose] > │ method5(v260, v261, v152) │
00:10:42 #20748 [verbose] > │ return () │
00:10:42 #20749 [verbose] > │ } │
00:10:42 #20750 [verbose] > │ |> fun x -> _v167 <- Some x │
00:10:42 #20751 [verbose] > │ let v262 : Async<unit> = _v167 |> Option.get │
00:10:42 #20752 [verbose] > │ v262 │
00:10:42 #20753 [verbose] > │ #endif │
00:10:42 #20754 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20755 [verbose] > │ let v263 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20756 [verbose] > │ v263 │
00:10:42 #20757 [verbose] > │ #endif │
00:10:42 #20758 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20759 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:42 #20760 [verbose] > │ #endif │
00:10:42 #20761 [verbose] > │ |> fun x -> _v163 <- Some x │
00:10:42 #20762 [verbose] > │ let v264 : Async<unit> = _v163.Value │
00:10:42 #20763 [verbose] > │ let v265 : Async<Async<unit>> option = None │
00:10:42 #20764 [verbose] > │ let mutable _v265 = v265 │
00:10:42 #20765 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20766 [verbose] > │ let v266 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:42 #20767 [verbose] > │ v266 │
00:10:42 #20768 [verbose] > │ #endif │
00:10:42 #20769 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20770 [verbose] > │ let v267 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:42 #20771 [verbose] > │ v267 │
00:10:42 #20772 [verbose] > │ #endif │
00:10:42 #20773 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20774 [verbose] > │ let v268 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:42 #20775 [verbose] > │ v268 │
00:10:42 #20776 [verbose] > │ #endif │
00:10:42 #20777 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20778 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20779 [verbose] > │ let v269 : (Async<unit> -> Async<Async<unit>>) = Async.StartChild │
00:10:42 #20780 [verbose] > │ let v270 : Async<Async<unit>> = v269 v264 │
00:10:42 #20781 [verbose] > │ v270 │
00:10:42 #20782 [verbose] > │ #endif │
00:10:42 #20783 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20784 [verbose] > │ let v271 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:42 #20785 [verbose] > │ v271 │
00:10:42 #20786 [verbose] > │ #endif │
00:10:42 #20787 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20788 [verbose] > │ Unchecked.defaultof<Async<Async<unit>>> │
00:10:42 #20789 [verbose] > │ #endif │
00:10:42 #20790 [verbose] > │ |> fun x -> _v265 <- Some x │
00:10:42 #20791 [verbose] > │ let v272 : Async<Async<unit>> = _v265.Value │
00:10:42 #20792 [verbose] > │ let! v272 = v272 │
00:10:42 #20793 [verbose] > │ let v273 : Async<unit> = v272 │
00:10:42 #20794 [verbose] > │ let v274 : US0 = US0_1 │
00:10:42 #20795 [verbose] > │ let v275 : (unit -> string) = closure14() │
00:10:42 #20796 [verbose] > │ method5(v274, v275, v152) │
00:10:42 #20797 [verbose] > │ let v276 : Async<unit> option = None │
00:10:42 #20798 [verbose] > │ let mutable _v276 = v276 │
00:10:42 #20799 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20800 [verbose] > │ let v277 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20801 [verbose] > │ v277 │
00:10:42 #20802 [verbose] > │ #endif │
00:10:42 #20803 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20804 [verbose] > │ let v278 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20805 [verbose] > │ v278 │
00:10:42 #20806 [verbose] > │ #endif │
00:10:42 #20807 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20808 [verbose] > │ let v279 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20809 [verbose] > │ v279 │
00:10:42 #20810 [verbose] > │ #endif │
00:10:42 #20811 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20812 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20813 [verbose] > │ let v280 : (int32 -> Async<unit>) = Async.Sleep │
00:10:42 #20814 [verbose] > │ let v281 : Async<unit> = v280 60 │
00:10:42 #20815 [verbose] > │ v281 │
00:10:42 #20816 [verbose] > │ #endif │
00:10:42 #20817 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20818 [verbose] > │ let v282 : Async<unit> = null |> unbox<Async<unit>> │
00:10:42 #20819 [verbose] > │ v282 │
00:10:42 #20820 [verbose] > │ #endif │
00:10:42 #20821 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20822 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:42 #20823 [verbose] > │ #endif │
00:10:42 #20824 [verbose] > │ |> fun x -> _v276 <- Some x │
00:10:42 #20825 [verbose] > │ let v283 : Async<unit> = _v276.Value │
00:10:42 #20826 [verbose] > │ do! v283 │
00:10:42 #20827 [verbose] > │ let v284 : US0 = US0_1 │
00:10:42 #20828 [verbose] > │ let v285 : (unit -> string) = closure15() │
00:10:42 #20829 [verbose] > │ method5(v284, v285, v152) │
00:10:42 #20830 [verbose] > │ let v286 : Async<int64> option = None │
00:10:42 #20831 [verbose] > │ let mutable _v286 = v286 │
00:10:42 #20832 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20833 [verbose] > │ let v287 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #20834 [verbose] > │ v287 │
00:10:42 #20835 [verbose] > │ #endif │
00:10:42 #20836 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20837 [verbose] > │ let v288 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #20838 [verbose] > │ v288 │
00:10:42 #20839 [verbose] > │ #endif │
00:10:42 #20840 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20841 [verbose] > │ let v289 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #20842 [verbose] > │ v289 │
00:10:42 #20843 [verbose] > │ #endif │
00:10:42 #20844 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20845 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20846 [verbose] > │ let v290 : int64 = 0L │
00:10:42 #20847 [verbose] > │ let v291 : Async<int64> = method2(v144, v290) │
00:10:42 #20848 [verbose] > │ v291 │
00:10:42 #20849 [verbose] > │ #endif │
00:10:42 #20850 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20851 [verbose] > │ let v292 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #20852 [verbose] > │ v292 │
00:10:42 #20853 [verbose] > │ #endif │
00:10:42 #20854 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20855 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:42 #20856 [verbose] > │ #endif │
00:10:42 #20857 [verbose] > │ |> fun x -> _v286 <- Some x │
00:10:42 #20858 [verbose] > │ let v293 : Async<int64> = _v286.Value │
00:10:42 #20859 [verbose] > │ let! v293 = v293 │
00:10:42 #20860 [verbose] > │ let v294 : int64 = v293 │
00:10:42 #20861 [verbose] > │ let v295 : US0 = US0_1 │
00:10:42 #20862 [verbose] > │ let v296 : (unit -> string) = closure16() │
00:10:42 #20863 [verbose] > │ method5(v295, v296, v152) │
00:10:42 #20864 [verbose] > │ do! v273 │
00:10:42 #20865 [verbose] > │ let v297 : US0 = US0_1 │
00:10:42 #20866 [verbose] > │ let v298 : (unit -> string) = closure17() │
00:10:42 #20867 [verbose] > │ method5(v297, v298, v152) │
00:10:42 #20868 [verbose] > │ return v294 │
00:10:42 #20869 [verbose] > │ } │
00:10:42 #20870 [verbose] > │ |> fun x -> _v149 <- Some x │
00:10:42 #20871 [verbose] > │ let v299 : Async<int64> = _v149 |> Option.get │
00:10:42 #20872 [verbose] > │ v299 │
00:10:42 #20873 [verbose] > │ #endif │
00:10:42 #20874 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:42 #20875 [verbose] > │ let v300 : Async<int64> = null |> unbox<Async<int64>> │
00:10:42 #20876 [verbose] > │ v300 │
00:10:42 #20877 [verbose] > │ #endif │
00:10:42 #20878 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:42 #20879 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:42 #20880 [verbose] > │ #endif │
00:10:42 #20881 [verbose] > │ |> fun x -> _v145 <- Some x │
00:10:42 #20882 [verbose] > │ let v301 : Async<int64> = _v145.Value │
00:10:42 #20883 [verbose] > │ let v302 : Async<US2> option = None │
00:10:42 #20884 [verbose] > │ let mutable _v302 = v302 │
00:10:42 #20885 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20886 [verbose] > │ let v303 : Async<US2> = null |> unbox<Async<US2>> │
00:10:42 #20887 [verbose] > │ v303 │
00:10:42 #20888 [verbose] > │ #endif │
00:10:42 #20889 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20890 [verbose] > │ let v304 : Async<US2> = null |> unbox<Async<US2>> │
00:10:42 #20891 [verbose] > │ v304 │
00:10:42 #20892 [verbose] > │ #endif │
00:10:42 #20893 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20894 [verbose] > │ let v305 : Async<US2> = null |> unbox<Async<US2>> │
00:10:42 #20895 [verbose] > │ v305 │
00:10:42 #20896 [verbose] > │ #endif │
00:10:42 #20897 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20898 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20899 [verbose] > │ let v306 : Async<US2> option = None │
00:10:42 #20900 [verbose] > │ let mutable _v306 = v306 │
00:10:42 #20901 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20902 [verbose] > │ let v307 : Async<US2> = null |> unbox<Async<US2>> │
00:10:42 #20903 [verbose] > │ v307 │
00:10:42 #20904 [verbose] > │ #endif │
00:10:42 #20905 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20906 [verbose] > │ let v308 : Async<US2> = null |> unbox<Async<US2>> │
00:10:42 #20907 [verbose] > │ v308 │
00:10:42 #20908 [verbose] > │ #endif │
00:10:42 #20909 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20910 [verbose] > │ let v309 : Async<US2> = null |> unbox<Async<US2>> │
00:10:42 #20911 [verbose] > │ v309 │
00:10:42 #20912 [verbose] > │ #endif │
00:10:42 #20913 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20914 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20915 [verbose] > │ let v310 : Async<US2> option = None │
00:10:42 #20916 [verbose] > │ let mutable _v310 = v310 │
00:10:42 #20917 [verbose] > │ async { │
00:10:42 #20918 [verbose] > │ let v311 : Async<Async<int64>> option = None │
00:10:42 #20919 [verbose] > │ let mutable _v311 = v311 │
00:10:42 #20920 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:42 #20921 [verbose] > │ let v312 : Async<Async<int64>> = null |> unbox<Async<Async<int64>>> │
00:10:42 #20922 [verbose] > │ v312 │
00:10:42 #20923 [verbose] > │ #endif │
00:10:42 #20924 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:42 #20925 [verbose] > │ let v313 : Async<Async<int64>> = null |> unbox<Async<Async<int64>>> │
00:10:42 #20926 [verbose] > │ v313 │
00:10:42 #20927 [verbose] > │ #endif │
00:10:42 #20928 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:42 #20929 [verbose] > │ let v314 : Async<Async<int64>> = null |> unbox<Async<Async<int64>>> │
00:10:42 #20930 [verbose] > │ v314 │
00:10:42 #20931 [verbose] > │ #endif │
00:10:42 #20932 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:42 #20933 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:42 #20934 [verbose] > │ let v315 : Async<Async<int64>> = Async.StartChild (v301, 3000) │
00:10:43 #20935 [verbose] > │ v315 │
00:10:43 #20936 [verbose] > │ #endif │
00:10:43 #20937 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:43 #20938 [verbose] > │ let v316 : Async<Async<int64>> = null |> unbox<Async<Async<int64>>> │
00:10:43 #20939 [verbose] > │ v316 │
00:10:43 #20940 [verbose] > │ #endif │
00:10:43 #20941 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:43 #20942 [verbose] > │ Unchecked.defaultof<Async<Async<int64>>> │
00:10:43 #20943 [verbose] > │ #endif │
00:10:43 #20944 [verbose] > │ |> fun x -> _v311 <- Some x │
00:10:43 #20945 [verbose] > │ let v317 : Async<Async<int64>> = _v311.Value │
00:10:43 #20946 [verbose] > │ let! v317 = v317 │
00:10:43 #20947 [verbose] > │ let v318 : Async<int64> = v317 │
00:10:43 #20948 [verbose] > │ let v319 : Async<Choice<int64, exn>> option = None │
00:10:43 #20949 [verbose] > │ let mutable _v319 = v319 │
00:10:43 #20950 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:43 #20951 [verbose] > │ let v320 : Async<Choice<int64, exn>> = null |> unbox<Async<Choice<int64, │
00:10:43 #20952 [verbose] > │ exn>>> │
00:10:43 #20953 [verbose] > │ v320 │
00:10:43 #20954 [verbose] > │ #endif │
00:10:43 #20955 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:43 #20956 [verbose] > │ let v321 : Async<Choice<int64, exn>> = null |> unbox<Async<Choice<int64, │
00:10:43 #20957 [verbose] > │ exn>>> │
00:10:43 #20958 [verbose] > │ v321 │
00:10:43 #20959 [verbose] > │ #endif │
00:10:43 #20960 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:43 #20961 [verbose] > │ let v322 : Async<Choice<int64, exn>> = null |> unbox<Async<Choice<int64, │
00:10:43 #20962 [verbose] > │ exn>>> │
00:10:43 #20963 [verbose] > │ v322 │
00:10:43 #20964 [verbose] > │ #endif │
00:10:43 #20965 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:43 #20966 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:43 #20967 [verbose] > │ let v323 : (Async<int64> -> Async<Choice<int64, exn>>) = Async.Catch │
00:10:43 #20968 [verbose] > │ let v324 : Async<Choice<int64, exn>> = v323 v318 │
00:10:43 #20969 [verbose] > │ v324 │
00:10:43 #20970 [verbose] > │ #endif │
00:10:43 #20971 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:43 #20972 [verbose] > │ let v325 : Async<Choice<int64, exn>> = null |> unbox<Async<Choice<int64, │
00:10:43 #20973 [verbose] > │ exn>>> │
00:10:43 #20974 [verbose] > │ v325 │
00:10:43 #20975 [verbose] > │ #endif │
00:10:43 #20976 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:43 #20977 [verbose] > │ Unchecked.defaultof<Async<Choice<int64, exn>>> │
00:10:43 #20978 [verbose] > │ #endif │
00:10:43 #20979 [verbose] > │ |> fun x -> _v319 <- Some x │
00:10:43 #20980 [verbose] > │ let v326 : Async<Choice<int64, exn>> = _v319.Value │
00:10:43 #20981 [verbose] > │ let v327 : Async<US3> option = None │
00:10:43 #20982 [verbose] > │ let mutable _v327 = v327 │
00:10:43 #20983 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:43 #20984 [verbose] > │ let v328 : Async<US3> = null |> unbox<Async<US3>> │
00:10:43 #20985 [verbose] > │ v328 │
00:10:43 #20986 [verbose] > │ #endif │
00:10:43 #20987 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:43 #20988 [verbose] > │ let v329 : Async<US3> = null |> unbox<Async<US3>> │
00:10:43 #20989 [verbose] > │ v329 │
00:10:43 #20990 [verbose] > │ #endif │
00:10:43 #20991 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:43 #20992 [verbose] > │ let v330 : Async<US3> = null |> unbox<Async<US3>> │
00:10:43 #20993 [verbose] > │ v330 │
00:10:43 #20994 [verbose] > │ #endif │
00:10:43 #20995 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:43 #20996 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:43 #20997 [verbose] > │ let v331 : Async<US3> option = None │
00:10:43 #20998 [verbose] > │ let mutable _v331 = v331 │
00:10:43 #20999 [verbose] > │ async { │
00:10:43 #21000 [verbose] > │ let! v326 = v326 │
00:10:43 #21001 [verbose] > │ let v332 : Choice<int64, exn> = v326 │
00:10:43 #21002 [verbose] > │ let v333 : US3 option = None │
00:10:43 #21003 [verbose] > │ let mutable _v333 = v333 │
00:10:43 #21004 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:43 #21005 [verbose] > │ let v334 : US3 = null |> unbox<US3> │
00:10:43 #21006 [verbose] > │ v334 │
00:10:43 #21007 [verbose] > │ #endif │
00:10:43 #21008 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:43 #21009 [verbose] > │ let v335 : US3 = null |> unbox<US3> │
00:10:43 #21010 [verbose] > │ v335 │
00:10:43 #21011 [verbose] > │ #endif │
00:10:43 #21012 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:43 #21013 [verbose] > │ let v336 : US3 = null |> unbox<US3> │
00:10:43 #21014 [verbose] > │ v336 │
00:10:43 #21015 [verbose] > │ #endif │
00:10:43 #21016 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:43 #21017 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:43 #21018 [verbose] > │ let v337 : (int64 -> US3) = closure18() │
00:10:43 #21019 [verbose] > │ let v338 : (exn -> US3) = closure19() │
00:10:43 #21020 [verbose] > │ let v339 : US3 = match v332 with Choice1Of2 x -> v337 x | Choice2Of2 x │
00:10:43 #21021 [verbose] > │ -> v338 x │
00:10:43 #21022 [verbose] > │ v339 │
00:10:43 #21023 [verbose] > │ #endif │
00:10:43 #21024 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:43 #21025 [verbose] > │ let v340 : US3 = null |> unbox<US3> │
00:10:43 #21026 [verbose] > │ v340 │
00:10:43 #21027 [verbose] > │ #endif │
00:10:43 #21028 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:43 #21029 [verbose] > │ Unchecked.defaultof<US3> │
00:10:43 #21030 [verbose] > │ #endif │
00:10:43 #21031 [verbose] > │ |> fun x -> _v333 <- Some x │
00:10:43 #21032 [verbose] > │ let v341 : US3 = _v333.Value │
00:10:43 #21033 [verbose] > │ return v341 │
00:10:43 #21034 [verbose] > │ } │
00:10:43 #21035 [verbose] > │ |> fun x -> _v331 <- Some x │
00:10:43 #21036 [verbose] > │ let v342 : Async<US3> = _v331 |> Option.get │
00:10:43 #21037 [verbose] > │ v342 │
00:10:43 #21038 [verbose] > │ #endif │
00:10:43 #21039 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:43 #21040 [verbose] > │ let v343 : Async<US3> = null |> unbox<Async<US3>> │
00:10:43 #21041 [verbose] > │ v343 │
00:10:43 #21042 [verbose] > │ #endif │
00:10:43 #21043 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:43 #21044 [verbose] > │ Unchecked.defaultof<Async<US3>> │
00:10:43 #21045 [verbose] > │ #endif │
00:10:43 #21046 [verbose] > │ |> fun x -> _v327 <- Some x │
00:10:43 #21047 [verbose] > │ let v344 : Async<US3> = _v327.Value │
00:10:43 #21048 [verbose] > │ let v345 : Async<US4> option = None │
00:10:43 #21049 [verbose] > │ let mutable _v345 = v345 │
00:10:43 #21050 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:43 #21051 [verbose] > │ let v346 : Async<US4> = null |> unbox<Async<US4>> │
00:10:43 #21052 [verbose] > │ v346 │
00:10:43 #21053 [verbose] > │ #endif │
00:10:43 #21054 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:43 #21055 [verbose] > │ let v347 : Async<US4> = null |> unbox<Async<US4>> │
00:10:43 #21056 [verbose] > │ v347 │
00:10:43 #21057 [verbose] > │ #endif │
00:10:43 #21058 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:43 #21059 [verbose] > │ let v348 : Async<US4> = null |> unbox<Async<US4>> │
00:10:43 #21060 [verbose] > │ v348 │
00:10:43 #21061 [verbose] > │ #endif │
00:10:43 #21062 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:43 #21063 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:43 #21064 [verbose] > │ let v349 : Async<US4> option = None │
00:10:43 #21065 [verbose] > │ let mutable _v349 = v349 │
00:10:43 #21066 [verbose] > │ async { │
00:10:43 #21067 [verbose] > │ let! v344 = v344 │
00:10:43 #21068 [verbose] > │ let v350 : US3 = v344 │
00:10:43 #21069 [verbose] > │ let v356 : US4 = │
00:10:43 #21070 [verbose] > │ match v350 with │
00:10:43 #21071 [verbose] > │ | US3_0(v351) -> (* Choice1Of2 *) │
00:10:43 #21072 [verbose] > │ US4_0(v351) │
00:10:43 #21073 [verbose] > │ | US3_1(v353) -> (* Choice2Of2 *) │
00:10:43 #21074 [verbose] > │ US4_1(v353) │
00:10:43 #21075 [verbose] > │ return v356 │
00:10:43 #21076 [verbose] > │ } │
00:10:43 #21077 [verbose] > │ |> fun x -> _v349 <- Some x │
00:10:43 #21078 [verbose] > │ let v357 : Async<US4> = _v349 |> Option.get │
00:10:43 #21079 [verbose] > │ v357 │
00:10:43 #21080 [verbose] > │ #endif │
00:10:43 #21081 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:43 #21082 [verbose] > │ let v358 : Async<US4> = null |> unbox<Async<US4>> │
00:10:43 #21083 [verbose] > │ v358 │
00:10:43 #21084 [verbose] > │ #endif │
00:10:43 #21085 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:43 #21086 [verbose] > │ Unchecked.defaultof<Async<US4>> │
00:10:43 #21087 [verbose] > │ #endif │
00:10:43 #21088 [verbose] > │ |> fun x -> _v345 <- Some x │
00:10:43 #21089 [verbose] > │ let v359 : Async<US4> = _v345.Value │
00:10:43 #21090 [verbose] > │ let v360 : Async<US2> option = None │
00:10:43 #21091 [verbose] > │ let mutable _v360 = v360 │
00:10:43 #21092 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:43 #21093 [verbose] > │ let v361 : Async<US2> = null |> unbox<Async<US2>> │
00:10:43 #21094 [verbose] > │ v361 │
00:10:43 #21095 [verbose] > │ #endif │
00:10:43 #21096 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:43 #21097 [verbose] > │ let v362 : Async<US2> = null |> unbox<Async<US2>> │
00:10:43 #21098 [verbose] > │ v362 │
00:10:43 #21099 [verbose] > │ #endif │
00:10:43 #21100 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:43 #21101 [verbose] > │ let v363 : Async<US2> = null |> unbox<Async<US2>> │
00:10:43 #21102 [verbose] > │ v363 │
00:10:43 #21103 [verbose] > │ #endif │
00:10:43 #21104 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:43 #21105 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:43 #21106 [verbose] > │ let v364 : Async<US2> option = None │
00:10:43 #21107 [verbose] > │ let mutable _v364 = v364 │
00:10:43 #21108 [verbose] > │ async { │
00:10:43 #21109 [verbose] > │ let! v359 = v359 │
00:10:43 #21110 [verbose] > │ let v365 : US4 = v359 │
00:10:43 #21111 [verbose] > │ let v389 : US2 = │
00:10:43 #21112 [verbose] > │ match v365 with │
00:10:43 #21113 [verbose] > │ | US4_1(v368) -> (* Error *) │
00:10:43 #21114 [verbose] > │ let v369 : string = $"%A{v368}" │
00:10:43 #21115 [verbose] > │ let v370 : string = "System.TimeoutException" │
00:10:43 #21116 [verbose] > │ let v371 : bool = v369.Contains v370 │
00:10:43 #21117 [verbose] > │ if v371 then │
00:10:43 #21118 [verbose] > │ let v372 : US0 = US0_1 │
00:10:43 #21119 [verbose] > │ let v373 : (unit -> string) = closure20() │
00:10:43 #21120 [verbose] > │ let v374 : (unit -> string) = closure21() │
00:10:43 #21121 [verbose] > │ method5(v372, v373, v374) │
00:10:43 #21122 [verbose] > │ US2_1 │
00:10:43 #21123 [verbose] > │ else │
00:10:43 #21124 [verbose] > │ let v376 : string option = None │
00:10:43 #21125 [verbose] > │ let mutable _v376 = v376 │
00:10:43 #21126 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:43 #21127 [verbose] > │ let v377 : string = $"%A{v368}" │
00:10:43 #21128 [verbose] > │ v377 │
00:10:43 #21129 [verbose] > │ #endif │
00:10:43 #21130 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:43 #21131 [verbose] > │ let v378 : string = $"%A{v368}" │
00:10:43 #21132 [verbose] > │ v378 │
00:10:43 #21133 [verbose] > │ #endif │
00:10:43 #21134 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:43 #21135 [verbose] > │ let v379 : string = $"%A{v368}" │
00:10:43 #21136 [verbose] > │ v379 │
00:10:43 #21137 [verbose] > │ #endif │
00:10:43 #21138 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:43 #21139 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:43 #21140 [verbose] > │ let v380 : string = $"{v368.GetType ()}: {v368.Message}" │
00:10:43 #21141 [verbose] > │ v380 │
00:10:43 #21142 [verbose] > │ #endif │
00:10:43 #21143 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:43 #21144 [verbose] > │ let v381 : string = $"%A{v368}" │
00:10:43 #21145 [verbose] > │ v381 │
00:10:43 #21146 [verbose] > │ #endif │
00:10:43 #21147 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:43 #21148 [verbose] > │ FABLE_COMPILER_DART │
00:10:43 #21149 [verbose] > │ Unchecked.defaultof<string> │
00:10:43 #21150 [verbose] > │ #endif │
00:10:43 #21151 [verbose] > │ |> fun x -> _v376 <- Some x │
00:10:43 #21152 [verbose] > │ let v382 : string = _v376.Value │
00:10:43 #21153 [verbose] > │ let v383 : US0 = US0_4 │
00:10:43 #21154 [verbose] > │ let v384 : (unit -> string) = closure22(v382) │
00:10:43 #21155 [verbose] > │ let v385 : (unit -> string) = closure21() │
00:10:43 #21156 [verbose] > │ method5(v383, v384, v385) │
00:10:43 #21157 [verbose] > │ US2_1 │
00:10:43 #21158 [verbose] > │ | US4_0(v366) -> (* Ok *) │
00:10:43 #21159 [verbose] > │ US2_0(v366) │
00:10:43 #21160 [verbose] > │ return v389 │
00:10:43 #21161 [verbose] > │ } │
00:10:43 #21162 [verbose] > │ |> fun x -> _v364 <- Some x │
00:10:43 #21163 [verbose] > │ let v390 : Async<US2> = _v364 |> Option.get │
00:10:43 #21164 [verbose] > │ v390 │
00:10:43 #21165 [verbose] > │ #endif │
00:10:43 #21166 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:43 #21167 [verbose] > │ let v391 : Async<US2> = null |> unbox<Async<US2>> │
00:10:43 #21168 [verbose] > │ v391 │
00:10:43 #21169 [verbose] > │ #endif │
00:10:43 #21170 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:43 #21171 [verbose] > │ Unchecked.defaultof<Async<US2>> │
00:10:43 #21172 [verbose] > │ #endif │
00:10:43 #21173 [verbose] > │ |> fun x -> _v360 <- Some x │
00:10:43 #21174 [verbose] > │ let v392 : Async<US2> = _v360.Value │
00:10:43 #21175 [verbose] > │ return! v392 │
00:10:43 #21176 [verbose] > │ } │
00:10:43 #21177 [verbose] > │ |> fun x -> _v310 <- Some x │
00:10:43 #21178 [verbose] > │ let v393 : Async<US2> = _v310 |> Option.get │
00:10:43 #21179 [verbose] > │ v393 │
00:10:43 #21180 [verbose] > │ #endif │
00:10:43 #21181 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:43 #21182 [verbose] > │ let v394 : Async<US2> = null |> unbox<Async<US2>> │
00:10:43 #21183 [verbose] > │ v394 │
00:10:43 #21184 [verbose] > │ #endif │
00:10:43 #21185 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:43 #21186 [verbose] > │ Unchecked.defaultof<Async<US2>> │
00:10:43 #21187 [verbose] > │ #endif │
00:10:43 #21188 [verbose] > │ |> fun x -> _v306 <- Some x │
00:10:43 #21189 [verbose] > │ let v395 : Async<US2> = _v306.Value │
00:10:43 #21190 [verbose] > │ v395 │
00:10:43 #21191 [verbose] > │ #endif │
00:10:43 #21192 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:43 #21193 [verbose] > │ let v396 : Async<US2> = null |> unbox<Async<US2>> │
00:10:43 #21194 [verbose] > │ v396 │
00:10:43 #21195 [verbose] > │ #endif │
00:10:43 #21196 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:43 #21197 [verbose] > │ Unchecked.defaultof<Async<US2>> │
00:10:43 #21198 [verbose] > │ #endif │
00:10:43 #21199 [verbose] > │ |> fun x -> _v302 <- Some x │
00:10:43 #21200 [verbose] > │ let v397 : Async<US2> = _v302.Value │
00:10:43 #21201 [verbose] > │ let v398 : US2 option = None │
00:10:43 #21202 [verbose] > │ let mutable _v398 = v398 │
00:10:43 #21203 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:43 #21204 [verbose] > │ let v399 : US2 = null |> unbox<US2> │
00:10:43 #21205 [verbose] > │ v399 │
00:10:43 #21206 [verbose] > │ #endif │
00:10:43 #21207 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:43 #21208 [verbose] > │ let v400 : US2 = null |> unbox<US2> │
00:10:43 #21209 [verbose] > │ v400 │
00:10:43 #21210 [verbose] > │ #endif │
00:10:43 #21211 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:43 #21212 [verbose] > │ let v401 : US2 = null |> unbox<US2> │
00:10:43 #21213 [verbose] > │ v401 │
00:10:43 #21214 [verbose] > │ #endif │
00:10:43 #21215 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:43 #21216 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:43 #21217 [verbose] > │ let v402 : (Async<US2> -> US2) = Async.RunSynchronously │
00:10:43 #21218 [verbose] > │ let v403 : US2 = v402 v397 │
00:10:43 #21219 [verbose] > │ v403 │
00:10:43 #21220 [verbose] > │ #endif │
00:10:43 #21221 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:43 #21222 [verbose] > │ let v404 : US2 = null |> unbox<US2> │
00:10:43 #21223 [verbose] > │ v404 │
00:10:43 #21224 [verbose] > │ #endif │
00:10:43 #21225 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:43 #21226 [verbose] > │ Unchecked.defaultof<US2> │
00:10:43 #21227 [verbose] > │ #endif │
00:10:43 #21228 [verbose] > │ |> fun x -> _v398 <- Some x │
00:10:43 #21229 [verbose] > │ let v405 : US2 = _v398.Value │
00:10:43 #21230 [verbose] > │ let v429 : bool = │
00:10:43 #21231 [verbose] > │ match v405 with │
00:10:43 #21232 [verbose] > │ | US2_0(v406) -> (* Some *) │
00:10:43 #21233 [verbose] > │ let v407 : System.Runtime.InteropServices.OSPlatform = │
00:10:43 #21234 [verbose] > │ System.Runtime.InteropServices.OSPlatform.Windows │
00:10:43 #21235 [verbose] > │ let v408 : (System.Runtime.InteropServices.OSPlatform -> bool) = │
00:10:43 #21236 [verbose] > │ System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform │
00:10:43 #21237 [verbose] > │ let v409 : bool = v408 v407 │
00:10:43 #21238 [verbose] > │ let v410 : int64 = │
00:10:43 #21239 [verbose] > │ if v409 then │
00:10:43 #21240 [verbose] > │ 50L │
00:10:43 #21241 [verbose] > │ else │
00:10:43 #21242 [verbose] > │ 0L │
00:10:43 #21243 [verbose] > │ let v411 : System.Runtime.InteropServices.OSPlatform = │
00:10:43 #21244 [verbose] > │ System.Runtime.InteropServices.OSPlatform.Windows │
00:10:43 #21245 [verbose] > │ let v412 : (System.Runtime.InteropServices.OSPlatform -> bool) = │
00:10:43 #21246 [verbose] > │ System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform │
00:10:43 #21247 [verbose] > │ let v413 : bool = v412 v411 │
00:10:43 #21248 [verbose] > │ let v414 : int64 = │
00:10:43 #21249 [verbose] > │ if v413 then │
00:10:43 #21250 [verbose] > │ 150L │
00:10:43 #21251 [verbose] > │ else │
00:10:43 #21252 [verbose] > │ 0L │
00:10:43 #21253 [verbose] > │ let v415 : string = $"%A{v406}" │
00:10:43 #21254 [verbose] > │ System.Console.WriteLine v415 │
00:10:43 #21255 [verbose] > │ let v416 : string = $"%A{v406}" │
00:10:43 #21256 [verbose] > │ System.Console.WriteLine v416 │
00:10:43 #21257 [verbose] > │ let v417 : bool = v406 >= v410 │
00:10:43 #21258 [verbose] > │ let v419 : bool = │
00:10:43 #21259 [verbose] > │ if v417 then │
00:10:43 #21260 [verbose] > │ true │
00:10:43 #21261 [verbose] > │ else │
00:10:43 #21262 [verbose] > │ method11(v417) │
00:10:43 #21263 [verbose] > │ let v420 : string = $"__expect / actual: %A{v406} / expected: │
00:10:43 #21264 [verbose] > │ %A{v410}" │
00:10:43 #21265 [verbose] > │ let v421 : bool = v419 = false │
00:10:43 #21266 [verbose] > │ if v421 then │
00:10:43 #21267 [verbose] > │ failwith<unit> v420 │
00:10:43 #21268 [verbose] > │ let v422 : string = $"%A{v406}" │
00:10:43 #21269 [verbose] > │ System.Console.WriteLine v422 │
00:10:43 #21270 [verbose] > │ let v423 : bool = v406 <= v414 │
00:10:43 #21271 [verbose] > │ let v425 : bool = │
00:10:43 #21272 [verbose] > │ if v423 then │
00:10:43 #21273 [verbose] > │ true │
00:10:43 #21274 [verbose] > │ else │
00:10:43 #21275 [verbose] > │ method11(v423) │
00:10:43 #21276 [verbose] > │ let v426 : string = $"__expect / actual: %A{v406} / expected: │
00:10:43 #21277 [verbose] > │ %A{v414}" │
00:10:43 #21278 [verbose] > │ let v427 : bool = v425 = false │
00:10:43 #21279 [verbose] > │ if v427 then │
00:10:43 #21280 [verbose] > │ failwith<unit> v426 │
00:10:43 #21281 [verbose] > │ let v428 : string = $"__expect / actual: %A{v406} / expected: │
00:10:43 #21282 [verbose] > │ %A{struct (v410, v414)}" │
00:10:43 #21283 [verbose] > │ true │
00:10:43 #21284 [verbose] > │ | _ -> │
00:10:43 #21285 [verbose] > │ false │
00:10:43 #21286 [verbose] > │ let v430 : string = $"%A{v429}" │
00:10:43 #21287 [verbose] > │ System.Console.WriteLine v430 │
00:10:43 #21288 [verbose] > │ let v432 : bool = │
00:10:43 #21289 [verbose] > │ if v429 then │
00:10:43 #21290 [verbose] > │ true │
00:10:43 #21291 [verbose] > │ else │
00:10:43 #21292 [verbose] > │ method11(v429) │
00:10:43 #21293 [verbose] > │ let v433 : string = $"__expect / actual: %A{v429} / expected: %A{true}" │
00:10:43 #21294 [verbose] > │ let v434 : bool = v432 = false │
00:10:43 #21295 [verbose] > │ if v434 then │
00:10:43 #21296 [verbose] > │ failwith<unit> v433 │
00:10:43 #21297 [verbose] > │ method0() │
00:10:43 #21298 [verbose] > │ │
00:10:43 #21299 [verbose] > │ 00:00:00 #1 [debug] 1 │
00:10:43 #21300 [verbose] > │ 00:00:00 #2 [debug] 2 │
00:10:43 #21301 [verbose] > │ 00:00:00 #3 [debug] 3 │
00:10:43 #21302 [verbose] > │ 00:00:00 #4 [debug] _1 │
00:10:43 #21303 [verbose] > │ 00:00:00 #5 [debug] _2 │
00:10:43 #21304 [verbose] > │ 00:00:00 #6 [debug] 4 │
00:10:43 #21305 [verbose] > │ delete_directory_async / path: test / ex: System.IO.IOException: The process │
00:10:43 #21306 [verbose] > │ cannot access the file 'test.txt' because it is being used by another │
00:10:43 #21307 [verbose] > │ process. / │
00:10:43 #21308 [verbose] > │ delete_directory_async / path: test / ex: System.IO.IOException: The process │
00:10:43 #21309 [verbose] > │ cannot access the file 'test.txt' because it is being used by another │
00:10:43 #21310 [verbose] > │ process. / │
00:10:43 #21311 [verbose] > │ 00:00:02 #7 [debug] _3 │
00:10:43 #21312 [verbose] > │ 00:00:02 #8 [debug] 5 │
00:10:43 #21313 [verbose] > │ 00:00:02 #9 [debug] 6 │
00:10:43 #21314 [verbose] > │ 126L │
00:10:43 #21315 [verbose] > │ 126L │
00:10:43 #21316 [verbose] > │ 126L │
00:10:43 #21317 [verbose] > │ true │
00:10:43 #21318 [verbose] > │ │
00:10:43 #21319 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:43 #21320 [verbose] >
00:10:43 #21321 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:43 #21322 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:43 #21323 [verbose] > │ ## wait_for_file_access │
00:10:43 #21324 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:43 #21325 [verbose] >
00:10:43 #21326 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:43 #21327 [verbose] > inl wait_for_file_access access path =
00:10:43 #21328 [verbose] > run_target function
00:10:43 #21329 [verbose] > | Fsharp (Native) => fun () =>
00:10:43 #21330 [verbose] > inl file_access, file_share =
00:10:43 #21331 [verbose] > access
00:10:43 #21332 [verbose] > |> optionm'.default_value (AccessReadWrite, ShareRead)
00:10:43 #21333 [verbose] > let rec loop (retry : i64) : _ i64 =
00:10:43 #21334 [verbose] > fun () =>
00:10:43 #21335 [verbose] > try_unit
00:10:43 #21336 [verbose] > fun () =>
00:10:43 #21337 [verbose] > file_stream
00:10:43 #21338 [verbose] > path
00:10:43 #21339 [verbose] > ModeOpen
00:10:43 #21340 [verbose] > file_access
00:10:43 #21341 [verbose] > file_share
00:10:43 #21342 [verbose] > |> use
00:10:43 #21343 [verbose] > |> ignore
00:10:43 #21344 [verbose] > retry |> return
00:10:43 #21345 [verbose] > fun ex =>
00:10:43 #21346 [verbose] > if retry > 0 && retry % 100i64 = 0 then
00:10:43 #21347 [verbose] > inl ex = ex |> sm'.format_exception
00:10:43 #21348 [verbose] > let get_locals () = $'$"path: {!path |>
00:10:43 #21349 [verbose] > !get_file_name} / retry: {!retry} / ex: {!ex} / {!get_locals ()}"' : string
00:10:43 #21350 [verbose] > // trace Debug (fun () ->
00:10:43 #21351 [verbose] > "wait_for_file_access") getLocals
00:10:43 #21352 [verbose] > console.write_line ($'$"wait_for_file_access
00:10:43 #21353 [verbose] > {!get_locals ()}"' : string)
00:10:43 #21354 [verbose] > async.sleep 10i32 |> async.do
00:10:43 #21355 [verbose] > loop (retry + 1) |> async.return_await
00:10:43 #21356 [verbose] > |> async.new_async
00:10:43 #21357 [verbose] > loop 0
00:10:43 #21358 [verbose] > | _ => fun () => null ()
00:10:43 #21359 [verbose] >
00:10:43 #21360 [verbose] > inl wait_for_file_access_read path =
00:10:43 #21361 [verbose] > path
00:10:43 #21362 [verbose] > |> wait_for_file_access (Some (
00:10:43 #21363 [verbose] > AccessRead,
00:10:43 #21364 [verbose] > ShareRead
00:10:43 #21365 [verbose] > ))
00:10:43 #21366 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d1bc159eb0bfd0b55087a9a42ef1b00417b2ffac7dffacbaa6cc52a3c99a9b43\main.spi
00:10:43 #21367 [verbose] >
00:10:43 #21368 [verbose] > ╭─[ 307.19ms - stdout ]────────────────────────────────────────────────────────╮
00:10:43 #21369 [verbose] > │ () │
00:10:43 #21370 [verbose] > │ │
00:10:43 #21371 [verbose] > │ │
00:10:43 #21372 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:43 #21373 [verbose] >
00:10:43 #21374 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:43 #21375 [verbose] > // // test
00:10:43 #21376 [verbose] >
00:10:43 #21377 [verbose] > inl lock_file path =
00:10:43 #21378 [verbose] > fun () =>
00:10:43 #21379 [verbose] > trace Debug (fun () => "_1") get_locals
00:10:43 #21380 [verbose] > inl stream : file_stream' =
00:10:43 #21381 [verbose] > file_stream
00:10:43 #21382 [verbose] > path
00:10:43 #21383 [verbose] > ModeOpen
00:10:43 #21384 [verbose] > AccessReadWrite
00:10:43 #21385 [verbose] > ShareNone
00:10:43 #21386 [verbose] > |> use
00:10:43 #21387 [verbose] > trace Debug (fun () => "_2") get_locals
00:10:43 #21388 [verbose] > async.sleep 2000 |> async.do
00:10:43 #21389 [verbose] > trace Debug (fun () => "_3") get_locals
00:10:43 #21390 [verbose] > ($'!stream.Seek (0L, System.IO.SeekOrigin.Begin)' : i64) |> ignore
00:10:43 #21391 [verbose] > trace Debug (fun () => "_4") get_locals
00:10:43 #21392 [verbose] > $'!stream.WriteByte' 49u8
00:10:43 #21393 [verbose] > trace Debug (fun () => "_5") get_locals
00:10:43 #21394 [verbose] > stream |> $'_.Flush()'
00:10:43 #21395 [verbose] > trace Debug (fun () => "_6") get_locals
00:10:43 #21396 [verbose] > |> async.new_async
00:10:43 #21397 [verbose] >
00:10:43 #21398 [verbose] > inl temp_dir, disposable = create_temp_directory ()
00:10:43 #21399 [verbose] > disposable |> use |> ignore
00:10:43 #21400 [verbose] > inl path = temp_dir </> "test.txt"
00:10:43 #21401 [verbose] >
00:10:43 #21402 [verbose] > fun () =>
00:10:43 #21403 [verbose] > trace Debug (fun () => "1") get_locals
00:10:43 #21404 [verbose] > "0" |> write_all_text_async path |> async.do
00:10:43 #21405 [verbose] > trace Debug (fun () => "2") get_locals
00:10:43 #21406 [verbose] > inl child = path |> lock_file |> async.start_child |> async.let'
00:10:43 #21407 [verbose] > trace Debug (fun () => "3") get_locals
00:10:43 #21408 [verbose] > async.sleep 1 |> async.do
00:10:43 #21409 [verbose] > trace Debug (fun () => "4") get_locals
00:10:43 #21410 [verbose] > inl retries = path |> wait_for_file_access None |> async.let'
00:10:43 #21411 [verbose] > trace Debug (fun () => "5") get_locals
00:10:43 #21412 [verbose] > inl text = path |> read_all_text_async |> async.let'
00:10:43 #21413 [verbose] > trace Debug (fun () => "6") get_locals
00:10:43 #21414 [verbose] > child |> async.do
00:10:43 #21415 [verbose] > trace Debug (fun () => "7") get_locals
00:10:43 #21416 [verbose] > (retries, text) |> return
00:10:43 #21417 [verbose] > |> async.new_async_unit
00:10:43 #21418 [verbose] > |> async.run_with_timeout 3000
00:10:43 #21419 [verbose] > |> function
00:10:43 #21420 [verbose] > | Some ((retries : i64), text) =>
00:10:43 #21421 [verbose] > retries
00:10:43 #21422 [verbose] > |> _assert_between
00:10:43 #21423 [verbose] > (if runtime.is_windows () then 50 else 100)
00:10:43 #21424 [verbose] > (if runtime.is_windows () then 150 else 200)
00:10:43 #21425 [verbose] >
00:10:43 #21426 [verbose] > text |> _assert_eq (join "1")
00:10:43 #21427 [verbose] >
00:10:43 #21428 [verbose] > true
00:10:43 #21429 [verbose] > | _ => false
00:10:43 #21430 [verbose] > |> _assert_eq true
00:10:43 #21431 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\24287f46df74d6d492431fda21ab3b4b9d027ba3efba6ef4ed9c6ec30ab1d0f8\main.spi
00:10:46 #21432 [verbose] >
00:10:46 #21433 [verbose] > ╭─[ 3.39s - stdout ]───────────────────────────────────────────────────────────╮
00:10:46 #21434 [verbose] > │ type IPathJoin = abstract join: [<System.ParamArray>] paths: string[] -> │
00:10:46 #21435 [verbose] > │ string │
00:10:46 #21436 [verbose] > │ module State = let mutable trace_state = None │
00:10:46 #21437 [verbose] > │ type [<Struct>] US0 = │
00:10:46 #21438 [verbose] > │ | US0_0 │
00:10:46 #21439 [verbose] > │ | US0_1 │
00:10:46 #21440 [verbose] > │ | US0_2 │
00:10:46 #21441 [verbose] > │ | US0_3 │
00:10:46 #21442 [verbose] > │ | US0_4 │
00:10:46 #21443 [verbose] > │ and Mut0 = {mutable l0 : int64} │
00:10:46 #21444 [verbose] > │ and Mut1 = {mutable l0 : bool} │
00:10:46 #21445 [verbose] > │ and Mut2 = {mutable l0 : US0} │
00:10:46 #21446 [verbose] > │ and [<Struct>] US1 = │
00:10:46 #21447 [verbose] > │ | US1_0 of f0_0 : int64 │
00:10:46 #21448 [verbose] > │ | US1_1 │
00:10:46 #21449 [verbose] > │ and [<Struct>] US2 = │
00:10:46 #21450 [verbose] > │ | US2_0 of f0_0 : int64 │
00:10:46 #21451 [verbose] > │ | US2_1 │
00:10:46 #21452 [verbose] > │ and [<Struct>] US3 = │
00:10:46 #21453 [verbose] > │ | US3_0 of f0_0 : int64 * f0_1 : string │
00:10:46 #21454 [verbose] > │ | US3_1 │
00:10:46 #21455 [verbose] > │ and [<Struct>] US4 = │
00:10:46 #21456 [verbose] > │ | US4_0 of f0_0 : int64 * f0_1 : string │
00:10:47 #21457 [verbose] > │ | US4_1 of f1_0 : exn │
00:10:47 #21458 [verbose] > │ and [<Struct>] US5 = │
00:10:47 #21459 [verbose] > │ | US5_0 of f0_0 : int64 * f0_1 : string │
00:10:47 #21460 [verbose] > │ | US5_1 of f1_0 : exn │
00:10:47 #21461 [verbose] > │ let rec closure0 () () : string = │
00:10:47 #21462 [verbose] > │ let v0 : string option = None │
00:10:47 #21463 [verbose] > │ let mutable _v0 = v0 │
00:10:47 #21464 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #21465 [verbose] > │ let v1 : string = null |> unbox<string> │
00:10:47 #21466 [verbose] > │ v1 │
00:10:47 #21467 [verbose] > │ #endif │
00:10:47 #21468 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #21469 [verbose] > │ let v2 : string = null |> unbox<string> │
00:10:47 #21470 [verbose] > │ v2 │
00:10:47 #21471 [verbose] > │ #endif │
00:10:47 #21472 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #21473 [verbose] > │ let v3 : string = null |> unbox<string> │
00:10:47 #21474 [verbose] > │ v3 │
00:10:47 #21475 [verbose] > │ #endif │
00:10:47 #21476 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #21477 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #21478 [verbose] > │ let v4 : string = │
00:10:47 #21479 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:10:47 #21480 [verbose] > │ v4 │
00:10:47 #21481 [verbose] > │ #endif │
00:10:47 #21482 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #21483 [verbose] > │ let v5 : string = null |> unbox<string> │
00:10:47 #21484 [verbose] > │ v5 │
00:10:47 #21485 [verbose] > │ #endif │
00:10:47 #21486 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #21487 [verbose] > │ Unchecked.defaultof<string> │
00:10:47 #21488 [verbose] > │ #endif │
00:10:47 #21489 [verbose] > │ |> fun x -> _v0 <- Some x │
00:10:47 #21490 [verbose] > │ let v6 : string = _v0.Value │
00:10:47 #21491 [verbose] > │ v6 │
00:10:47 #21492 [verbose] > │ and method1 (v0 : string) : string = │
00:10:47 #21493 [verbose] > │ v0 │
00:10:47 #21494 [verbose] > │ and closure2 () () : string = │
00:10:47 #21495 [verbose] > │ let v0 : string = "" │
00:10:47 #21496 [verbose] > │ v0 │
00:10:47 #21497 [verbose] > │ and closure1 (v0 : string, v1 : string) () : string = │
00:10:47 #21498 [verbose] > │ let v2 : (unit -> string) = closure2() │
00:10:47 #21499 [verbose] > │ let v3 : string = $"temp_folder: {v0} / result: {v1} {v2 ()}" │
00:10:47 #21500 [verbose] > │ v3 │
00:10:47 #21501 [verbose] > │ and closure5 () (v0 : string) : string = │
00:10:47 #21502 [verbose] > │ let v1 : string option = None │
00:10:47 #21503 [verbose] > │ let mutable _v1 = v1 │
00:10:47 #21504 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #21505 [verbose] > │ let v2 : string = null |> unbox<string> │
00:10:47 #21506 [verbose] > │ v2 │
00:10:47 #21507 [verbose] > │ #endif │
00:10:47 #21508 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #21509 [verbose] > │ let v3 : string = null |> unbox<string> │
00:10:47 #21510 [verbose] > │ v3 │
00:10:47 #21511 [verbose] > │ #endif │
00:10:47 #21512 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #21513 [verbose] > │ let v4 : string = null |> unbox<string> │
00:10:47 #21514 [verbose] > │ v4 │
00:10:47 #21515 [verbose] > │ #endif │
00:10:47 #21516 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #21517 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #21518 [verbose] > │ let v5 : (string -> string) = System.IO.Path.GetFileName │
00:10:47 #21519 [verbose] > │ let v6 : string = v5 v0 │
00:10:47 #21520 [verbose] > │ v6 │
00:10:47 #21521 [verbose] > │ #endif │
00:10:47 #21522 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #21523 [verbose] > │ let v7 : string = null |> unbox<string> │
00:10:47 #21524 [verbose] > │ v7 │
00:10:47 #21525 [verbose] > │ #endif │
00:10:47 #21526 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #21527 [verbose] > │ Unchecked.defaultof<string> │
00:10:47 #21528 [verbose] > │ #endif │
00:10:47 #21529 [verbose] > │ |> fun x -> _v1 <- Some x │
00:10:47 #21530 [verbose] > │ let v8 : string = _v1.Value │
00:10:47 #21531 [verbose] > │ v8 │
00:10:47 #21532 [verbose] > │ and method3 (v0 : string, v1 : string) : string = │
00:10:47 #21533 [verbose] > │ let v2 : (string -> string) = closure5() │
00:10:47 #21534 [verbose] > │ let v3 : (unit -> string) = closure2() │
00:10:47 #21535 [verbose] > │ let v4 : string = $"path: {v0 |> v2} / ex: {v1} / {v3 ()}" │
00:10:47 #21536 [verbose] > │ v4 │
00:10:47 #21537 [verbose] > │ and closure4 (v0 : string, v1 : string) () : string = │
00:10:47 #21538 [verbose] > │ method3(v0, v1) │
00:10:47 #21539 [verbose] > │ and method2 (v0 : string, v1 : int64) : Async<int64> = │
00:10:47 #21540 [verbose] > │ let v2 : Async<int64> option = None │
00:10:47 #21541 [verbose] > │ let mutable _v2 = v2 │
00:10:47 #21542 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #21543 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #21544 [verbose] > │ v3 │
00:10:47 #21545 [verbose] > │ #endif │
00:10:47 #21546 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #21547 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #21548 [verbose] > │ v4 │
00:10:47 #21549 [verbose] > │ #endif │
00:10:47 #21550 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #21551 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #21552 [verbose] > │ v5 │
00:10:47 #21553 [verbose] > │ #endif │
00:10:47 #21554 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #21555 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #21556 [verbose] > │ let v6 : Async<int64> option = None │
00:10:47 #21557 [verbose] > │ let mutable _v6 = v6 │
00:10:47 #21558 [verbose] > │ async { │
00:10:47 #21559 [verbose] > │ try │
00:10:47 #21560 [verbose] > │ let v7 : unit option = None │
00:10:47 #21561 [verbose] > │ let mutable _v7 = v7 │
00:10:47 #21562 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #21563 [verbose] > │ null |> unbox<unit> │
00:10:47 #21564 [verbose] > │ () │
00:10:47 #21565 [verbose] > │ #endif │
00:10:47 #21566 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #21567 [verbose] > │ null |> unbox<unit> │
00:10:47 #21568 [verbose] > │ () │
00:10:47 #21569 [verbose] > │ #endif │
00:10:47 #21570 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #21571 [verbose] > │ null |> unbox<unit> │
00:10:47 #21572 [verbose] > │ () │
00:10:47 #21573 [verbose] > │ #endif │
00:10:47 #21574 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #21575 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #21576 [verbose] > │ System.IO.Directory.Delete (v0, true) │
00:10:47 #21577 [verbose] > │ () │
00:10:47 #21578 [verbose] > │ #endif │
00:10:47 #21579 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #21580 [verbose] > │ null |> unbox<unit> │
00:10:47 #21581 [verbose] > │ () │
00:10:47 #21582 [verbose] > │ #endif │
00:10:47 #21583 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #21584 [verbose] > │ Unchecked.defaultof<unit> │
00:10:47 #21585 [verbose] > │ #endif │
00:10:47 #21586 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:47 #21587 [verbose] > │ _v7.Value │
00:10:47 #21588 [verbose] > │ return v1 │
00:10:47 #21589 [verbose] > │ with ex -> │
00:10:47 #21590 [verbose] > │ let v8 : exn = ex │
00:10:47 #21591 [verbose] > │ let v9 : int64 = v1 % 100L │
00:10:47 #21592 [verbose] > │ let v10 : bool = v9 = 0L │
00:10:47 #21593 [verbose] > │ if v10 then │
00:10:47 #21594 [verbose] > │ let v11 : string option = None │
00:10:47 #21595 [verbose] > │ let mutable _v11 = v11 │
00:10:47 #21596 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #21597 [verbose] > │ let v12 : string = $"%A{v8}" │
00:10:47 #21598 [verbose] > │ v12 │
00:10:47 #21599 [verbose] > │ #endif │
00:10:47 #21600 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #21601 [verbose] > │ let v13 : string = $"%A{v8}" │
00:10:47 #21602 [verbose] > │ v13 │
00:10:47 #21603 [verbose] > │ #endif │
00:10:47 #21604 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #21605 [verbose] > │ let v14 : string = $"%A{v8}" │
00:10:47 #21606 [verbose] > │ v14 │
00:10:47 #21607 [verbose] > │ #endif │
00:10:47 #21608 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #21609 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #21610 [verbose] > │ let v15 : string = $"{v8.GetType ()}: {v8.Message}" │
00:10:47 #21611 [verbose] > │ v15 │
00:10:47 #21612 [verbose] > │ #endif │
00:10:47 #21613 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #21614 [verbose] > │ let v16 : string = $"%A{v8}" │
00:10:47 #21615 [verbose] > │ v16 │
00:10:47 #21616 [verbose] > │ #endif │
00:10:47 #21617 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:47 #21618 [verbose] > │ FABLE_COMPILER_DART │
00:10:47 #21619 [verbose] > │ Unchecked.defaultof<string> │
00:10:47 #21620 [verbose] > │ #endif │
00:10:47 #21621 [verbose] > │ |> fun x -> _v11 <- Some x │
00:10:47 #21622 [verbose] > │ let v17 : string = _v11.Value │
00:10:47 #21623 [verbose] > │ let v18 : (unit -> string) = closure4(v0, v17) │
00:10:47 #21624 [verbose] > │ let v19 : string = $"delete_directory_async / {v18 ()}" │
00:10:47 #21625 [verbose] > │ System.Console.WriteLine v19 │
00:10:47 #21626 [verbose] > │ () │
00:10:47 #21627 [verbose] > │ let v20 : Async<unit> option = None │
00:10:47 #21628 [verbose] > │ let mutable _v20 = v20 │
00:10:47 #21629 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #21630 [verbose] > │ let v21 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #21631 [verbose] > │ v21 │
00:10:47 #21632 [verbose] > │ #endif │
00:10:47 #21633 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #21634 [verbose] > │ let v22 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #21635 [verbose] > │ v22 │
00:10:47 #21636 [verbose] > │ #endif │
00:10:47 #21637 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #21638 [verbose] > │ let v23 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #21639 [verbose] > │ v23 │
00:10:47 #21640 [verbose] > │ #endif │
00:10:47 #21641 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #21642 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #21643 [verbose] > │ let v24 : (int32 -> Async<unit>) = Async.Sleep │
00:10:47 #21644 [verbose] > │ let v25 : Async<unit> = v24 10 │
00:10:47 #21645 [verbose] > │ v25 │
00:10:47 #21646 [verbose] > │ #endif │
00:10:47 #21647 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #21648 [verbose] > │ let v26 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #21649 [verbose] > │ v26 │
00:10:47 #21650 [verbose] > │ #endif │
00:10:47 #21651 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #21652 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:47 #21653 [verbose] > │ #endif │
00:10:47 #21654 [verbose] > │ |> fun x -> _v20 <- Some x │
00:10:47 #21655 [verbose] > │ let v27 : Async<unit> = _v20.Value │
00:10:47 #21656 [verbose] > │ do! v27 │
00:10:47 #21657 [verbose] > │ let v28 : int64 = v1 + 1L │
00:10:47 #21658 [verbose] > │ let v29 : Async<int64> = method2(v0, v28) │
00:10:47 #21659 [verbose] > │ return! v29 │
00:10:47 #21660 [verbose] > │ (* │
00:10:47 #21661 [verbose] > │ let v30 : int64 = *) │
00:10:47 #21662 [verbose] > │ } │
00:10:47 #21663 [verbose] > │ |> fun x -> _v6 <- Some x │
00:10:47 #21664 [verbose] > │ let v31 : Async<int64> = _v6 |> Option.get │
00:10:47 #21665 [verbose] > │ v31 │
00:10:47 #21666 [verbose] > │ #endif │
00:10:47 #21667 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #21668 [verbose] > │ let v32 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #21669 [verbose] > │ v32 │
00:10:47 #21670 [verbose] > │ #endif │
00:10:47 #21671 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #21672 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:47 #21673 [verbose] > │ #endif │
00:10:47 #21674 [verbose] > │ |> fun x -> _v2 <- Some x │
00:10:47 #21675 [verbose] > │ let v33 : Async<int64> = _v2.Value │
00:10:47 #21676 [verbose] > │ v33 │
00:10:47 #21677 [verbose] > │ and closure3 (v0 : string) () : unit = │
00:10:47 #21678 [verbose] > │ let v1 : Async<int64> option = None │
00:10:47 #21679 [verbose] > │ let mutable _v1 = v1 │
00:10:47 #21680 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #21681 [verbose] > │ let v2 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #21682 [verbose] > │ v2 │
00:10:47 #21683 [verbose] > │ #endif │
00:10:47 #21684 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #21685 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #21686 [verbose] > │ v3 │
00:10:47 #21687 [verbose] > │ #endif │
00:10:47 #21688 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #21689 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #21690 [verbose] > │ v4 │
00:10:47 #21691 [verbose] > │ #endif │
00:10:47 #21692 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #21693 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #21694 [verbose] > │ let v5 : int64 = 0L │
00:10:47 #21695 [verbose] > │ let v6 : Async<int64> = method2(v0, v5) │
00:10:47 #21696 [verbose] > │ v6 │
00:10:47 #21697 [verbose] > │ #endif │
00:10:47 #21698 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #21699 [verbose] > │ let v7 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #21700 [verbose] > │ v7 │
00:10:47 #21701 [verbose] > │ #endif │
00:10:47 #21702 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #21703 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:47 #21704 [verbose] > │ #endif │
00:10:47 #21705 [verbose] > │ |> fun x -> _v1 <- Some x │
00:10:47 #21706 [verbose] > │ let v8 : Async<int64> = _v1.Value │
00:10:47 #21707 [verbose] > │ let v9 : Async<unit> option = None │
00:10:47 #21708 [verbose] > │ let mutable _v9 = v9 │
00:10:47 #21709 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #21710 [verbose] > │ let v10 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #21711 [verbose] > │ v10 │
00:10:47 #21712 [verbose] > │ #endif │
00:10:47 #21713 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #21714 [verbose] > │ let v11 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #21715 [verbose] > │ v11 │
00:10:47 #21716 [verbose] > │ #endif │
00:10:47 #21717 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #21718 [verbose] > │ let v12 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #21719 [verbose] > │ v12 │
00:10:47 #21720 [verbose] > │ #endif │
00:10:47 #21721 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #21722 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #21723 [verbose] > │ let v13 : (Async<int64> -> Async<unit>) = Async.Ignore │
00:10:47 #21724 [verbose] > │ let v14 : Async<unit> = v13 v8 │
00:10:47 #21725 [verbose] > │ v14 │
00:10:47 #21726 [verbose] > │ #endif │
00:10:47 #21727 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #21728 [verbose] > │ let v15 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #21729 [verbose] > │ v15 │
00:10:47 #21730 [verbose] > │ #endif │
00:10:47 #21731 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #21732 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:47 #21733 [verbose] > │ #endif │
00:10:47 #21734 [verbose] > │ |> fun x -> _v9 <- Some x │
00:10:47 #21735 [verbose] > │ let v16 : Async<unit> = _v9.Value │
00:10:47 #21736 [verbose] > │ let v17 : unit option = None │
00:10:47 #21737 [verbose] > │ let mutable _v17 = v17 │
00:10:47 #21738 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #21739 [verbose] > │ null |> unbox<unit> │
00:10:47 #21740 [verbose] > │ () │
00:10:47 #21741 [verbose] > │ #endif │
00:10:47 #21742 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #21743 [verbose] > │ null |> unbox<unit> │
00:10:47 #21744 [verbose] > │ () │
00:10:47 #21745 [verbose] > │ #endif │
00:10:47 #21746 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #21747 [verbose] > │ null |> unbox<unit> │
00:10:47 #21748 [verbose] > │ () │
00:10:47 #21749 [verbose] > │ #endif │
00:10:47 #21750 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #21751 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #21752 [verbose] > │ let v18 : (Async<unit> -> unit) = Async.RunSynchronously │
00:10:47 #21753 [verbose] > │ v18 v16 │
00:10:47 #21754 [verbose] > │ () │
00:10:47 #21755 [verbose] > │ #endif │
00:10:47 #21756 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #21757 [verbose] > │ null |> unbox<unit> │
00:10:47 #21758 [verbose] > │ () │
00:10:47 #21759 [verbose] > │ #endif │
00:10:47 #21760 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #21761 [verbose] > │ Unchecked.defaultof<unit> │
00:10:47 #21762 [verbose] > │ #endif │
00:10:47 #21763 [verbose] > │ |> fun x -> _v17 <- Some x │
00:10:47 #21764 [verbose] > │ _v17.Value │
00:10:47 #21765 [verbose] > │ () │
00:10:47 #21766 [verbose] > │ and method4 () : string = │
00:10:47 #21767 [verbose] > │ let v0 : string = "test.txt" │
00:10:47 #21768 [verbose] > │ v0 │
00:10:47 #21769 [verbose] > │ and closure6 () () : string = │
00:10:47 #21770 [verbose] > │ let v0 : string = "1" │
00:10:47 #21771 [verbose] > │ v0 │
00:10:47 #21772 [verbose] > │ and method6 (v0 : int64 option) : int64 option = │
00:10:47 #21773 [verbose] > │ v0 │
00:10:47 #21774 [verbose] > │ and method7 (v0 : int64 option) : int64 option = │
00:10:47 #21775 [verbose] > │ v0 │
00:10:47 #21776 [verbose] > │ and closure7 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) = │
00:10:47 #21777 [verbose] > │ let v0 : Mut1 = {l0 = true} : Mut1 │
00:10:47 #21778 [verbose] > │ let v1 : Mut0 = {l0 = 0L} : Mut0 │
00:10:47 #21779 [verbose] > │ let v2 : US0 = US0_0 │
00:10:47 #21780 [verbose] > │ let v3 : Mut2 = {l0 = v2} : Mut2 │
00:10:47 #21781 [verbose] > │ let v4 : Mut1 = {l0 = false} : Mut1 │
00:10:47 #21782 [verbose] > │ let v5 : int64 option option = None │
00:10:47 #21783 [verbose] > │ let mutable _v5 = v5 │
00:10:47 #21784 [verbose] > │ #if INTERACTIVE || !FABLE_COMPILER │
00:10:47 #21785 [verbose] > │ let v6 : string option = None │
00:10:47 #21786 [verbose] > │ let mutable _v6 = v6 │
00:10:47 #21787 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #21788 [verbose] > │ let v7 : string = null |> unbox<string> │
00:10:47 #21789 [verbose] > │ v7 │
00:10:47 #21790 [verbose] > │ #endif │
00:10:47 #21791 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #21792 [verbose] > │ let v8 : string = null |> unbox<string> │
00:10:47 #21793 [verbose] > │ v8 │
00:10:47 #21794 [verbose] > │ #endif │
00:10:47 #21795 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #21796 [verbose] > │ let v9 : string = null |> unbox<string> │
00:10:47 #21797 [verbose] > │ v9 │
00:10:47 #21798 [verbose] > │ #endif │
00:10:47 #21799 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #21800 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #21801 [verbose] > │ let v10 : string = │
00:10:47 #21802 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:10:47 #21803 [verbose] > │ v10 │
00:10:47 #21804 [verbose] > │ #endif │
00:10:47 #21805 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #21806 [verbose] > │ let v11 : string = null |> unbox<string> │
00:10:47 #21807 [verbose] > │ v11 │
00:10:47 #21808 [verbose] > │ #endif │
00:10:47 #21809 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #21810 [verbose] > │ Unchecked.defaultof<string> │
00:10:47 #21811 [verbose] > │ #endif │
00:10:47 #21812 [verbose] > │ |> fun x -> _v6 <- Some x │
00:10:47 #21813 [verbose] > │ let v12 : string = _v6.Value │
00:10:47 #21814 [verbose] > │ let v14 : bool = v12 = "Microsoft.DotNet.Interactive.App" │
00:10:47 #21815 [verbose] > │ let v15 : bool = v14 <> true │
00:10:47 #21816 [verbose] > │ let v21 : US1 = │
00:10:47 #21817 [verbose] > │ if v15 then │
00:10:47 #21818 [verbose] > │ let v16 : System.DateTime = System.DateTime.Now │
00:10:47 #21819 [verbose] > │ let v17 : (System.DateTime -> int64) = _.Ticks │
00:10:47 #21820 [verbose] > │ let v18 : int64 = v17 v16 │
00:10:47 #21821 [verbose] > │ US1_0(v18) │
00:10:47 #21822 [verbose] > │ else │
00:10:47 #21823 [verbose] > │ US1_1 │
00:10:47 #21824 [verbose] > │ let v26 : int64 option = │
00:10:47 #21825 [verbose] > │ match v21 with │
00:10:47 #21826 [verbose] > │ | US1_1 -> (* None *) │
00:10:47 #21827 [verbose] > │ let v24 : int64 option = None │
00:10:47 #21828 [verbose] > │ v24 │
00:10:47 #21829 [verbose] > │ | US1_0(v22) -> (* Some *) │
00:10:47 #21830 [verbose] > │ let v23 : int64 option = Some v22 │
00:10:47 #21831 [verbose] > │ v23 │
00:10:47 #21832 [verbose] > │ let v27 : int64 option = method6(v26) │
00:10:47 #21833 [verbose] > │ v27 │
00:10:47 #21834 [verbose] > │ #else │
00:10:47 #21835 [verbose] > │ let v28 : int64 option = None │
00:10:47 #21836 [verbose] > │ let v29 : int64 option = method7(v28) │
00:10:47 #21837 [verbose] > │ v29 │
00:10:47 #21838 [verbose] > │ #endif │
00:10:47 #21839 [verbose] > │ |> fun x -> _v5 <- Some x │
00:10:47 #21840 [verbose] > │ let v30 : int64 option = _v5.Value │
00:10:47 #21841 [verbose] > │ struct (v1, v4, v0, v3, v30) │
00:10:47 #21842 [verbose] > │ and closure9 () (v0 : int64) : US2 = │
00:10:47 #21843 [verbose] > │ US2_0(v0) │
00:10:47 #21844 [verbose] > │ and method8 () : (int64 -> US2) = │
00:10:47 #21845 [verbose] > │ closure9() │
00:10:47 #21846 [verbose] > │ and method9 () : string = │
00:10:47 #21847 [verbose] > │ let v0 : string = "" │
00:10:47 #21848 [verbose] > │ v0 │
00:10:47 #21849 [verbose] > │ and closure8 (v0 : US0, v1 : (unit -> string), v2 : (unit -> string)) () : │
00:10:47 #21850 [verbose] > │ string = │
00:10:47 #21851 [verbose] > │ let v3 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:10:47 #21852 [verbose] > │ closure7() │
00:10:47 #21853 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:10:47 #21854 [verbose] > │ let struct (v4 : Mut0, v5 : Mut1, v6 : Mut1, v7 : Mut2, v8 : int64 │
00:10:47 #21855 [verbose] > │ option) = State.trace_state.Value │
00:10:47 #21856 [verbose] > │ let v9 : string option = None │
00:10:47 #21857 [verbose] > │ let mutable _v9 = v9 │
00:10:47 #21858 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #21859 [verbose] > │ let v10 : (int64 -> US2) = method8() │
00:10:47 #21860 [verbose] > │ let v11 : US2 = US2_1 │
00:10:47 #21861 [verbose] > │ let v12 : US2 = v8 |> Option.map v10 |> Option.defaultValue v11 │
00:10:47 #21862 [verbose] > │ let v30 : System.DateTime = │
00:10:47 #21863 [verbose] > │ match v12 with │
00:10:47 #21864 [verbose] > │ | US2_1 -> (* None *) │
00:10:47 #21865 [verbose] > │ let v28 : System.DateTime = System.DateTime.Now │
00:10:47 #21866 [verbose] > │ v28 │
00:10:47 #21867 [verbose] > │ | US2_0(v13) -> (* Some *) │
00:10:47 #21868 [verbose] > │ let v14 : System.DateTime = System.DateTime.Now │
00:10:47 #21869 [verbose] > │ let v15 : (System.DateTime -> int64) = _.Ticks │
00:10:47 #21870 [verbose] > │ let v16 : int64 = v15 v14 │
00:10:47 #21871 [verbose] > │ let v17 : int64 = v16 - v13 │
00:10:47 #21872 [verbose] > │ let v18 : System.TimeSpan = System.TimeSpan v17 │
00:10:47 #21873 [verbose] > │ let v19 : (System.TimeSpan -> int32) = _.Hours │
00:10:47 #21874 [verbose] > │ let v20 : int32 = v19 v18 │
00:10:47 #21875 [verbose] > │ let v21 : (System.TimeSpan -> int32) = _.Minutes │
00:10:47 #21876 [verbose] > │ let v22 : int32 = v21 v18 │
00:10:47 #21877 [verbose] > │ let v23 : (System.TimeSpan -> int32) = _.Seconds │
00:10:47 #21878 [verbose] > │ let v24 : int32 = v23 v18 │
00:10:47 #21879 [verbose] > │ let v25 : (System.TimeSpan -> int32) = _.Milliseconds │
00:10:47 #21880 [verbose] > │ let v26 : int32 = v25 v18 │
00:10:47 #21881 [verbose] > │ let v27 : System.DateTime = System.DateTime (1, 1, 1, v20, v22, │
00:10:47 #21882 [verbose] > │ v24, v26) │
00:10:47 #21883 [verbose] > │ v27 │
00:10:47 #21884 [verbose] > │ let v31 : string = "hh:mm:ss" │
00:10:47 #21885 [verbose] > │ let v32 : string = v30.ToString v31 │
00:10:47 #21886 [verbose] > │ v32 │
00:10:47 #21887 [verbose] > │ #endif │
00:10:47 #21888 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #21889 [verbose] > │ let v33 : string = method9() │
00:10:47 #21890 [verbose] > │ v33 │
00:10:47 #21891 [verbose] > │ #endif │
00:10:47 #21892 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #21893 [verbose] > │ let v34 : string = method9() │
00:10:47 #21894 [verbose] > │ v34 │
00:10:47 #21895 [verbose] > │ #endif │
00:10:47 #21896 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #21897 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #21898 [verbose] > │ let v35 : (int64 -> US2) = method8() │
00:10:47 #21899 [verbose] > │ let v36 : US2 = US2_1 │
00:10:47 #21900 [verbose] > │ let v37 : US2 = v8 |> Option.map v35 |> Option.defaultValue v36 │
00:10:47 #21901 [verbose] > │ let v55 : System.DateTime = │
00:10:47 #21902 [verbose] > │ match v37 with │
00:10:47 #21903 [verbose] > │ | US2_1 -> (* None *) │
00:10:47 #21904 [verbose] > │ let v53 : System.DateTime = System.DateTime.Now │
00:10:47 #21905 [verbose] > │ v53 │
00:10:47 #21906 [verbose] > │ | US2_0(v38) -> (* Some *) │
00:10:47 #21907 [verbose] > │ let v39 : System.DateTime = System.DateTime.Now │
00:10:47 #21908 [verbose] > │ let v40 : (System.DateTime -> int64) = _.Ticks │
00:10:47 #21909 [verbose] > │ let v41 : int64 = v40 v39 │
00:10:47 #21910 [verbose] > │ let v42 : int64 = v41 - v38 │
00:10:47 #21911 [verbose] > │ let v43 : System.TimeSpan = System.TimeSpan v42 │
00:10:47 #21912 [verbose] > │ let v44 : (System.TimeSpan -> int32) = _.Hours │
00:10:47 #21913 [verbose] > │ let v45 : int32 = v44 v43 │
00:10:47 #21914 [verbose] > │ let v46 : (System.TimeSpan -> int32) = _.Minutes │
00:10:47 #21915 [verbose] > │ let v47 : int32 = v46 v43 │
00:10:47 #21916 [verbose] > │ let v48 : (System.TimeSpan -> int32) = _.Seconds │
00:10:47 #21917 [verbose] > │ let v49 : int32 = v48 v43 │
00:10:47 #21918 [verbose] > │ let v50 : (System.TimeSpan -> int32) = _.Milliseconds │
00:10:47 #21919 [verbose] > │ let v51 : int32 = v50 v43 │
00:10:47 #21920 [verbose] > │ let v52 : System.DateTime = System.DateTime (1, 1, 1, v45, v47, │
00:10:47 #21921 [verbose] > │ v49, v51) │
00:10:47 #21922 [verbose] > │ v52 │
00:10:47 #21923 [verbose] > │ let v56 : string = "HH:mm:ss" │
00:10:47 #21924 [verbose] > │ let v57 : string = v55.ToString v56 │
00:10:47 #21925 [verbose] > │ v57 │
00:10:47 #21926 [verbose] > │ #endif │
00:10:47 #21927 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #21928 [verbose] > │ let v58 : string = method9() │
00:10:47 #21929 [verbose] > │ v58 │
00:10:47 #21930 [verbose] > │ #endif │
00:10:47 #21931 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #21932 [verbose] > │ Unchecked.defaultof<string> │
00:10:47 #21933 [verbose] > │ #endif │
00:10:47 #21934 [verbose] > │ |> fun x -> _v9 <- Some x │
00:10:47 #21935 [verbose] > │ let v59 : string = _v9.Value │
00:10:47 #21936 [verbose] > │ let v60 : int64 = v4.l0 │
00:10:47 #21937 [verbose] > │ let v70 : string = │
00:10:47 #21938 [verbose] > │ match v0 with │
00:10:47 #21939 [verbose] > │ | US0_4 -> (* Critical *) │
00:10:47 #21940 [verbose] > │ let v65 : string = "Critical" │
00:10:47 #21941 [verbose] > │ v65 │
00:10:47 #21942 [verbose] > │ | US0_1 -> (* Debug *) │
00:10:47 #21943 [verbose] > │ let v62 : string = "Debug" │
00:10:47 #21944 [verbose] > │ v62 │
00:10:47 #21945 [verbose] > │ | US0_2 -> (* Info *) │
00:10:47 #21946 [verbose] > │ let v63 : string = "Info" │
00:10:47 #21947 [verbose] > │ v63 │
00:10:47 #21948 [verbose] > │ | US0_0 -> (* Verbose *) │
00:10:47 #21949 [verbose] > │ let v61 : string = "Verbose" │
00:10:47 #21950 [verbose] > │ v61 │
00:10:47 #21951 [verbose] > │ | US0_3 -> (* Warning *) │
00:10:47 #21952 [verbose] > │ let v64 : string = "Warning" │
00:10:47 #21953 [verbose] > │ v64 │
00:10:47 #21954 [verbose] > │ let v71 : string = v70.ToLower () │
00:10:47 #21955 [verbose] > │ let v72 : string = $"{v59} #{v60} [{v71}] %s{v1 ()} / %s{v2 ()}" │
00:10:47 #21956 [verbose] > │ let v73 : (char []) = [||] │
00:10:47 #21957 [verbose] > │ let v74 : string = v72.TrimStart v73 │
00:10:47 #21958 [verbose] > │ let v75 : (char []) = [|' '; '/'|] │
00:10:47 #21959 [verbose] > │ let v76 : string = v74.TrimEnd v75 │
00:10:47 #21960 [verbose] > │ v76 │
00:10:47 #21961 [verbose] > │ and method5 (v0 : US0, v1 : (unit -> string), v2 : (unit -> string)) : unit │
00:10:47 #21962 [verbose] > │ = │
00:10:47 #21963 [verbose] > │ let v3 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:10:47 #21964 [verbose] > │ closure7() │
00:10:47 #21965 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:10:47 #21966 [verbose] > │ let struct (v4 : Mut0, v5 : Mut1, v6 : Mut1, v7 : Mut2, v8 : int64 │
00:10:47 #21967 [verbose] > │ option) = State.trace_state.Value │
00:10:47 #21968 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:10:47 #21969 [verbose] > │ let struct (v9 : Mut0, v10 : Mut1, v11 : Mut1, v12 : Mut2, v13 : int64 │
00:10:47 #21970 [verbose] > │ option) = State.trace_state.Value │
00:10:47 #21971 [verbose] > │ let v14 : US0 = v12.l0 │
00:10:47 #21972 [verbose] > │ let v15 : bool = v11.l0 │
00:10:47 #21973 [verbose] > │ let v17 : bool = │
00:10:47 #21974 [verbose] > │ if v15 then │
00:10:47 #21975 [verbose] > │ let v16 : bool = v0 >= v14 │
00:10:47 #21976 [verbose] > │ v16 │
00:10:47 #21977 [verbose] > │ else │
00:10:47 #21978 [verbose] > │ false │
00:10:47 #21979 [verbose] > │ if v17 then │
00:10:47 #21980 [verbose] > │ let v18 : int64 = v4.l0 │
00:10:47 #21981 [verbose] > │ let v19 : int64 = v18 + 1L │
00:10:47 #21982 [verbose] > │ v4.l0 <- v19 │
00:10:47 #21983 [verbose] > │ let v20 : (unit -> string) = closure8(v0, v1, v2) │
00:10:47 #21984 [verbose] > │ let v21 : string = $"%s{v20 ()}" │
00:10:47 #21985 [verbose] > │ let v22 : unit option = None │
00:10:47 #21986 [verbose] > │ let mutable _v22 = v22 │
00:10:47 #21987 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #21988 [verbose] > │ let v23 : string = @"println!(""{}"", $0)" │
00:10:47 #21989 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v23 │
00:10:47 #21990 [verbose] > │ () │
00:10:47 #21991 [verbose] > │ #endif │
00:10:47 #21992 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #21993 [verbose] > │ let v24 : string = @"println!(""{}"", $0)" │
00:10:47 #21994 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v24 │
00:10:47 #21995 [verbose] > │ () │
00:10:47 #21996 [verbose] > │ #endif │
00:10:47 #21997 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #21998 [verbose] > │ let v25 : string = @"println!(""{}"", $0)" │
00:10:47 #21999 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v25 │
00:10:47 #22000 [verbose] > │ () │
00:10:47 #22001 [verbose] > │ #endif │
00:10:47 #22002 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22003 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22004 [verbose] > │ System.Console.WriteLine v21 │
00:10:47 #22005 [verbose] > │ () │
00:10:47 #22006 [verbose] > │ #endif │
00:10:47 #22007 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22008 [verbose] > │ System.Console.WriteLine v21 │
00:10:47 #22009 [verbose] > │ () │
00:10:47 #22010 [verbose] > │ #endif │
00:10:47 #22011 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:47 #22012 [verbose] > │ FABLE_COMPILER_DART │
00:10:47 #22013 [verbose] > │ Unchecked.defaultof<unit> │
00:10:47 #22014 [verbose] > │ #endif │
00:10:47 #22015 [verbose] > │ |> fun x -> _v22 <- Some x │
00:10:47 #22016 [verbose] > │ _v22.Value │
00:10:47 #22017 [verbose] > │ () │
00:10:47 #22018 [verbose] > │ and closure10 () () : string = │
00:10:47 #22019 [verbose] > │ let v0 : string = "2" │
00:10:47 #22020 [verbose] > │ v0 │
00:10:47 #22021 [verbose] > │ and closure11 () () : string = │
00:10:47 #22022 [verbose] > │ let v0 : string = "_1" │
00:10:47 #22023 [verbose] > │ v0 │
00:10:47 #22024 [verbose] > │ and closure12 () () : string = │
00:10:47 #22025 [verbose] > │ let v0 : string = "_2" │
00:10:47 #22026 [verbose] > │ v0 │
00:10:47 #22027 [verbose] > │ and closure13 () () : string = │
00:10:47 #22028 [verbose] > │ let v0 : string = "_3" │
00:10:47 #22029 [verbose] > │ v0 │
00:10:47 #22030 [verbose] > │ and closure14 () () : string = │
00:10:47 #22031 [verbose] > │ let v0 : string = "_4" │
00:10:47 #22032 [verbose] > │ v0 │
00:10:47 #22033 [verbose] > │ and closure15 () () : string = │
00:10:47 #22034 [verbose] > │ let v0 : string = "_5" │
00:10:47 #22035 [verbose] > │ v0 │
00:10:47 #22036 [verbose] > │ and closure16 () () : string = │
00:10:47 #22037 [verbose] > │ let v0 : string = "_6" │
00:10:47 #22038 [verbose] > │ v0 │
00:10:47 #22039 [verbose] > │ and closure17 () () : string = │
00:10:47 #22040 [verbose] > │ let v0 : string = "3" │
00:10:47 #22041 [verbose] > │ v0 │
00:10:47 #22042 [verbose] > │ and closure18 () () : string = │
00:10:47 #22043 [verbose] > │ let v0 : string = "4" │
00:10:47 #22044 [verbose] > │ v0 │
00:10:47 #22045 [verbose] > │ and method11 (v0 : string, v1 : int64, v2 : string) : string = │
00:10:47 #22046 [verbose] > │ let v3 : (string -> string) = closure5() │
00:10:47 #22047 [verbose] > │ let v4 : (unit -> string) = closure2() │
00:10:47 #22048 [verbose] > │ let v5 : string = $"path: {v0 |> v3} / retry: {v1} / ex: {v2} / {v4 ()}" │
00:10:47 #22049 [verbose] > │ v5 │
00:10:47 #22050 [verbose] > │ and closure19 (v0 : string, v1 : int64, v2 : string) () : string = │
00:10:47 #22051 [verbose] > │ method11(v0, v1, v2) │
00:10:47 #22052 [verbose] > │ and method10 (v0 : string, v1 : int64) : Async<int64> = │
00:10:47 #22053 [verbose] > │ let v2 : Async<int64> option = None │
00:10:47 #22054 [verbose] > │ let mutable _v2 = v2 │
00:10:47 #22055 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22056 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #22057 [verbose] > │ v3 │
00:10:47 #22058 [verbose] > │ #endif │
00:10:47 #22059 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22060 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #22061 [verbose] > │ v4 │
00:10:47 #22062 [verbose] > │ #endif │
00:10:47 #22063 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22064 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #22065 [verbose] > │ v5 │
00:10:47 #22066 [verbose] > │ #endif │
00:10:47 #22067 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22068 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22069 [verbose] > │ let v6 : Async<int64> option = None │
00:10:47 #22070 [verbose] > │ let mutable _v6 = v6 │
00:10:47 #22071 [verbose] > │ async { │
00:10:47 #22072 [verbose] > │ try │
00:10:47 #22073 [verbose] > │ let v7 : System.IO.FileStream option = None │
00:10:47 #22074 [verbose] > │ let mutable _v7 = v7 │
00:10:47 #22075 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22076 [verbose] > │ let v8 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:47 #22077 [verbose] > │ v8 │
00:10:47 #22078 [verbose] > │ #endif │
00:10:47 #22079 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22080 [verbose] > │ let v9 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:47 #22081 [verbose] > │ v9 │
00:10:47 #22082 [verbose] > │ #endif │
00:10:47 #22083 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22084 [verbose] > │ let v10 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:47 #22085 [verbose] > │ v10 │
00:10:47 #22086 [verbose] > │ #endif │
00:10:47 #22087 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22088 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22089 [verbose] > │ let v11 : System.IO.FileMode = System.IO.FileMode.Open │
00:10:47 #22090 [verbose] > │ let v12 : System.IO.FileAccess = System.IO.FileAccess.ReadWrite │
00:10:47 #22091 [verbose] > │ let v13 : System.IO.FileShare = System.IO.FileShare.Read │
00:10:47 #22092 [verbose] > │ let v14 : System.IO.FileStream = new System.IO.FileStream (v0, v11, v12, │
00:10:47 #22093 [verbose] > │ v13) │
00:10:47 #22094 [verbose] > │ v14 │
00:10:47 #22095 [verbose] > │ #endif │
00:10:47 #22096 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22097 [verbose] > │ let v15 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:47 #22098 [verbose] > │ v15 │
00:10:47 #22099 [verbose] > │ #endif │
00:10:47 #22100 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22101 [verbose] > │ Unchecked.defaultof<System.IO.FileStream> │
00:10:47 #22102 [verbose] > │ #endif │
00:10:47 #22103 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:47 #22104 [verbose] > │ let v16 : System.IO.FileStream = _v7.Value │
00:10:47 #22105 [verbose] > │ use v16 = v16 │
00:10:47 #22106 [verbose] > │ let v17 : System.IO.FileStream = v16 │
00:10:47 #22107 [verbose] > │ return v1 │
00:10:47 #22108 [verbose] > │ with ex -> │
00:10:47 #22109 [verbose] > │ let v18 : exn = ex │
00:10:47 #22110 [verbose] > │ let v19 : bool = v1 > 0L │
00:10:47 #22111 [verbose] > │ let v22 : bool = │
00:10:47 #22112 [verbose] > │ if v19 then │
00:10:47 #22113 [verbose] > │ let v20 : int64 = v1 % 100L │
00:10:47 #22114 [verbose] > │ let v21 : bool = v20 = 0L │
00:10:47 #22115 [verbose] > │ v21 │
00:10:47 #22116 [verbose] > │ else │
00:10:47 #22117 [verbose] > │ false │
00:10:47 #22118 [verbose] > │ if v22 then │
00:10:47 #22119 [verbose] > │ let v23 : string option = None │
00:10:47 #22120 [verbose] > │ let mutable _v23 = v23 │
00:10:47 #22121 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22122 [verbose] > │ let v24 : string = $"%A{v18}" │
00:10:47 #22123 [verbose] > │ v24 │
00:10:47 #22124 [verbose] > │ #endif │
00:10:47 #22125 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22126 [verbose] > │ let v25 : string = $"%A{v18}" │
00:10:47 #22127 [verbose] > │ v25 │
00:10:47 #22128 [verbose] > │ #endif │
00:10:47 #22129 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22130 [verbose] > │ let v26 : string = $"%A{v18}" │
00:10:47 #22131 [verbose] > │ v26 │
00:10:47 #22132 [verbose] > │ #endif │
00:10:47 #22133 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22134 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22135 [verbose] > │ let v27 : string = $"{v18.GetType ()}: {v18.Message}" │
00:10:47 #22136 [verbose] > │ v27 │
00:10:47 #22137 [verbose] > │ #endif │
00:10:47 #22138 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22139 [verbose] > │ let v28 : string = $"%A{v18}" │
00:10:47 #22140 [verbose] > │ v28 │
00:10:47 #22141 [verbose] > │ #endif │
00:10:47 #22142 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:47 #22143 [verbose] > │ FABLE_COMPILER_DART │
00:10:47 #22144 [verbose] > │ Unchecked.defaultof<string> │
00:10:47 #22145 [verbose] > │ #endif │
00:10:47 #22146 [verbose] > │ |> fun x -> _v23 <- Some x │
00:10:47 #22147 [verbose] > │ let v29 : string = _v23.Value │
00:10:47 #22148 [verbose] > │ let v30 : (unit -> string) = closure19(v0, v1, v29) │
00:10:47 #22149 [verbose] > │ let v31 : string = $"wait_for_file_access / {v30 ()}" │
00:10:47 #22150 [verbose] > │ System.Console.WriteLine v31 │
00:10:47 #22151 [verbose] > │ () │
00:10:47 #22152 [verbose] > │ let v32 : Async<unit> option = None │
00:10:47 #22153 [verbose] > │ let mutable _v32 = v32 │
00:10:47 #22154 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22155 [verbose] > │ let v33 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22156 [verbose] > │ v33 │
00:10:47 #22157 [verbose] > │ #endif │
00:10:47 #22158 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22159 [verbose] > │ let v34 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22160 [verbose] > │ v34 │
00:10:47 #22161 [verbose] > │ #endif │
00:10:47 #22162 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22163 [verbose] > │ let v35 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22164 [verbose] > │ v35 │
00:10:47 #22165 [verbose] > │ #endif │
00:10:47 #22166 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22167 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22168 [verbose] > │ let v36 : (int32 -> Async<unit>) = Async.Sleep │
00:10:47 #22169 [verbose] > │ let v37 : Async<unit> = v36 10 │
00:10:47 #22170 [verbose] > │ v37 │
00:10:47 #22171 [verbose] > │ #endif │
00:10:47 #22172 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22173 [verbose] > │ let v38 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22174 [verbose] > │ v38 │
00:10:47 #22175 [verbose] > │ #endif │
00:10:47 #22176 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22177 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:47 #22178 [verbose] > │ #endif │
00:10:47 #22179 [verbose] > │ |> fun x -> _v32 <- Some x │
00:10:47 #22180 [verbose] > │ let v39 : Async<unit> = _v32.Value │
00:10:47 #22181 [verbose] > │ do! v39 │
00:10:47 #22182 [verbose] > │ let v40 : int64 = v1 + 1L │
00:10:47 #22183 [verbose] > │ let v41 : Async<int64> = method10(v0, v40) │
00:10:47 #22184 [verbose] > │ return! v41 │
00:10:47 #22185 [verbose] > │ (* │
00:10:47 #22186 [verbose] > │ let v42 : int64 = *) │
00:10:47 #22187 [verbose] > │ } │
00:10:47 #22188 [verbose] > │ |> fun x -> _v6 <- Some x │
00:10:47 #22189 [verbose] > │ let v43 : Async<int64> = _v6 |> Option.get │
00:10:47 #22190 [verbose] > │ v43 │
00:10:47 #22191 [verbose] > │ #endif │
00:10:47 #22192 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22193 [verbose] > │ let v44 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #22194 [verbose] > │ v44 │
00:10:47 #22195 [verbose] > │ #endif │
00:10:47 #22196 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22197 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:47 #22198 [verbose] > │ #endif │
00:10:47 #22199 [verbose] > │ |> fun x -> _v2 <- Some x │
00:10:47 #22200 [verbose] > │ let v45 : Async<int64> = _v2.Value │
00:10:47 #22201 [verbose] > │ v45 │
00:10:47 #22202 [verbose] > │ and closure20 () () : string = │
00:10:47 #22203 [verbose] > │ let v0 : string = "5" │
00:10:47 #22204 [verbose] > │ v0 │
00:10:47 #22205 [verbose] > │ and closure21 () () : string = │
00:10:47 #22206 [verbose] > │ let v0 : string = "6" │
00:10:47 #22207 [verbose] > │ v0 │
00:10:47 #22208 [verbose] > │ and closure22 () () : string = │
00:10:47 #22209 [verbose] > │ let v0 : string = "7" │
00:10:47 #22210 [verbose] > │ v0 │
00:10:47 #22211 [verbose] > │ and closure23 () struct (v0 : int64, v1 : string) : US4 = │
00:10:47 #22212 [verbose] > │ US4_0(v0, v1) │
00:10:47 #22213 [verbose] > │ and closure24 () (v0 : exn) : US4 = │
00:10:47 #22214 [verbose] > │ US4_1(v0) │
00:10:47 #22215 [verbose] > │ and closure25 () () : string = │
00:10:47 #22216 [verbose] > │ let v0 : string = "run_with_timeout_async" │
00:10:47 #22217 [verbose] > │ v0 │
00:10:47 #22218 [verbose] > │ and closure26 () () : string = │
00:10:47 #22219 [verbose] > │ let v0 : (unit -> string) = closure2() │
00:10:47 #22220 [verbose] > │ let v1 : string = $"timeout: {3000} / {v0 ()}" │
00:10:47 #22221 [verbose] > │ v1 │
00:10:47 #22222 [verbose] > │ and closure27 (v0 : string) () : string = │
00:10:47 #22223 [verbose] > │ let v1 : string = $"run_with_timeout_async** / ex: {v0}" │
00:10:47 #22224 [verbose] > │ v1 │
00:10:47 #22225 [verbose] > │ and method12 (v0 : bool) : bool = │
00:10:47 #22226 [verbose] > │ v0 │
00:10:47 #22227 [verbose] > │ and method13 () : string = │
00:10:47 #22228 [verbose] > │ let v0 : string = "1" │
00:10:47 #22229 [verbose] > │ v0 │
00:10:47 #22230 [verbose] > │ and method0 () : unit = │
00:10:47 #22231 [verbose] > │ let v0 : struct (string * System.IDisposable) option = None │
00:10:47 #22232 [verbose] > │ let mutable _v0 = v0 │
00:10:47 #22233 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22234 [verbose] > │ let struct (v1 : string, v2 : System.IDisposable) = null |> unbox<struct │
00:10:47 #22235 [verbose] > │ (string * System.IDisposable)> │
00:10:47 #22236 [verbose] > │ struct (v1, v2) │
00:10:47 #22237 [verbose] > │ #endif │
00:10:47 #22238 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22239 [verbose] > │ let struct (v3 : string, v4 : System.IDisposable) = null |> unbox<struct │
00:10:47 #22240 [verbose] > │ (string * System.IDisposable)> │
00:10:47 #22241 [verbose] > │ struct (v3, v4) │
00:10:47 #22242 [verbose] > │ #endif │
00:10:47 #22243 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22244 [verbose] > │ let struct (v5 : string, v6 : System.IDisposable) = null |> unbox<struct │
00:10:47 #22245 [verbose] > │ (string * System.IDisposable)> │
00:10:47 #22246 [verbose] > │ struct (v5, v6) │
00:10:47 #22247 [verbose] > │ #endif │
00:10:47 #22248 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22249 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22250 [verbose] > │ let v7 : string option = None │
00:10:47 #22251 [verbose] > │ let mutable _v7 = v7 │
00:10:47 #22252 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22253 [verbose] > │ let v8 : string = null |> unbox<string> │
00:10:47 #22254 [verbose] > │ v8 │
00:10:47 #22255 [verbose] > │ #endif │
00:10:47 #22256 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22257 [verbose] > │ let v9 : string = null |> unbox<string> │
00:10:47 #22258 [verbose] > │ v9 │
00:10:47 #22259 [verbose] > │ #endif │
00:10:47 #22260 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22261 [verbose] > │ let v10 : string = null |> unbox<string> │
00:10:47 #22262 [verbose] > │ v10 │
00:10:47 #22263 [verbose] > │ #endif │
00:10:47 #22264 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22265 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22266 [verbose] > │ let v11 : (unit -> string) = System.IO.Path.GetTempPath │
00:10:47 #22267 [verbose] > │ let v12 : string = v11 () │
00:10:47 #22268 [verbose] > │ let v13 : (unit -> string) = closure0() │
00:10:47 #22269 [verbose] > │ let v14 : string = $"!{v13 ()}" │
00:10:47 #22270 [verbose] > │ let v15 : string option = None │
00:10:47 #22271 [verbose] > │ let mutable _v15 = v15 │
00:10:47 #22272 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22273 [verbose] > │ let v16 : string = method1(v12) │
00:10:47 #22274 [verbose] > │ let v17 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:47 #22275 [verbose] > │ let v18 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v16 v17 │
00:10:47 #22276 [verbose] > │ let v19 : string = "String::from($0)" │
00:10:47 #22277 [verbose] > │ let v20 : std_string_String = Fable.Core.RustInterop.emitRustExpr v18 │
00:10:47 #22278 [verbose] > │ v19 │
00:10:47 #22279 [verbose] > │ let v21 : string = "std::path::PathBuf::from($0)" │
00:10:47 #22280 [verbose] > │ let v22 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v20 v21 │
00:10:47 #22281 [verbose] > │ let v23 : string = method1(v14) │
00:10:47 #22282 [verbose] > │ let v24 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:47 #22283 [verbose] > │ let v25 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v23 v24 │
00:10:47 #22284 [verbose] > │ let v26 : string = "String::from($0)" │
00:10:47 #22285 [verbose] > │ let v27 : std_string_String = Fable.Core.RustInterop.emitRustExpr v25 │
00:10:47 #22286 [verbose] > │ v26 │
00:10:47 #22287 [verbose] > │ let v28 : string = "$0.join($1)" │
00:10:47 #22288 [verbose] > │ let v29 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:47 #22289 [verbose] > │ (v22, v27) v28 │
00:10:47 #22290 [verbose] > │ let v30 : string = "$0.display().to_string()" │
00:10:47 #22291 [verbose] > │ let v31 : std_string_String = Fable.Core.RustInterop.emitRustExpr v29 │
00:10:47 #22292 [verbose] > │ v30 │
00:10:47 #22293 [verbose] > │ let v32 : string = "fable_library_rust::String_::fromString($0)" │
00:10:47 #22294 [verbose] > │ let v33 : string = Fable.Core.RustInterop.emitRustExpr v31 v32 │
00:10:47 #22295 [verbose] > │ v33 │
00:10:47 #22296 [verbose] > │ #endif │
00:10:47 #22297 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22298 [verbose] > │ let v34 : string = null |> unbox<string> │
00:10:47 #22299 [verbose] > │ v34 │
00:10:47 #22300 [verbose] > │ #endif │
00:10:47 #22301 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22302 [verbose] > │ let v35 : string = null |> unbox<string> │
00:10:47 #22303 [verbose] > │ v35 │
00:10:47 #22304 [verbose] > │ #endif │
00:10:47 #22305 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22306 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22307 [verbose] > │ let v36 : string = System.IO.Path.Combine (v12, v14) │
00:10:47 #22308 [verbose] > │ v36 │
00:10:47 #22309 [verbose] > │ #endif │
00:10:47 #22310 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22311 [verbose] > │ let v37 : string = "path" │
00:10:47 #22312 [verbose] > │ let v38 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:47 #22313 [verbose] > │ let v39 : string = "v38.join($0, $1)" │
00:10:47 #22314 [verbose] > │ let v40 : string = Fable.Core.JsInterop.emitJsExpr struct (v12, v14) v39 │
00:10:47 #22315 [verbose] > │ v40 │
00:10:47 #22316 [verbose] > │ #endif │
00:10:47 #22317 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22318 [verbose] > │ Unchecked.defaultof<string> │
00:10:47 #22319 [verbose] > │ #endif │
00:10:47 #22320 [verbose] > │ |> fun x -> _v15 <- Some x │
00:10:47 #22321 [verbose] > │ let v41 : string = _v15.Value │
00:10:47 #22322 [verbose] > │ let v42 : System.DateTime = System.DateTime.Now │
00:10:47 #22323 [verbose] > │ let v43 : System.Guid = System.Guid.NewGuid () │
00:10:47 #22324 [verbose] > │ let v44 : (System.Guid -> string) = _.ToString() │
00:10:47 #22325 [verbose] > │ let v45 : string = v44 v43 │
00:10:47 #22326 [verbose] > │ let v46 : string = v42.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:10:47 #22327 [verbose] > │ let v47 : System.Guid = System.Guid $"{v46}{v45.[v46.Length..]}" │
00:10:47 #22328 [verbose] > │ let v48 : (System.Guid -> string) = _.ToString() │
00:10:47 #22329 [verbose] > │ let v49 : string = v48 v47 │
00:10:47 #22330 [verbose] > │ let v50 : string option = None │
00:10:47 #22331 [verbose] > │ let mutable _v50 = v50 │
00:10:47 #22332 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22333 [verbose] > │ let v51 : string = method1(v41) │
00:10:47 #22334 [verbose] > │ let v52 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:47 #22335 [verbose] > │ let v53 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v51 v52 │
00:10:47 #22336 [verbose] > │ let v54 : string = "String::from($0)" │
00:10:47 #22337 [verbose] > │ let v55 : std_string_String = Fable.Core.RustInterop.emitRustExpr v53 │
00:10:47 #22338 [verbose] > │ v54 │
00:10:47 #22339 [verbose] > │ let v56 : string = "std::path::PathBuf::from($0)" │
00:10:47 #22340 [verbose] > │ let v57 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v55 v56 │
00:10:47 #22341 [verbose] > │ let v58 : string = method1(v49) │
00:10:47 #22342 [verbose] > │ let v59 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:47 #22343 [verbose] > │ let v60 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v58 v59 │
00:10:47 #22344 [verbose] > │ let v61 : string = "String::from($0)" │
00:10:47 #22345 [verbose] > │ let v62 : std_string_String = Fable.Core.RustInterop.emitRustExpr v60 │
00:10:47 #22346 [verbose] > │ v61 │
00:10:47 #22347 [verbose] > │ let v63 : string = "$0.join($1)" │
00:10:47 #22348 [verbose] > │ let v64 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:47 #22349 [verbose] > │ (v57, v62) v63 │
00:10:47 #22350 [verbose] > │ let v65 : string = "$0.display().to_string()" │
00:10:47 #22351 [verbose] > │ let v66 : std_string_String = Fable.Core.RustInterop.emitRustExpr v64 │
00:10:47 #22352 [verbose] > │ v65 │
00:10:47 #22353 [verbose] > │ let v67 : string = "fable_library_rust::String_::fromString($0)" │
00:10:47 #22354 [verbose] > │ let v68 : string = Fable.Core.RustInterop.emitRustExpr v66 v67 │
00:10:47 #22355 [verbose] > │ v68 │
00:10:47 #22356 [verbose] > │ #endif │
00:10:47 #22357 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22358 [verbose] > │ let v69 : string = null |> unbox<string> │
00:10:47 #22359 [verbose] > │ v69 │
00:10:47 #22360 [verbose] > │ #endif │
00:10:47 #22361 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22362 [verbose] > │ let v70 : string = null |> unbox<string> │
00:10:47 #22363 [verbose] > │ v70 │
00:10:47 #22364 [verbose] > │ #endif │
00:10:47 #22365 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22366 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22367 [verbose] > │ let v71 : string = System.IO.Path.Combine (v41, v49) │
00:10:47 #22368 [verbose] > │ v71 │
00:10:47 #22369 [verbose] > │ #endif │
00:10:47 #22370 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22371 [verbose] > │ let v72 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:47 #22372 [verbose] > │ let v73 : string = "v72.join($0, $1)" │
00:10:47 #22373 [verbose] > │ let v74 : string = Fable.Core.JsInterop.emitJsExpr struct (v41, v49) v73 │
00:10:47 #22374 [verbose] > │ v74 │
00:10:47 #22375 [verbose] > │ #endif │
00:10:47 #22376 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22377 [verbose] > │ Unchecked.defaultof<string> │
00:10:47 #22378 [verbose] > │ #endif │
00:10:47 #22379 [verbose] > │ |> fun x -> _v50 <- Some x │
00:10:47 #22380 [verbose] > │ let v75 : string = _v50.Value │
00:10:47 #22381 [verbose] > │ v75 │
00:10:47 #22382 [verbose] > │ #endif │
00:10:47 #22383 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22384 [verbose] > │ let v76 : string = null |> unbox<string> │
00:10:47 #22385 [verbose] > │ v76 │
00:10:47 #22386 [verbose] > │ #endif │
00:10:47 #22387 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22388 [verbose] > │ Unchecked.defaultof<string> │
00:10:47 #22389 [verbose] > │ #endif │
00:10:47 #22390 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:47 #22391 [verbose] > │ let v77 : string = _v7.Value │
00:10:47 #22392 [verbose] > │ let v78 : System.IO.DirectoryInfo option = None │
00:10:47 #22393 [verbose] > │ let mutable _v78 = v78 │
00:10:47 #22394 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22395 [verbose] > │ let v79 : System.IO.DirectoryInfo = null |> │
00:10:47 #22396 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:47 #22397 [verbose] > │ v79 │
00:10:47 #22398 [verbose] > │ #endif │
00:10:47 #22399 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22400 [verbose] > │ let v80 : System.IO.DirectoryInfo = null |> │
00:10:47 #22401 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:47 #22402 [verbose] > │ v80 │
00:10:47 #22403 [verbose] > │ #endif │
00:10:47 #22404 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22405 [verbose] > │ let v81 : System.IO.DirectoryInfo = null |> │
00:10:47 #22406 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:47 #22407 [verbose] > │ v81 │
00:10:47 #22408 [verbose] > │ #endif │
00:10:47 #22409 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22410 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22411 [verbose] > │ let v82 : (string -> System.IO.DirectoryInfo) = │
00:10:47 #22412 [verbose] > │ System.IO.Directory.CreateDirectory │
00:10:47 #22413 [verbose] > │ let v83 : System.IO.DirectoryInfo = v82 v77 │
00:10:47 #22414 [verbose] > │ v83 │
00:10:47 #22415 [verbose] > │ #endif │
00:10:47 #22416 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22417 [verbose] > │ let v84 : System.IO.DirectoryInfo = null |> │
00:10:47 #22418 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:47 #22419 [verbose] > │ v84 │
00:10:47 #22420 [verbose] > │ #endif │
00:10:47 #22421 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22422 [verbose] > │ Unchecked.defaultof<System.IO.DirectoryInfo> │
00:10:47 #22423 [verbose] > │ #endif │
00:10:47 #22424 [verbose] > │ |> fun x -> _v78 <- Some x │
00:10:47 #22425 [verbose] > │ let v85 : System.IO.DirectoryInfo = _v78.Value │
00:10:47 #22426 [verbose] > │ let v86 : bool option = None │
00:10:47 #22427 [verbose] > │ let mutable _v86 = v86 │
00:10:47 #22428 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22429 [verbose] > │ let v87 : bool = null |> unbox<bool> │
00:10:47 #22430 [verbose] > │ v87 │
00:10:47 #22431 [verbose] > │ #endif │
00:10:47 #22432 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22433 [verbose] > │ let v88 : bool = null |> unbox<bool> │
00:10:47 #22434 [verbose] > │ v88 │
00:10:47 #22435 [verbose] > │ #endif │
00:10:47 #22436 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22437 [verbose] > │ let v89 : bool = null |> unbox<bool> │
00:10:47 #22438 [verbose] > │ v89 │
00:10:47 #22439 [verbose] > │ #endif │
00:10:47 #22440 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22441 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22442 [verbose] > │ let v90 : bool = v85.Exists │
00:10:47 #22443 [verbose] > │ v90 │
00:10:47 #22444 [verbose] > │ #endif │
00:10:47 #22445 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22446 [verbose] > │ let v91 : bool = null |> unbox<bool> │
00:10:47 #22447 [verbose] > │ v91 │
00:10:47 #22448 [verbose] > │ #endif │
00:10:47 #22449 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22450 [verbose] > │ Unchecked.defaultof<bool> │
00:10:47 #22451 [verbose] > │ #endif │
00:10:47 #22452 [verbose] > │ |> fun x -> _v86 <- Some x │
00:10:47 #22453 [verbose] > │ let v92 : bool = _v86.Value │
00:10:47 #22454 [verbose] > │ let v93 : bool = v92 = false │
00:10:47 #22455 [verbose] > │ if v93 then │
00:10:47 #22456 [verbose] > │ let v94 : System.DateTime option = None │
00:10:47 #22457 [verbose] > │ let mutable _v94 = v94 │
00:10:47 #22458 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22459 [verbose] > │ let v95 : System.DateTime = null |> unbox<System.DateTime> │
00:10:47 #22460 [verbose] > │ v95 │
00:10:47 #22461 [verbose] > │ #endif │
00:10:47 #22462 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22463 [verbose] > │ let v96 : System.DateTime = null |> unbox<System.DateTime> │
00:10:47 #22464 [verbose] > │ v96 │
00:10:47 #22465 [verbose] > │ #endif │
00:10:47 #22466 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22467 [verbose] > │ let v97 : System.DateTime = null |> unbox<System.DateTime> │
00:10:47 #22468 [verbose] > │ v97 │
00:10:47 #22469 [verbose] > │ #endif │
00:10:47 #22470 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22471 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22472 [verbose] > │ let v98 : System.DateTime = v85.CreationTime │
00:10:47 #22473 [verbose] > │ v98 │
00:10:47 #22474 [verbose] > │ #endif │
00:10:47 #22475 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22476 [verbose] > │ let v99 : System.DateTime = null |> unbox<System.DateTime> │
00:10:47 #22477 [verbose] > │ v99 │
00:10:47 #22478 [verbose] > │ #endif │
00:10:47 #22479 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:47 #22480 [verbose] > │ FABLE_COMPILER_DART │
00:10:47 #22481 [verbose] > │ Unchecked.defaultof<System.DateTime> │
00:10:47 #22482 [verbose] > │ #endif │
00:10:47 #22483 [verbose] > │ |> fun x -> _v94 <- Some x │
00:10:47 #22484 [verbose] > │ let v100 : System.DateTime = _v94.Value │
00:10:47 #22485 [verbose] > │ let v101 : obj = {| Exists = v92; CreationTime = v100 |} │
00:10:47 #22486 [verbose] > │ let v102 : string = $"%A{v101}" │
00:10:47 #22487 [verbose] > │ let v103 : (unit -> string) = closure1(v77, v102) │
00:10:47 #22488 [verbose] > │ let v104 : string = $"create_temp_directory / {v103 ()}" │
00:10:47 #22489 [verbose] > │ System.Console.WriteLine v104 │
00:10:47 #22490 [verbose] > │ () │
00:10:47 #22491 [verbose] > │ let v105 : System.IDisposable option = None │
00:10:47 #22492 [verbose] > │ let mutable _v105 = v105 │
00:10:47 #22493 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22494 [verbose] > │ let v106 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:47 #22495 [verbose] > │ v106 │
00:10:47 #22496 [verbose] > │ #endif │
00:10:47 #22497 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22498 [verbose] > │ let v107 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:47 #22499 [verbose] > │ v107 │
00:10:47 #22500 [verbose] > │ #endif │
00:10:47 #22501 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22502 [verbose] > │ let v108 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:47 #22503 [verbose] > │ v108 │
00:10:47 #22504 [verbose] > │ #endif │
00:10:47 #22505 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22506 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22507 [verbose] > │ let v109 : (unit -> unit) = closure3(v77) │
00:10:47 #22508 [verbose] > │ let v110 : System.IDisposable = { new System.IDisposable with member │
00:10:47 #22509 [verbose] > │ _.Dispose () = v109 () } │
00:10:47 #22510 [verbose] > │ v110 │
00:10:47 #22511 [verbose] > │ #endif │
00:10:47 #22512 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22513 [verbose] > │ let v111 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:47 #22514 [verbose] > │ v111 │
00:10:47 #22515 [verbose] > │ #endif │
00:10:47 #22516 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22517 [verbose] > │ Unchecked.defaultof<System.IDisposable> │
00:10:47 #22518 [verbose] > │ #endif │
00:10:47 #22519 [verbose] > │ |> fun x -> _v105 <- Some x │
00:10:47 #22520 [verbose] > │ let v112 : System.IDisposable = _v105.Value │
00:10:47 #22521 [verbose] > │ struct (v77, v112) │
00:10:47 #22522 [verbose] > │ #endif │
00:10:47 #22523 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22524 [verbose] > │ let struct (v113 : string, v114 : System.IDisposable) = null |> │
00:10:47 #22525 [verbose] > │ unbox<struct (string * System.IDisposable)> │
00:10:47 #22526 [verbose] > │ struct (v113, v114) │
00:10:47 #22527 [verbose] > │ #endif │
00:10:47 #22528 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22529 [verbose] > │ Unchecked.defaultof<struct (string * System.IDisposable)> │
00:10:47 #22530 [verbose] > │ #endif │
00:10:47 #22531 [verbose] > │ |> fun x -> _v0 <- Some x │
00:10:47 #22532 [verbose] > │ let struct (v115 : string, v116 : System.IDisposable) = _v0.Value │
00:10:47 #22533 [verbose] > │ use v116 = v116 │
00:10:47 #22534 [verbose] > │ let v117 : System.IDisposable = v116 │
00:10:47 #22535 [verbose] > │ let v118 : string option = None │
00:10:47 #22536 [verbose] > │ let mutable _v118 = v118 │
00:10:47 #22537 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22538 [verbose] > │ let v119 : string = method1(v115) │
00:10:47 #22539 [verbose] > │ let v120 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:47 #22540 [verbose] > │ let v121 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v119 v120 │
00:10:47 #22541 [verbose] > │ let v122 : string = "String::from($0)" │
00:10:47 #22542 [verbose] > │ let v123 : std_string_String = Fable.Core.RustInterop.emitRustExpr v121 │
00:10:47 #22543 [verbose] > │ v122 │
00:10:47 #22544 [verbose] > │ let v124 : string = "std::path::PathBuf::from($0)" │
00:10:47 #22545 [verbose] > │ let v125 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v123 │
00:10:47 #22546 [verbose] > │ v124 │
00:10:47 #22547 [verbose] > │ let v126 : string = method4() │
00:10:47 #22548 [verbose] > │ let v127 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:47 #22549 [verbose] > │ let v128 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v126 v127 │
00:10:47 #22550 [verbose] > │ let v129 : string = "String::from($0)" │
00:10:47 #22551 [verbose] > │ let v130 : std_string_String = Fable.Core.RustInterop.emitRustExpr v128 │
00:10:47 #22552 [verbose] > │ v129 │
00:10:47 #22553 [verbose] > │ let v131 : string = "$0.join($1)" │
00:10:47 #22554 [verbose] > │ let v132 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:47 #22555 [verbose] > │ (v125, v130) v131 │
00:10:47 #22556 [verbose] > │ let v133 : string = "$0.display().to_string()" │
00:10:47 #22557 [verbose] > │ let v134 : std_string_String = Fable.Core.RustInterop.emitRustExpr v132 │
00:10:47 #22558 [verbose] > │ v133 │
00:10:47 #22559 [verbose] > │ let v135 : string = "fable_library_rust::String_::fromString($0)" │
00:10:47 #22560 [verbose] > │ let v136 : string = Fable.Core.RustInterop.emitRustExpr v134 v135 │
00:10:47 #22561 [verbose] > │ v136 │
00:10:47 #22562 [verbose] > │ #endif │
00:10:47 #22563 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22564 [verbose] > │ let v137 : string = null |> unbox<string> │
00:10:47 #22565 [verbose] > │ v137 │
00:10:47 #22566 [verbose] > │ #endif │
00:10:47 #22567 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22568 [verbose] > │ let v138 : string = null |> unbox<string> │
00:10:47 #22569 [verbose] > │ v138 │
00:10:47 #22570 [verbose] > │ #endif │
00:10:47 #22571 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22572 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22573 [verbose] > │ let v139 : string = "test.txt" │
00:10:47 #22574 [verbose] > │ let v140 : string = System.IO.Path.Combine (v115, v139) │
00:10:47 #22575 [verbose] > │ v140 │
00:10:47 #22576 [verbose] > │ #endif │
00:10:47 #22577 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22578 [verbose] > │ let v141 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:47 #22579 [verbose] > │ let v142 : string = "v141.join($0, $1)" │
00:10:47 #22580 [verbose] > │ let v143 : string = Fable.Core.JsInterop.emitJsExpr struct (v115, v139) │
00:10:47 #22581 [verbose] > │ v142 │
00:10:47 #22582 [verbose] > │ v143 │
00:10:47 #22583 [verbose] > │ #endif │
00:10:47 #22584 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22585 [verbose] > │ Unchecked.defaultof<string> │
00:10:47 #22586 [verbose] > │ #endif │
00:10:47 #22587 [verbose] > │ |> fun x -> _v118 <- Some x │
00:10:47 #22588 [verbose] > │ let v144 : string = _v118.Value │
00:10:47 #22589 [verbose] > │ let v145 : Async<struct (int64 * string)> option = None │
00:10:47 #22590 [verbose] > │ let mutable _v145 = v145 │
00:10:47 #22591 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22592 [verbose] > │ let v146 : Async<struct (int64 * string)> = null |> unbox<Async<struct │
00:10:47 #22593 [verbose] > │ (int64 * string)>> │
00:10:47 #22594 [verbose] > │ v146 │
00:10:47 #22595 [verbose] > │ #endif │
00:10:47 #22596 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22597 [verbose] > │ let v147 : Async<struct (int64 * string)> = null |> unbox<Async<struct │
00:10:47 #22598 [verbose] > │ (int64 * string)>> │
00:10:47 #22599 [verbose] > │ v147 │
00:10:47 #22600 [verbose] > │ #endif │
00:10:47 #22601 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22602 [verbose] > │ let v148 : Async<struct (int64 * string)> = null |> unbox<Async<struct │
00:10:47 #22603 [verbose] > │ (int64 * string)>> │
00:10:47 #22604 [verbose] > │ v148 │
00:10:47 #22605 [verbose] > │ #endif │
00:10:47 #22606 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22607 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22608 [verbose] > │ let v149 : Async<struct (int64 * string)> option = None │
00:10:47 #22609 [verbose] > │ let mutable _v149 = v149 │
00:10:47 #22610 [verbose] > │ async { │
00:10:47 #22611 [verbose] > │ let v150 : US0 = US0_1 │
00:10:47 #22612 [verbose] > │ let v151 : (unit -> string) = closure6() │
00:10:47 #22613 [verbose] > │ let v152 : (unit -> string) = closure2() │
00:10:47 #22614 [verbose] > │ method5(v150, v151, v152) │
00:10:47 #22615 [verbose] > │ let v153 : Async<unit> option = None │
00:10:47 #22616 [verbose] > │ let mutable _v153 = v153 │
00:10:47 #22617 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22618 [verbose] > │ let v154 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22619 [verbose] > │ v154 │
00:10:47 #22620 [verbose] > │ #endif │
00:10:47 #22621 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22622 [verbose] > │ let v155 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22623 [verbose] > │ v155 │
00:10:47 #22624 [verbose] > │ #endif │
00:10:47 #22625 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22626 [verbose] > │ let v156 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22627 [verbose] > │ v156 │
00:10:47 #22628 [verbose] > │ #endif │
00:10:47 #22629 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22630 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22631 [verbose] > │ let v157 : string = "0" │
00:10:47 #22632 [verbose] > │ let v158 : System.Threading.Tasks.Task = │
00:10:47 #22633 [verbose] > │ System.IO.File.WriteAllTextAsync (v144, v157) │
00:10:47 #22634 [verbose] > │ let v159 : Async<unit> option = None │
00:10:47 #22635 [verbose] > │ let mutable _v159 = v159 │
00:10:47 #22636 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22637 [verbose] > │ let v160 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22638 [verbose] > │ v160 │
00:10:47 #22639 [verbose] > │ #endif │
00:10:47 #22640 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22641 [verbose] > │ let v161 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22642 [verbose] > │ v161 │
00:10:47 #22643 [verbose] > │ #endif │
00:10:47 #22644 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22645 [verbose] > │ let v162 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22646 [verbose] > │ v162 │
00:10:47 #22647 [verbose] > │ #endif │
00:10:47 #22648 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22649 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22650 [verbose] > │ let v163 : (System.Threading.Tasks.Task -> Async<unit>) = │
00:10:47 #22651 [verbose] > │ Async.AwaitTask │
00:10:47 #22652 [verbose] > │ let v164 : Async<unit> = v163 v158 │
00:10:47 #22653 [verbose] > │ v164 │
00:10:47 #22654 [verbose] > │ #endif │
00:10:47 #22655 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22656 [verbose] > │ let v165 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22657 [verbose] > │ v165 │
00:10:47 #22658 [verbose] > │ #endif │
00:10:47 #22659 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22660 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:47 #22661 [verbose] > │ #endif │
00:10:47 #22662 [verbose] > │ |> fun x -> _v159 <- Some x │
00:10:47 #22663 [verbose] > │ let v166 : Async<unit> = _v159.Value │
00:10:47 #22664 [verbose] > │ v166 │
00:10:47 #22665 [verbose] > │ #endif │
00:10:47 #22666 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22667 [verbose] > │ let v167 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22668 [verbose] > │ v167 │
00:10:47 #22669 [verbose] > │ #endif │
00:10:47 #22670 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22671 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:47 #22672 [verbose] > │ #endif │
00:10:47 #22673 [verbose] > │ |> fun x -> _v153 <- Some x │
00:10:47 #22674 [verbose] > │ let v168 : Async<unit> = _v153.Value │
00:10:47 #22675 [verbose] > │ do! v168 │
00:10:47 #22676 [verbose] > │ let v169 : US0 = US0_1 │
00:10:47 #22677 [verbose] > │ let v170 : (unit -> string) = closure10() │
00:10:47 #22678 [verbose] > │ method5(v169, v170, v152) │
00:10:47 #22679 [verbose] > │ let v171 : Async<unit> option = None │
00:10:47 #22680 [verbose] > │ let mutable _v171 = v171 │
00:10:47 #22681 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22682 [verbose] > │ let v172 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22683 [verbose] > │ v172 │
00:10:47 #22684 [verbose] > │ #endif │
00:10:47 #22685 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22686 [verbose] > │ let v173 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22687 [verbose] > │ v173 │
00:10:47 #22688 [verbose] > │ #endif │
00:10:47 #22689 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22690 [verbose] > │ let v174 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22691 [verbose] > │ v174 │
00:10:47 #22692 [verbose] > │ #endif │
00:10:47 #22693 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22694 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22695 [verbose] > │ let v175 : Async<unit> option = None │
00:10:47 #22696 [verbose] > │ let mutable _v175 = v175 │
00:10:47 #22697 [verbose] > │ async { │
00:10:47 #22698 [verbose] > │ let v176 : US0 = US0_1 │
00:10:47 #22699 [verbose] > │ let v177 : (unit -> string) = closure11() │
00:10:47 #22700 [verbose] > │ method5(v176, v177, v152) │
00:10:47 #22701 [verbose] > │ let v178 : System.IO.FileStream option = None │
00:10:47 #22702 [verbose] > │ let mutable _v178 = v178 │
00:10:47 #22703 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22704 [verbose] > │ let v179 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:47 #22705 [verbose] > │ v179 │
00:10:47 #22706 [verbose] > │ #endif │
00:10:47 #22707 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22708 [verbose] > │ let v180 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:47 #22709 [verbose] > │ v180 │
00:10:47 #22710 [verbose] > │ #endif │
00:10:47 #22711 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22712 [verbose] > │ let v181 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:47 #22713 [verbose] > │ v181 │
00:10:47 #22714 [verbose] > │ #endif │
00:10:47 #22715 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22716 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22717 [verbose] > │ let v182 : System.IO.FileMode = System.IO.FileMode.Open │
00:10:47 #22718 [verbose] > │ let v183 : System.IO.FileAccess = System.IO.FileAccess.ReadWrite │
00:10:47 #22719 [verbose] > │ let v184 : System.IO.FileShare = System.IO.FileShare.None │
00:10:47 #22720 [verbose] > │ let v185 : System.IO.FileStream = new System.IO.FileStream (v144, v182, │
00:10:47 #22721 [verbose] > │ v183, v184) │
00:10:47 #22722 [verbose] > │ v185 │
00:10:47 #22723 [verbose] > │ #endif │
00:10:47 #22724 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22725 [verbose] > │ let v186 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:47 #22726 [verbose] > │ v186 │
00:10:47 #22727 [verbose] > │ #endif │
00:10:47 #22728 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22729 [verbose] > │ Unchecked.defaultof<System.IO.FileStream> │
00:10:47 #22730 [verbose] > │ #endif │
00:10:47 #22731 [verbose] > │ |> fun x -> _v178 <- Some x │
00:10:47 #22732 [verbose] > │ let v187 : System.IO.FileStream = _v178.Value │
00:10:47 #22733 [verbose] > │ use v187 = v187 │
00:10:47 #22734 [verbose] > │ let v188 : System.IO.FileStream = v187 │
00:10:47 #22735 [verbose] > │ let v189 : US0 = US0_1 │
00:10:47 #22736 [verbose] > │ let v190 : (unit -> string) = closure12() │
00:10:47 #22737 [verbose] > │ method5(v189, v190, v152) │
00:10:47 #22738 [verbose] > │ let v191 : Async<unit> option = None │
00:10:47 #22739 [verbose] > │ let mutable _v191 = v191 │
00:10:47 #22740 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22741 [verbose] > │ let v192 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22742 [verbose] > │ v192 │
00:10:47 #22743 [verbose] > │ #endif │
00:10:47 #22744 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22745 [verbose] > │ let v193 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22746 [verbose] > │ v193 │
00:10:47 #22747 [verbose] > │ #endif │
00:10:47 #22748 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22749 [verbose] > │ let v194 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22750 [verbose] > │ v194 │
00:10:47 #22751 [verbose] > │ #endif │
00:10:47 #22752 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22753 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22754 [verbose] > │ let v195 : (int32 -> Async<unit>) = Async.Sleep │
00:10:47 #22755 [verbose] > │ let v196 : Async<unit> = v195 2000 │
00:10:47 #22756 [verbose] > │ v196 │
00:10:47 #22757 [verbose] > │ #endif │
00:10:47 #22758 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22759 [verbose] > │ let v197 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22760 [verbose] > │ v197 │
00:10:47 #22761 [verbose] > │ #endif │
00:10:47 #22762 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22763 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:47 #22764 [verbose] > │ #endif │
00:10:47 #22765 [verbose] > │ |> fun x -> _v191 <- Some x │
00:10:47 #22766 [verbose] > │ let v198 : Async<unit> = _v191.Value │
00:10:47 #22767 [verbose] > │ do! v198 │
00:10:47 #22768 [verbose] > │ let v199 : US0 = US0_1 │
00:10:47 #22769 [verbose] > │ let v200 : (unit -> string) = closure13() │
00:10:47 #22770 [verbose] > │ method5(v199, v200, v152) │
00:10:47 #22771 [verbose] > │ let v201 : int64 = v188.Seek (0L, System.IO.SeekOrigin.Begin) │
00:10:47 #22772 [verbose] > │ let v202 : US0 = US0_1 │
00:10:47 #22773 [verbose] > │ let v203 : (unit -> string) = closure14() │
00:10:47 #22774 [verbose] > │ method5(v202, v203, v152) │
00:10:47 #22775 [verbose] > │ let v204 : (uint8 -> unit) = v188.WriteByte │
00:10:47 #22776 [verbose] > │ v204 49uy │
00:10:47 #22777 [verbose] > │ let v205 : US0 = US0_1 │
00:10:47 #22778 [verbose] > │ let v206 : (unit -> string) = closure15() │
00:10:47 #22779 [verbose] > │ method5(v205, v206, v152) │
00:10:47 #22780 [verbose] > │ let v207 : (System.IO.FileStream -> unit) = _.Flush() │
00:10:47 #22781 [verbose] > │ v207 v188 │
00:10:47 #22782 [verbose] > │ let v208 : US0 = US0_1 │
00:10:47 #22783 [verbose] > │ let v209 : (unit -> string) = closure16() │
00:10:47 #22784 [verbose] > │ method5(v208, v209, v152) │
00:10:47 #22785 [verbose] > │ } │
00:10:47 #22786 [verbose] > │ |> fun x -> _v175 <- Some x │
00:10:47 #22787 [verbose] > │ let v210 : Async<unit> = _v175 |> Option.get │
00:10:47 #22788 [verbose] > │ v210 │
00:10:47 #22789 [verbose] > │ #endif │
00:10:47 #22790 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22791 [verbose] > │ let v211 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22792 [verbose] > │ v211 │
00:10:47 #22793 [verbose] > │ #endif │
00:10:47 #22794 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22795 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:47 #22796 [verbose] > │ #endif │
00:10:47 #22797 [verbose] > │ |> fun x -> _v171 <- Some x │
00:10:47 #22798 [verbose] > │ let v212 : Async<unit> = _v171.Value │
00:10:47 #22799 [verbose] > │ let v213 : Async<Async<unit>> option = None │
00:10:47 #22800 [verbose] > │ let mutable _v213 = v213 │
00:10:47 #22801 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22802 [verbose] > │ let v214 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:47 #22803 [verbose] > │ v214 │
00:10:47 #22804 [verbose] > │ #endif │
00:10:47 #22805 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22806 [verbose] > │ let v215 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:47 #22807 [verbose] > │ v215 │
00:10:47 #22808 [verbose] > │ #endif │
00:10:47 #22809 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22810 [verbose] > │ let v216 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:47 #22811 [verbose] > │ v216 │
00:10:47 #22812 [verbose] > │ #endif │
00:10:47 #22813 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22814 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22815 [verbose] > │ let v217 : (Async<unit> -> Async<Async<unit>>) = Async.StartChild │
00:10:47 #22816 [verbose] > │ let v218 : Async<Async<unit>> = v217 v212 │
00:10:47 #22817 [verbose] > │ v218 │
00:10:47 #22818 [verbose] > │ #endif │
00:10:47 #22819 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22820 [verbose] > │ let v219 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:47 #22821 [verbose] > │ v219 │
00:10:47 #22822 [verbose] > │ #endif │
00:10:47 #22823 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22824 [verbose] > │ Unchecked.defaultof<Async<Async<unit>>> │
00:10:47 #22825 [verbose] > │ #endif │
00:10:47 #22826 [verbose] > │ |> fun x -> _v213 <- Some x │
00:10:47 #22827 [verbose] > │ let v220 : Async<Async<unit>> = _v213.Value │
00:10:47 #22828 [verbose] > │ let! v220 = v220 │
00:10:47 #22829 [verbose] > │ let v221 : Async<unit> = v220 │
00:10:47 #22830 [verbose] > │ let v222 : US0 = US0_1 │
00:10:47 #22831 [verbose] > │ let v223 : (unit -> string) = closure17() │
00:10:47 #22832 [verbose] > │ method5(v222, v223, v152) │
00:10:47 #22833 [verbose] > │ let v224 : Async<unit> option = None │
00:10:47 #22834 [verbose] > │ let mutable _v224 = v224 │
00:10:47 #22835 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22836 [verbose] > │ let v225 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22837 [verbose] > │ v225 │
00:10:47 #22838 [verbose] > │ #endif │
00:10:47 #22839 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22840 [verbose] > │ let v226 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22841 [verbose] > │ v226 │
00:10:47 #22842 [verbose] > │ #endif │
00:10:47 #22843 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22844 [verbose] > │ let v227 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22845 [verbose] > │ v227 │
00:10:47 #22846 [verbose] > │ #endif │
00:10:47 #22847 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22848 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22849 [verbose] > │ let v228 : (int32 -> Async<unit>) = Async.Sleep │
00:10:47 #22850 [verbose] > │ let v229 : Async<unit> = v228 1 │
00:10:47 #22851 [verbose] > │ v229 │
00:10:47 #22852 [verbose] > │ #endif │
00:10:47 #22853 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22854 [verbose] > │ let v230 : Async<unit> = null |> unbox<Async<unit>> │
00:10:47 #22855 [verbose] > │ v230 │
00:10:47 #22856 [verbose] > │ #endif │
00:10:47 #22857 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22858 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:47 #22859 [verbose] > │ #endif │
00:10:47 #22860 [verbose] > │ |> fun x -> _v224 <- Some x │
00:10:47 #22861 [verbose] > │ let v231 : Async<unit> = _v224.Value │
00:10:47 #22862 [verbose] > │ do! v231 │
00:10:47 #22863 [verbose] > │ let v232 : US0 = US0_1 │
00:10:47 #22864 [verbose] > │ let v233 : (unit -> string) = closure18() │
00:10:47 #22865 [verbose] > │ method5(v232, v233, v152) │
00:10:47 #22866 [verbose] > │ let v234 : Async<int64> option = None │
00:10:47 #22867 [verbose] > │ let mutable _v234 = v234 │
00:10:47 #22868 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22869 [verbose] > │ let v235 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #22870 [verbose] > │ v235 │
00:10:47 #22871 [verbose] > │ #endif │
00:10:47 #22872 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22873 [verbose] > │ let v236 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #22874 [verbose] > │ v236 │
00:10:47 #22875 [verbose] > │ #endif │
00:10:47 #22876 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22877 [verbose] > │ let v237 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #22878 [verbose] > │ v237 │
00:10:47 #22879 [verbose] > │ #endif │
00:10:47 #22880 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22881 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22882 [verbose] > │ let v238 : int64 = 0L │
00:10:47 #22883 [verbose] > │ let v239 : Async<int64> = method10(v144, v238) │
00:10:47 #22884 [verbose] > │ v239 │
00:10:47 #22885 [verbose] > │ #endif │
00:10:47 #22886 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22887 [verbose] > │ let v240 : Async<int64> = null |> unbox<Async<int64>> │
00:10:47 #22888 [verbose] > │ v240 │
00:10:47 #22889 [verbose] > │ #endif │
00:10:47 #22890 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22891 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:47 #22892 [verbose] > │ #endif │
00:10:47 #22893 [verbose] > │ |> fun x -> _v234 <- Some x │
00:10:47 #22894 [verbose] > │ let v241 : Async<int64> = _v234.Value │
00:10:47 #22895 [verbose] > │ let! v241 = v241 │
00:10:47 #22896 [verbose] > │ let v242 : int64 = v241 │
00:10:47 #22897 [verbose] > │ let v243 : US0 = US0_1 │
00:10:47 #22898 [verbose] > │ let v244 : (unit -> string) = closure20() │
00:10:47 #22899 [verbose] > │ method5(v243, v244, v152) │
00:10:47 #22900 [verbose] > │ let v245 : Async<string> option = None │
00:10:47 #22901 [verbose] > │ let mutable _v245 = v245 │
00:10:47 #22902 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22903 [verbose] > │ let v246 : Async<string> = null |> unbox<Async<string>> │
00:10:47 #22904 [verbose] > │ v246 │
00:10:47 #22905 [verbose] > │ #endif │
00:10:47 #22906 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22907 [verbose] > │ let v247 : Async<string> = null |> unbox<Async<string>> │
00:10:47 #22908 [verbose] > │ v247 │
00:10:47 #22909 [verbose] > │ #endif │
00:10:47 #22910 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22911 [verbose] > │ let v248 : Async<string> = null |> unbox<Async<string>> │
00:10:47 #22912 [verbose] > │ v248 │
00:10:47 #22913 [verbose] > │ #endif │
00:10:47 #22914 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22915 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22916 [verbose] > │ let v249 : (string -> System.Threading.Tasks.Task<string>) = │
00:10:47 #22917 [verbose] > │ System.IO.File.ReadAllTextAsync │
00:10:47 #22918 [verbose] > │ let v250 : System.Threading.Tasks.Task<string> = v249 v144 │
00:10:47 #22919 [verbose] > │ let v251 : Async<string> option = None │
00:10:47 #22920 [verbose] > │ let mutable _v251 = v251 │
00:10:47 #22921 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22922 [verbose] > │ let v252 : Async<string> = null |> unbox<Async<string>> │
00:10:47 #22923 [verbose] > │ v252 │
00:10:47 #22924 [verbose] > │ #endif │
00:10:47 #22925 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22926 [verbose] > │ let v253 : Async<string> = null |> unbox<Async<string>> │
00:10:47 #22927 [verbose] > │ v253 │
00:10:47 #22928 [verbose] > │ #endif │
00:10:47 #22929 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22930 [verbose] > │ let v254 : Async<string> = null |> unbox<Async<string>> │
00:10:47 #22931 [verbose] > │ v254 │
00:10:47 #22932 [verbose] > │ #endif │
00:10:47 #22933 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #22934 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #22935 [verbose] > │ let v255 : (System.Threading.Tasks.Task<string> -> Async<string>) = │
00:10:47 #22936 [verbose] > │ Async.AwaitTask │
00:10:47 #22937 [verbose] > │ let v256 : Async<string> = v255 v250 │
00:10:47 #22938 [verbose] > │ v256 │
00:10:47 #22939 [verbose] > │ #endif │
00:10:47 #22940 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22941 [verbose] > │ let v257 : Async<string> = null |> unbox<Async<string>> │
00:10:47 #22942 [verbose] > │ v257 │
00:10:47 #22943 [verbose] > │ #endif │
00:10:47 #22944 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22945 [verbose] > │ Unchecked.defaultof<Async<string>> │
00:10:47 #22946 [verbose] > │ #endif │
00:10:47 #22947 [verbose] > │ |> fun x -> _v251 <- Some x │
00:10:47 #22948 [verbose] > │ let v258 : Async<string> = _v251.Value │
00:10:47 #22949 [verbose] > │ v258 │
00:10:47 #22950 [verbose] > │ #endif │
00:10:47 #22951 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22952 [verbose] > │ let v259 : Async<string> = null |> unbox<Async<string>> │
00:10:47 #22953 [verbose] > │ v259 │
00:10:47 #22954 [verbose] > │ #endif │
00:10:47 #22955 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22956 [verbose] > │ Unchecked.defaultof<Async<string>> │
00:10:47 #22957 [verbose] > │ #endif │
00:10:47 #22958 [verbose] > │ |> fun x -> _v245 <- Some x │
00:10:47 #22959 [verbose] > │ let v260 : Async<string> = _v245.Value │
00:10:47 #22960 [verbose] > │ let! v260 = v260 │
00:10:47 #22961 [verbose] > │ let v261 : string = v260 │
00:10:47 #22962 [verbose] > │ let v262 : US0 = US0_1 │
00:10:47 #22963 [verbose] > │ let v263 : (unit -> string) = closure21() │
00:10:47 #22964 [verbose] > │ method5(v262, v263, v152) │
00:10:47 #22965 [verbose] > │ do! v221 │
00:10:47 #22966 [verbose] > │ let v264 : US0 = US0_1 │
00:10:47 #22967 [verbose] > │ let v265 : (unit -> string) = closure22() │
00:10:47 #22968 [verbose] > │ method5(v264, v265, v152) │
00:10:47 #22969 [verbose] > │ return struct (v242, v261) │
00:10:47 #22970 [verbose] > │ } │
00:10:47 #22971 [verbose] > │ |> fun x -> _v149 <- Some x │
00:10:47 #22972 [verbose] > │ let v266 : Async<struct (int64 * string)> = _v149 |> Option.get │
00:10:47 #22973 [verbose] > │ v266 │
00:10:47 #22974 [verbose] > │ #endif │
00:10:47 #22975 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #22976 [verbose] > │ let v267 : Async<struct (int64 * string)> = null |> unbox<Async<struct │
00:10:47 #22977 [verbose] > │ (int64 * string)>> │
00:10:47 #22978 [verbose] > │ v267 │
00:10:47 #22979 [verbose] > │ #endif │
00:10:47 #22980 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #22981 [verbose] > │ Unchecked.defaultof<Async<struct (int64 * string)>> │
00:10:47 #22982 [verbose] > │ #endif │
00:10:47 #22983 [verbose] > │ |> fun x -> _v145 <- Some x │
00:10:47 #22984 [verbose] > │ let v268 : Async<struct (int64 * string)> = _v145.Value │
00:10:47 #22985 [verbose] > │ let v269 : Async<US3> option = None │
00:10:47 #22986 [verbose] > │ let mutable _v269 = v269 │
00:10:47 #22987 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #22988 [verbose] > │ let v270 : Async<US3> = null |> unbox<Async<US3>> │
00:10:47 #22989 [verbose] > │ v270 │
00:10:47 #22990 [verbose] > │ #endif │
00:10:47 #22991 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #22992 [verbose] > │ let v271 : Async<US3> = null |> unbox<Async<US3>> │
00:10:47 #22993 [verbose] > │ v271 │
00:10:47 #22994 [verbose] > │ #endif │
00:10:47 #22995 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #22996 [verbose] > │ let v272 : Async<US3> = null |> unbox<Async<US3>> │
00:10:47 #22997 [verbose] > │ v272 │
00:10:47 #22998 [verbose] > │ #endif │
00:10:47 #22999 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #23000 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #23001 [verbose] > │ let v273 : Async<US3> option = None │
00:10:47 #23002 [verbose] > │ let mutable _v273 = v273 │
00:10:47 #23003 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #23004 [verbose] > │ let v274 : Async<US3> = null |> unbox<Async<US3>> │
00:10:47 #23005 [verbose] > │ v274 │
00:10:47 #23006 [verbose] > │ #endif │
00:10:47 #23007 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #23008 [verbose] > │ let v275 : Async<US3> = null |> unbox<Async<US3>> │
00:10:47 #23009 [verbose] > │ v275 │
00:10:47 #23010 [verbose] > │ #endif │
00:10:47 #23011 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #23012 [verbose] > │ let v276 : Async<US3> = null |> unbox<Async<US3>> │
00:10:47 #23013 [verbose] > │ v276 │
00:10:47 #23014 [verbose] > │ #endif │
00:10:47 #23015 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #23016 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #23017 [verbose] > │ let v277 : Async<US3> option = None │
00:10:47 #23018 [verbose] > │ let mutable _v277 = v277 │
00:10:47 #23019 [verbose] > │ async { │
00:10:47 #23020 [verbose] > │ let v278 : Async<Async<struct (int64 * string)>> option = None │
00:10:47 #23021 [verbose] > │ let mutable _v278 = v278 │
00:10:47 #23022 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #23023 [verbose] > │ let v279 : Async<Async<struct (int64 * string)>> = null |> │
00:10:47 #23024 [verbose] > │ unbox<Async<Async<struct (int64 * string)>>> │
00:10:47 #23025 [verbose] > │ v279 │
00:10:47 #23026 [verbose] > │ #endif │
00:10:47 #23027 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #23028 [verbose] > │ let v280 : Async<Async<struct (int64 * string)>> = null |> │
00:10:47 #23029 [verbose] > │ unbox<Async<Async<struct (int64 * string)>>> │
00:10:47 #23030 [verbose] > │ v280 │
00:10:47 #23031 [verbose] > │ #endif │
00:10:47 #23032 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #23033 [verbose] > │ let v281 : Async<Async<struct (int64 * string)>> = null |> │
00:10:47 #23034 [verbose] > │ unbox<Async<Async<struct (int64 * string)>>> │
00:10:47 #23035 [verbose] > │ v281 │
00:10:47 #23036 [verbose] > │ #endif │
00:10:47 #23037 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #23038 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #23039 [verbose] > │ let v282 : Async<Async<struct (int64 * string)>> = Async.StartChild │
00:10:47 #23040 [verbose] > │ (v268, 3000) │
00:10:47 #23041 [verbose] > │ v282 │
00:10:47 #23042 [verbose] > │ #endif │
00:10:47 #23043 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #23044 [verbose] > │ let v283 : Async<Async<struct (int64 * string)>> = null |> │
00:10:47 #23045 [verbose] > │ unbox<Async<Async<struct (int64 * string)>>> │
00:10:47 #23046 [verbose] > │ v283 │
00:10:47 #23047 [verbose] > │ #endif │
00:10:47 #23048 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #23049 [verbose] > │ Unchecked.defaultof<Async<Async<struct (int64 * string)>>> │
00:10:47 #23050 [verbose] > │ #endif │
00:10:47 #23051 [verbose] > │ |> fun x -> _v278 <- Some x │
00:10:47 #23052 [verbose] > │ let v284 : Async<Async<struct (int64 * string)>> = _v278.Value │
00:10:47 #23053 [verbose] > │ let! v284 = v284 │
00:10:47 #23054 [verbose] > │ let v285 : Async<struct (int64 * string)> = v284 │
00:10:47 #23055 [verbose] > │ let v286 : Async<Choice<struct (int64 * string), exn>> option = None │
00:10:47 #23056 [verbose] > │ let mutable _v286 = v286 │
00:10:47 #23057 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #23058 [verbose] > │ let v287 : Async<Choice<struct (int64 * string), exn>> = null |> │
00:10:47 #23059 [verbose] > │ unbox<Async<Choice<struct (int64 * string), exn>>> │
00:10:47 #23060 [verbose] > │ v287 │
00:10:47 #23061 [verbose] > │ #endif │
00:10:47 #23062 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #23063 [verbose] > │ let v288 : Async<Choice<struct (int64 * string), exn>> = null |> │
00:10:47 #23064 [verbose] > │ unbox<Async<Choice<struct (int64 * string), exn>>> │
00:10:47 #23065 [verbose] > │ v288 │
00:10:47 #23066 [verbose] > │ #endif │
00:10:47 #23067 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #23068 [verbose] > │ let v289 : Async<Choice<struct (int64 * string), exn>> = null |> │
00:10:47 #23069 [verbose] > │ unbox<Async<Choice<struct (int64 * string), exn>>> │
00:10:47 #23070 [verbose] > │ v289 │
00:10:47 #23071 [verbose] > │ #endif │
00:10:47 #23072 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #23073 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #23074 [verbose] > │ let v290 : (Async<struct (int64 * string)> -> Async<Choice<struct (int64 │
00:10:47 #23075 [verbose] > │ * string), exn>>) = Async.Catch │
00:10:47 #23076 [verbose] > │ let v291 : Async<Choice<struct (int64 * string), exn>> = v290 v285 │
00:10:47 #23077 [verbose] > │ v291 │
00:10:47 #23078 [verbose] > │ #endif │
00:10:47 #23079 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #23080 [verbose] > │ let v292 : Async<Choice<struct (int64 * string), exn>> = null |> │
00:10:47 #23081 [verbose] > │ unbox<Async<Choice<struct (int64 * string), exn>>> │
00:10:47 #23082 [verbose] > │ v292 │
00:10:47 #23083 [verbose] > │ #endif │
00:10:47 #23084 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #23085 [verbose] > │ Unchecked.defaultof<Async<Choice<struct (int64 * string), exn>>> │
00:10:47 #23086 [verbose] > │ #endif │
00:10:47 #23087 [verbose] > │ |> fun x -> _v286 <- Some x │
00:10:47 #23088 [verbose] > │ let v293 : Async<Choice<struct (int64 * string), exn>> = _v286.Value │
00:10:47 #23089 [verbose] > │ let v294 : Async<US4> option = None │
00:10:47 #23090 [verbose] > │ let mutable _v294 = v294 │
00:10:47 #23091 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #23092 [verbose] > │ let v295 : Async<US4> = null |> unbox<Async<US4>> │
00:10:47 #23093 [verbose] > │ v295 │
00:10:47 #23094 [verbose] > │ #endif │
00:10:47 #23095 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #23096 [verbose] > │ let v296 : Async<US4> = null |> unbox<Async<US4>> │
00:10:47 #23097 [verbose] > │ v296 │
00:10:47 #23098 [verbose] > │ #endif │
00:10:47 #23099 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #23100 [verbose] > │ let v297 : Async<US4> = null |> unbox<Async<US4>> │
00:10:47 #23101 [verbose] > │ v297 │
00:10:47 #23102 [verbose] > │ #endif │
00:10:47 #23103 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #23104 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #23105 [verbose] > │ let v298 : Async<US4> option = None │
00:10:47 #23106 [verbose] > │ let mutable _v298 = v298 │
00:10:47 #23107 [verbose] > │ async { │
00:10:47 #23108 [verbose] > │ let! v293 = v293 │
00:10:47 #23109 [verbose] > │ let v299 : Choice<struct (int64 * string), exn> = v293 │
00:10:47 #23110 [verbose] > │ let v300 : US4 option = None │
00:10:47 #23111 [verbose] > │ let mutable _v300 = v300 │
00:10:47 #23112 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #23113 [verbose] > │ let v301 : US4 = null |> unbox<US4> │
00:10:47 #23114 [verbose] > │ v301 │
00:10:47 #23115 [verbose] > │ #endif │
00:10:47 #23116 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #23117 [verbose] > │ let v302 : US4 = null |> unbox<US4> │
00:10:47 #23118 [verbose] > │ v302 │
00:10:47 #23119 [verbose] > │ #endif │
00:10:47 #23120 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #23121 [verbose] > │ let v303 : US4 = null |> unbox<US4> │
00:10:47 #23122 [verbose] > │ v303 │
00:10:47 #23123 [verbose] > │ #endif │
00:10:47 #23124 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #23125 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #23126 [verbose] > │ let v304 : (struct (int64 * string) -> US4) = closure23() │
00:10:47 #23127 [verbose] > │ let v305 : (exn -> US4) = closure24() │
00:10:47 #23128 [verbose] > │ let v306 : US4 = match v299 with Choice1Of2 x -> v304 x | Choice2Of2 x │
00:10:47 #23129 [verbose] > │ -> v305 x │
00:10:47 #23130 [verbose] > │ v306 │
00:10:47 #23131 [verbose] > │ #endif │
00:10:47 #23132 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #23133 [verbose] > │ let v307 : US4 = null |> unbox<US4> │
00:10:47 #23134 [verbose] > │ v307 │
00:10:47 #23135 [verbose] > │ #endif │
00:10:47 #23136 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #23137 [verbose] > │ Unchecked.defaultof<US4> │
00:10:47 #23138 [verbose] > │ #endif │
00:10:47 #23139 [verbose] > │ |> fun x -> _v300 <- Some x │
00:10:47 #23140 [verbose] > │ let v308 : US4 = _v300.Value │
00:10:47 #23141 [verbose] > │ return v308 │
00:10:47 #23142 [verbose] > │ } │
00:10:47 #23143 [verbose] > │ |> fun x -> _v298 <- Some x │
00:10:47 #23144 [verbose] > │ let v309 : Async<US4> = _v298 |> Option.get │
00:10:47 #23145 [verbose] > │ v309 │
00:10:47 #23146 [verbose] > │ #endif │
00:10:47 #23147 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #23148 [verbose] > │ let v310 : Async<US4> = null |> unbox<Async<US4>> │
00:10:47 #23149 [verbose] > │ v310 │
00:10:47 #23150 [verbose] > │ #endif │
00:10:47 #23151 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #23152 [verbose] > │ Unchecked.defaultof<Async<US4>> │
00:10:47 #23153 [verbose] > │ #endif │
00:10:47 #23154 [verbose] > │ |> fun x -> _v294 <- Some x │
00:10:47 #23155 [verbose] > │ let v311 : Async<US4> = _v294.Value │
00:10:47 #23156 [verbose] > │ let v312 : Async<US5> option = None │
00:10:47 #23157 [verbose] > │ let mutable _v312 = v312 │
00:10:47 #23158 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #23159 [verbose] > │ let v313 : Async<US5> = null |> unbox<Async<US5>> │
00:10:47 #23160 [verbose] > │ v313 │
00:10:47 #23161 [verbose] > │ #endif │
00:10:47 #23162 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #23163 [verbose] > │ let v314 : Async<US5> = null |> unbox<Async<US5>> │
00:10:47 #23164 [verbose] > │ v314 │
00:10:47 #23165 [verbose] > │ #endif │
00:10:47 #23166 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #23167 [verbose] > │ let v315 : Async<US5> = null |> unbox<Async<US5>> │
00:10:47 #23168 [verbose] > │ v315 │
00:10:47 #23169 [verbose] > │ #endif │
00:10:47 #23170 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #23171 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #23172 [verbose] > │ let v316 : Async<US5> option = None │
00:10:47 #23173 [verbose] > │ let mutable _v316 = v316 │
00:10:47 #23174 [verbose] > │ async { │
00:10:47 #23175 [verbose] > │ let! v311 = v311 │
00:10:47 #23176 [verbose] > │ let v317 : US4 = v311 │
00:10:47 #23177 [verbose] > │ let v324 : US5 = │
00:10:47 #23178 [verbose] > │ match v317 with │
00:10:47 #23179 [verbose] > │ | US4_0(v318, v319) -> (* Choice1Of2 *) │
00:10:47 #23180 [verbose] > │ US5_0(v318, v319) │
00:10:47 #23181 [verbose] > │ | US4_1(v321) -> (* Choice2Of2 *) │
00:10:47 #23182 [verbose] > │ US5_1(v321) │
00:10:47 #23183 [verbose] > │ return v324 │
00:10:47 #23184 [verbose] > │ } │
00:10:47 #23185 [verbose] > │ |> fun x -> _v316 <- Some x │
00:10:47 #23186 [verbose] > │ let v325 : Async<US5> = _v316 |> Option.get │
00:10:47 #23187 [verbose] > │ v325 │
00:10:47 #23188 [verbose] > │ #endif │
00:10:47 #23189 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #23190 [verbose] > │ let v326 : Async<US5> = null |> unbox<Async<US5>> │
00:10:47 #23191 [verbose] > │ v326 │
00:10:47 #23192 [verbose] > │ #endif │
00:10:47 #23193 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #23194 [verbose] > │ Unchecked.defaultof<Async<US5>> │
00:10:47 #23195 [verbose] > │ #endif │
00:10:47 #23196 [verbose] > │ |> fun x -> _v312 <- Some x │
00:10:47 #23197 [verbose] > │ let v327 : Async<US5> = _v312.Value │
00:10:47 #23198 [verbose] > │ let v328 : Async<US3> option = None │
00:10:47 #23199 [verbose] > │ let mutable _v328 = v328 │
00:10:47 #23200 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #23201 [verbose] > │ let v329 : Async<US3> = null |> unbox<Async<US3>> │
00:10:47 #23202 [verbose] > │ v329 │
00:10:47 #23203 [verbose] > │ #endif │
00:10:47 #23204 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #23205 [verbose] > │ let v330 : Async<US3> = null |> unbox<Async<US3>> │
00:10:47 #23206 [verbose] > │ v330 │
00:10:47 #23207 [verbose] > │ #endif │
00:10:47 #23208 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #23209 [verbose] > │ let v331 : Async<US3> = null |> unbox<Async<US3>> │
00:10:47 #23210 [verbose] > │ v331 │
00:10:47 #23211 [verbose] > │ #endif │
00:10:47 #23212 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #23213 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #23214 [verbose] > │ let v332 : Async<US3> option = None │
00:10:47 #23215 [verbose] > │ let mutable _v332 = v332 │
00:10:47 #23216 [verbose] > │ async { │
00:10:47 #23217 [verbose] > │ let! v327 = v327 │
00:10:47 #23218 [verbose] > │ let v333 : US5 = v327 │
00:10:47 #23219 [verbose] > │ let v358 : US3 = │
00:10:47 #23220 [verbose] > │ match v333 with │
00:10:47 #23221 [verbose] > │ | US5_1(v337) -> (* Error *) │
00:10:47 #23222 [verbose] > │ let v338 : string = $"%A{v337}" │
00:10:47 #23223 [verbose] > │ let v339 : string = "System.TimeoutException" │
00:10:47 #23224 [verbose] > │ let v340 : bool = v338.Contains v339 │
00:10:47 #23225 [verbose] > │ if v340 then │
00:10:47 #23226 [verbose] > │ let v341 : US0 = US0_1 │
00:10:47 #23227 [verbose] > │ let v342 : (unit -> string) = closure25() │
00:10:47 #23228 [verbose] > │ let v343 : (unit -> string) = closure26() │
00:10:47 #23229 [verbose] > │ method5(v341, v342, v343) │
00:10:47 #23230 [verbose] > │ US3_1 │
00:10:47 #23231 [verbose] > │ else │
00:10:47 #23232 [verbose] > │ let v345 : string option = None │
00:10:47 #23233 [verbose] > │ let mutable _v345 = v345 │
00:10:47 #23234 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #23235 [verbose] > │ let v346 : string = $"%A{v337}" │
00:10:47 #23236 [verbose] > │ v346 │
00:10:47 #23237 [verbose] > │ #endif │
00:10:47 #23238 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #23239 [verbose] > │ let v347 : string = $"%A{v337}" │
00:10:47 #23240 [verbose] > │ v347 │
00:10:47 #23241 [verbose] > │ #endif │
00:10:47 #23242 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #23243 [verbose] > │ let v348 : string = $"%A{v337}" │
00:10:47 #23244 [verbose] > │ v348 │
00:10:47 #23245 [verbose] > │ #endif │
00:10:47 #23246 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #23247 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #23248 [verbose] > │ let v349 : string = $"{v337.GetType ()}: {v337.Message}" │
00:10:47 #23249 [verbose] > │ v349 │
00:10:47 #23250 [verbose] > │ #endif │
00:10:47 #23251 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #23252 [verbose] > │ let v350 : string = $"%A{v337}" │
00:10:47 #23253 [verbose] > │ v350 │
00:10:47 #23254 [verbose] > │ #endif │
00:10:47 #23255 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:47 #23256 [verbose] > │ FABLE_COMPILER_DART │
00:10:47 #23257 [verbose] > │ Unchecked.defaultof<string> │
00:10:47 #23258 [verbose] > │ #endif │
00:10:47 #23259 [verbose] > │ |> fun x -> _v345 <- Some x │
00:10:47 #23260 [verbose] > │ let v351 : string = _v345.Value │
00:10:47 #23261 [verbose] > │ let v352 : US0 = US0_4 │
00:10:47 #23262 [verbose] > │ let v353 : (unit -> string) = closure27(v351) │
00:10:47 #23263 [verbose] > │ let v354 : (unit -> string) = closure26() │
00:10:47 #23264 [verbose] > │ method5(v352, v353, v354) │
00:10:47 #23265 [verbose] > │ US3_1 │
00:10:47 #23266 [verbose] > │ | US5_0(v334, v335) -> (* Ok *) │
00:10:47 #23267 [verbose] > │ US3_0(v334, v335) │
00:10:47 #23268 [verbose] > │ return v358 │
00:10:47 #23269 [verbose] > │ } │
00:10:47 #23270 [verbose] > │ |> fun x -> _v332 <- Some x │
00:10:47 #23271 [verbose] > │ let v359 : Async<US3> = _v332 |> Option.get │
00:10:47 #23272 [verbose] > │ v359 │
00:10:47 #23273 [verbose] > │ #endif │
00:10:47 #23274 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #23275 [verbose] > │ let v360 : Async<US3> = null |> unbox<Async<US3>> │
00:10:47 #23276 [verbose] > │ v360 │
00:10:47 #23277 [verbose] > │ #endif │
00:10:47 #23278 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #23279 [verbose] > │ Unchecked.defaultof<Async<US3>> │
00:10:47 #23280 [verbose] > │ #endif │
00:10:47 #23281 [verbose] > │ |> fun x -> _v328 <- Some x │
00:10:47 #23282 [verbose] > │ let v361 : Async<US3> = _v328.Value │
00:10:47 #23283 [verbose] > │ return! v361 │
00:10:47 #23284 [verbose] > │ } │
00:10:47 #23285 [verbose] > │ |> fun x -> _v277 <- Some x │
00:10:47 #23286 [verbose] > │ let v362 : Async<US3> = _v277 |> Option.get │
00:10:47 #23287 [verbose] > │ v362 │
00:10:47 #23288 [verbose] > │ #endif │
00:10:47 #23289 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #23290 [verbose] > │ let v363 : Async<US3> = null |> unbox<Async<US3>> │
00:10:47 #23291 [verbose] > │ v363 │
00:10:47 #23292 [verbose] > │ #endif │
00:10:47 #23293 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #23294 [verbose] > │ Unchecked.defaultof<Async<US3>> │
00:10:47 #23295 [verbose] > │ #endif │
00:10:47 #23296 [verbose] > │ |> fun x -> _v273 <- Some x │
00:10:47 #23297 [verbose] > │ let v364 : Async<US3> = _v273.Value │
00:10:47 #23298 [verbose] > │ v364 │
00:10:47 #23299 [verbose] > │ #endif │
00:10:47 #23300 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #23301 [verbose] > │ let v365 : Async<US3> = null |> unbox<Async<US3>> │
00:10:47 #23302 [verbose] > │ v365 │
00:10:47 #23303 [verbose] > │ #endif │
00:10:47 #23304 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #23305 [verbose] > │ Unchecked.defaultof<Async<US3>> │
00:10:47 #23306 [verbose] > │ #endif │
00:10:47 #23307 [verbose] > │ |> fun x -> _v269 <- Some x │
00:10:47 #23308 [verbose] > │ let v366 : Async<US3> = _v269.Value │
00:10:47 #23309 [verbose] > │ let v367 : US3 option = None │
00:10:47 #23310 [verbose] > │ let mutable _v367 = v367 │
00:10:47 #23311 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:47 #23312 [verbose] > │ let v368 : US3 = null |> unbox<US3> │
00:10:47 #23313 [verbose] > │ v368 │
00:10:47 #23314 [verbose] > │ #endif │
00:10:47 #23315 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:47 #23316 [verbose] > │ let v369 : US3 = null |> unbox<US3> │
00:10:47 #23317 [verbose] > │ v369 │
00:10:47 #23318 [verbose] > │ #endif │
00:10:47 #23319 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:47 #23320 [verbose] > │ let v370 : US3 = null |> unbox<US3> │
00:10:47 #23321 [verbose] > │ v370 │
00:10:47 #23322 [verbose] > │ #endif │
00:10:47 #23323 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:47 #23324 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:47 #23325 [verbose] > │ let v371 : (Async<US3> -> US3) = Async.RunSynchronously │
00:10:47 #23326 [verbose] > │ let v372 : US3 = v371 v366 │
00:10:47 #23327 [verbose] > │ v372 │
00:10:47 #23328 [verbose] > │ #endif │
00:10:47 #23329 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:47 #23330 [verbose] > │ let v373 : US3 = null |> unbox<US3> │
00:10:47 #23331 [verbose] > │ v373 │
00:10:47 #23332 [verbose] > │ #endif │
00:10:47 #23333 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:47 #23334 [verbose] > │ Unchecked.defaultof<US3> │
00:10:47 #23335 [verbose] > │ #endif │
00:10:47 #23336 [verbose] > │ |> fun x -> _v367 <- Some x │
00:10:47 #23337 [verbose] > │ let v374 : US3 = _v367.Value │
00:10:47 #23338 [verbose] > │ let v406 : bool = │
00:10:47 #23339 [verbose] > │ match v374 with │
00:10:47 #23340 [verbose] > │ | US3_0(v375, v376) -> (* Some *) │
00:10:47 #23341 [verbose] > │ let v377 : System.Runtime.InteropServices.OSPlatform = │
00:10:47 #23342 [verbose] > │ System.Runtime.InteropServices.OSPlatform.Windows │
00:10:47 #23343 [verbose] > │ let v378 : (System.Runtime.InteropServices.OSPlatform -> bool) = │
00:10:47 #23344 [verbose] > │ System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform │
00:10:47 #23345 [verbose] > │ let v379 : bool = v378 v377 │
00:10:47 #23346 [verbose] > │ let v380 : int64 = │
00:10:47 #23347 [verbose] > │ if v379 then │
00:10:47 #23348 [verbose] > │ 50L │
00:10:47 #23349 [verbose] > │ else │
00:10:47 #23350 [verbose] > │ 100L │
00:10:47 #23351 [verbose] > │ let v381 : System.Runtime.InteropServices.OSPlatform = │
00:10:47 #23352 [verbose] > │ System.Runtime.InteropServices.OSPlatform.Windows │
00:10:47 #23353 [verbose] > │ let v382 : (System.Runtime.InteropServices.OSPlatform -> bool) = │
00:10:47 #23354 [verbose] > │ System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform │
00:10:47 #23355 [verbose] > │ let v383 : bool = v382 v381 │
00:10:47 #23356 [verbose] > │ let v384 : int64 = │
00:10:47 #23357 [verbose] > │ if v383 then │
00:10:47 #23358 [verbose] > │ 150L │
00:10:47 #23359 [verbose] > │ else │
00:10:47 #23360 [verbose] > │ 200L │
00:10:47 #23361 [verbose] > │ let v385 : string = $"%A{v375}" │
00:10:47 #23362 [verbose] > │ System.Console.WriteLine v385 │
00:10:48 #23363 [verbose] > │ let v386 : string = $"%A{v375}" │
00:10:48 #23364 [verbose] > │ System.Console.WriteLine v386 │
00:10:48 #23365 [verbose] > │ let v387 : bool = v375 >= v380 │
00:10:48 #23366 [verbose] > │ let v389 : bool = │
00:10:48 #23367 [verbose] > │ if v387 then │
00:10:48 #23368 [verbose] > │ true │
00:10:48 #23369 [verbose] > │ else │
00:10:48 #23370 [verbose] > │ method12(v387) │
00:10:48 #23371 [verbose] > │ let v390 : string = $"__expect / actual: %A{v375} / expected: │
00:10:48 #23372 [verbose] > │ %A{v380}" │
00:10:48 #23373 [verbose] > │ let v391 : bool = v389 = false │
00:10:48 #23374 [verbose] > │ if v391 then │
00:10:48 #23375 [verbose] > │ failwith<unit> v390 │
00:10:48 #23376 [verbose] > │ let v392 : string = $"%A{v375}" │
00:10:48 #23377 [verbose] > │ System.Console.WriteLine v392 │
00:10:48 #23378 [verbose] > │ let v393 : bool = v375 <= v384 │
00:10:48 #23379 [verbose] > │ let v395 : bool = │
00:10:48 #23380 [verbose] > │ if v393 then │
00:10:48 #23381 [verbose] > │ true │
00:10:48 #23382 [verbose] > │ else │
00:10:48 #23383 [verbose] > │ method12(v393) │
00:10:48 #23384 [verbose] > │ let v396 : string = $"__expect / actual: %A{v375} / expected: │
00:10:48 #23385 [verbose] > │ %A{v384}" │
00:10:48 #23386 [verbose] > │ let v397 : bool = v395 = false │
00:10:48 #23387 [verbose] > │ if v397 then │
00:10:48 #23388 [verbose] > │ failwith<unit> v396 │
00:10:48 #23389 [verbose] > │ let v398 : string = $"__expect / actual: %A{v375} / expected: │
00:10:48 #23390 [verbose] > │ %A{struct (v380, v384)}" │
00:10:48 #23391 [verbose] > │ let v399 : string = method13() │
00:10:48 #23392 [verbose] > │ let v400 : string = $"%A{v376}" │
00:10:48 #23393 [verbose] > │ System.Console.WriteLine v400 │
00:10:48 #23394 [verbose] > │ let v401 : bool = v376 = v399 │
00:10:48 #23395 [verbose] > │ let v403 : bool = │
00:10:48 #23396 [verbose] > │ if v401 then │
00:10:48 #23397 [verbose] > │ true │
00:10:48 #23398 [verbose] > │ else │
00:10:48 #23399 [verbose] > │ method12(v401) │
00:10:48 #23400 [verbose] > │ let v404 : string = $"__expect / actual: %A{v376} / expected: │
00:10:48 #23401 [verbose] > │ %A{v399}" │
00:10:48 #23402 [verbose] > │ let v405 : bool = v403 = false │
00:10:48 #23403 [verbose] > │ if v405 then │
00:10:48 #23404 [verbose] > │ failwith<unit> v404 │
00:10:48 #23405 [verbose] > │ true │
00:10:48 #23406 [verbose] > │ | _ -> │
00:10:48 #23407 [verbose] > │ false │
00:10:48 #23408 [verbose] > │ let v407 : string = $"%A{v406}" │
00:10:48 #23409 [verbose] > │ System.Console.WriteLine v407 │
00:10:48 #23410 [verbose] > │ let v409 : bool = │
00:10:48 #23411 [verbose] > │ if v406 then │
00:10:48 #23412 [verbose] > │ true │
00:10:48 #23413 [verbose] > │ else │
00:10:48 #23414 [verbose] > │ method12(v406) │
00:10:48 #23415 [verbose] > │ let v410 : string = $"__expect / actual: %A{v406} / expected: %A{true}" │
00:10:48 #23416 [verbose] > │ let v411 : bool = v409 = false │
00:10:48 #23417 [verbose] > │ if v411 then │
00:10:48 #23418 [verbose] > │ failwith<unit> v410 │
00:10:48 #23419 [verbose] > │ method0() │
00:10:48 #23420 [verbose] > │ │
00:10:48 #23421 [verbose] > │ 00:00:00 #1 [debug] 1 │
00:10:48 #23422 [verbose] > │ 00:00:00 #2 [debug] 2 │
00:10:48 #23423 [verbose] > │ 00:00:00 #3 [debug] 3 │
00:10:48 #23424 [verbose] > │ 00:00:00 #4 [debug] _1 │
00:10:48 #23425 [verbose] > │ 00:00:00 #5 [debug] _2 │
00:10:48 #23426 [verbose] > │ 00:00:00 #6 [debug] 4 │
00:10:48 #23427 [verbose] > │ wait_for_file_access / path: test.txt / retry: 100 / ex: │
00:10:48 #23428 [verbose] > │ System.IO.IOException: The process cannot access the file │
00:10:48 #23429 [verbose] > │ 'C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20240410-1914-4446-4691-42cc │
00:10:48 #23430 [verbose] > │ 396f6f52\test.txt' because it is being used by another process. / │
00:10:48 #23431 [verbose] > │ 00:00:02 #7 [debug] _3 │
00:10:48 #23432 [verbose] > │ 00:00:02 #8 [debug] _4 │
00:10:48 #23433 [verbose] > │ 00:00:02 #9 [debug] _5 │
00:10:48 #23434 [verbose] > │ 00:00:02 #10 [debug] _6 │
00:10:48 #23435 [verbose] > │ 00:00:02 #11 [debug] 5 │
00:10:48 #23436 [verbose] > │ 00:00:02 #12 [debug] 6 │
00:10:48 #23437 [verbose] > │ 00:00:02 #13 [debug] 7 │
00:10:48 #23438 [verbose] > │ 128L │
00:10:48 #23439 [verbose] > │ 128L │
00:10:48 #23440 [verbose] > │ 128L │
00:10:48 #23441 [verbose] > │ "1" │
00:10:48 #23442 [verbose] > │ true │
00:10:48 #23443 [verbose] > │ │
00:10:48 #23444 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:48 #23445 [verbose] >
00:10:48 #23446 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:48 #23447 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:48 #23448 [verbose] > │ ## read_all_text_retry_async │
00:10:48 #23449 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:48 #23450 [verbose] >
00:10:48 #23451 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:48 #23452 [verbose] > inl read_all_text_retry_async full_path : async.async (optionm'.option' string)
00:10:48 #23453 [verbose] > =
00:10:48 #23454 [verbose] > run_target function
00:10:48 #23455 [verbose] > | Fsharp (Native) => fun () =>
00:10:48 #23456 [verbose] > let rec loop (retry : i64) =
00:10:48 #23457 [verbose] > fun () =>
00:10:48 #23458 [verbose] > try_unit
00:10:48 #23459 [verbose] > fun () =>
00:10:48 #23460 [verbose] > if retry > 0
00:10:48 #23461 [verbose] > then
00:10:48 #23462 [verbose] > full_path
00:10:48 #23463 [verbose] > |> wait_for_file_access_read
00:10:48 #23464 [verbose] > |> async.run_with_timeout_async 1000
00:10:48 #23465 [verbose] > |> async.ignore
00:10:48 #23466 [verbose] > |> async.do
00:10:48 #23467 [verbose] > full_path |> read_all_text_async |> async.map (Some
00:10:48 #23468 [verbose] > >> optionm'.box) |> async.return_await
00:10:48 #23469 [verbose] > fun ex =>
00:10:48 #23470 [verbose] > if retry <> 0 then
00:10:48 #23471 [verbose] > inl ex = ex |> sm'.format_exception
00:10:48 #23472 [verbose] > let get_locals () = $'$"retry: {!retry} / ex:
00:10:48 #23473 [verbose] > {!ex} / {!get_locals ()}"' : string
00:10:48 #23474 [verbose] > trace Debug (fun () =>
00:10:48 #23475 [verbose] > $'"read_all_text_retry_async"' : string) get_locals
00:10:48 #23476 [verbose] > (None : _ string) |> optionm'.box |> return |>
00:10:48 #23477 [verbose] > fun x => $'(*' : ()
00:10:48 #23478 [verbose] > else
00:10:48 #23479 [verbose] > $'*) else' : ()
00:10:48 #23480 [verbose] > loop (retry + 1) |> async.return_await |> fun x
00:10:48 #23481 [verbose] > => $'(*' : ()
00:10:48 #23482 [verbose] > |> fun x => $'*)' : ()
00:10:48 #23483 [verbose] > |> async.new_async
00:10:48 #23484 [verbose] > loop 0
00:10:48 #23485 [verbose] > | _ => fun () => null ()
00:10:48 #23486 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c97661bb7d90b7dbbda98e7929544298fb87bdcc826f31239eae7604cdd5adc8\main.spi
00:10:48 #23487 [verbose] >
00:10:48 #23488 [verbose] > ╭─[ 229.84ms - stdout ]────────────────────────────────────────────────────────╮
00:10:48 #23489 [verbose] > │ () │
00:10:48 #23490 [verbose] > │ │
00:10:48 #23491 [verbose] > │ │
00:10:48 #23492 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:48 #23493 [verbose] >
00:10:48 #23494 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:48 #23495 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:48 #23496 [verbose] > │ ## delete_file_async │
00:10:48 #23497 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:48 #23498 [verbose] >
00:10:48 #23499 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:48 #23500 [verbose] > inl delete_file_async path : _ i64 =
00:10:48 #23501 [verbose] > run_target function
00:10:48 #23502 [verbose] > | Fsharp (Native) => fun () =>
00:10:48 #23503 [verbose] > let rec loop (retry : i64) =
00:10:48 #23504 [verbose] > fun () =>
00:10:48 #23505 [verbose] > try_unit
00:10:48 #23506 [verbose] > fun () =>
00:10:48 #23507 [verbose] > path |> file_delete
00:10:48 #23508 [verbose] > return retry
00:10:48 #23509 [verbose] > fun ex =>
00:10:48 #23510 [verbose] > if retry % 100 = 0 then
00:10:48 #23511 [verbose] > inl ex = ex |> sm'.format_exception
00:10:48 #23512 [verbose] > let getLocals () = $'$"path: {!path |>
00:10:48 #23513 [verbose] > !get_file_name} / ex: {ex} / {!get_locals ()}"'
00:10:48 #23514 [verbose] > trace Warning (fun () => "delete_file_async")
00:10:48 #23515 [verbose] > get_locals
00:10:48 #23516 [verbose] > async.sleep 10 |> async.do
00:10:48 #23517 [verbose] > loop (retry + 1) |> async.return_await
00:10:48 #23518 [verbose] > |> async.new_async
00:10:48 #23519 [verbose] > loop 0
00:10:48 #23520 [verbose] > | _ => fun () => null ()
00:10:48 #23521 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\40effd6e0722d56acb791466fe9accefae10cbb3539b394232a15956a3d18e17\main.spi
00:10:48 #23522 [verbose] >
00:10:48 #23523 [verbose] > ╭─[ 281.49ms - stdout ]────────────────────────────────────────────────────────╮
00:10:48 #23524 [verbose] > │ () │
00:10:48 #23525 [verbose] > │ │
00:10:48 #23526 [verbose] > │ │
00:10:48 #23527 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:48 #23528 [verbose] >
00:10:48 #23529 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:48 #23530 [verbose] > // // test
00:10:48 #23531 [verbose] >
00:10:48 #23532 [verbose] > inl lock_file path =
00:10:48 #23533 [verbose] > fun () =>
00:10:48 #23534 [verbose] > trace Debug (fun () => "_1") get_locals
00:10:48 #23535 [verbose] > file_stream
00:10:48 #23536 [verbose] > path
00:10:48 #23537 [verbose] > ModeOpen
00:10:48 #23538 [verbose] > AccessReadWrite
00:10:48 #23539 [verbose] > ShareNone
00:10:48 #23540 [verbose] > |> use
00:10:48 #23541 [verbose] > |> ignore
00:10:48 #23542 [verbose] > trace Debug (fun () => "_2") get_locals
00:10:48 #23543 [verbose] > async.sleep 2000 |> async.do
00:10:48 #23544 [verbose] > trace Debug (fun () => "_3") get_locals
00:10:48 #23545 [verbose] > |> async.new_async
00:10:48 #23546 [verbose] >
00:10:48 #23547 [verbose] > inl temp_dir, disposable = create_temp_directory ()
00:10:48 #23548 [verbose] > disposable |> use |> ignore
00:10:48 #23549 [verbose] > inl path = temp_dir </> "test.txt"
00:10:48 #23550 [verbose] >
00:10:48 #23551 [verbose] > fun () =>
00:10:48 #23552 [verbose] > trace Debug (fun () => "1") get_locals
00:10:48 #23553 [verbose] > "0" |> write_all_text_async path |> async.do
00:10:48 #23554 [verbose] > trace Debug (fun () => "2") get_locals
00:10:48 #23555 [verbose] > inl child = lock_file path |> async.start_child |> async.let'
00:10:48 #23556 [verbose] > trace Debug (fun () => "3") get_locals
00:10:48 #23557 [verbose] > async.sleep 1 |> async.do
00:10:48 #23558 [verbose] > trace Debug (fun () => "4") get_locals
00:10:48 #23559 [verbose] > inl retries = delete_file_async path |> async.let'
00:10:48 #23560 [verbose] > trace Debug (fun () => "5") get_locals
00:10:48 #23561 [verbose] > child |> async.do
00:10:48 #23562 [verbose] > trace Debug (fun () => "6") get_locals
00:10:48 #23563 [verbose] > return retries
00:10:48 #23564 [verbose] > |> async.new_async_unit
00:10:48 #23565 [verbose] > |> async.run_with_timeout 3000
00:10:48 #23566 [verbose] > |> function
00:10:48 #23567 [verbose] > | Some (retries : i64) =>
00:10:48 #23568 [verbose] > retries
00:10:48 #23569 [verbose] > |> _assert_between
00:10:48 #23570 [verbose] > (if runtime.is_windows () then 50 else 0)
00:10:48 #23571 [verbose] > (if runtime.is_windows () then 150 else 0)
00:10:48 #23572 [verbose] >
00:10:48 #23573 [verbose] > true
00:10:48 #23574 [verbose] > | _ => false
00:10:48 #23575 [verbose] > |> _assert_eq true
00:10:48 #23576 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d63f45ae5de73af5d014b82ee9bcae4876c9f6019823c78408423f1586c074dc\main.spi
00:10:51 #23577 [verbose] >
00:10:51 #23578 [verbose] > ╭─[ 3.07s - stdout ]───────────────────────────────────────────────────────────╮
00:10:51 #23579 [verbose] > │ type IPathJoin = abstract join: [<System.ParamArray>] paths: string[] -> │
00:10:51 #23580 [verbose] > │ string │
00:10:51 #23581 [verbose] > │ module State = let mutable trace_state = None │
00:10:51 #23582 [verbose] > │ type [<Struct>] US0 = │
00:10:51 #23583 [verbose] > │ | US0_0 │
00:10:51 #23584 [verbose] > │ | US0_1 │
00:10:51 #23585 [verbose] > │ | US0_2 │
00:10:51 #23586 [verbose] > │ | US0_3 │
00:10:51 #23587 [verbose] > │ | US0_4 │
00:10:51 #23588 [verbose] > │ and Mut0 = {mutable l0 : int64} │
00:10:51 #23589 [verbose] > │ and Mut1 = {mutable l0 : bool} │
00:10:51 #23590 [verbose] > │ and Mut2 = {mutable l0 : US0} │
00:10:51 #23591 [verbose] > │ and [<Struct>] US1 = │
00:10:51 #23592 [verbose] > │ | US1_0 of f0_0 : int64 │
00:10:51 #23593 [verbose] > │ | US1_1 │
00:10:51 #23594 [verbose] > │ and [<Struct>] US2 = │
00:10:51 #23595 [verbose] > │ | US2_0 of f0_0 : int64 │
00:10:51 #23596 [verbose] > │ | US2_1 │
00:10:51 #23597 [verbose] > │ and [<Struct>] US3 = │
00:10:51 #23598 [verbose] > │ | US3_0 of f0_0 : int64 │
00:10:51 #23599 [verbose] > │ | US3_1 of f1_0 : exn │
00:10:51 #23600 [verbose] > │ and [<Struct>] US4 = │
00:10:51 #23601 [verbose] > │ | US4_0 of f0_0 : int64 │
00:10:51 #23602 [verbose] > │ | US4_1 of f1_0 : exn │
00:10:51 #23603 [verbose] > │ let rec closure0 () () : string = │
00:10:51 #23604 [verbose] > │ let v0 : string option = None │
00:10:51 #23605 [verbose] > │ let mutable _v0 = v0 │
00:10:51 #23606 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:51 #23607 [verbose] > │ let v1 : string = null |> unbox<string> │
00:10:51 #23608 [verbose] > │ v1 │
00:10:51 #23609 [verbose] > │ #endif │
00:10:51 #23610 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:51 #23611 [verbose] > │ let v2 : string = null |> unbox<string> │
00:10:51 #23612 [verbose] > │ v2 │
00:10:51 #23613 [verbose] > │ #endif │
00:10:51 #23614 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:51 #23615 [verbose] > │ let v3 : string = null |> unbox<string> │
00:10:51 #23616 [verbose] > │ v3 │
00:10:51 #23617 [verbose] > │ #endif │
00:10:51 #23618 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:51 #23619 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:51 #23620 [verbose] > │ let v4 : string = │
00:10:51 #23621 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:10:51 #23622 [verbose] > │ v4 │
00:10:51 #23623 [verbose] > │ #endif │
00:10:51 #23624 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:51 #23625 [verbose] > │ let v5 : string = null |> unbox<string> │
00:10:51 #23626 [verbose] > │ v5 │
00:10:51 #23627 [verbose] > │ #endif │
00:10:51 #23628 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:51 #23629 [verbose] > │ Unchecked.defaultof<string> │
00:10:51 #23630 [verbose] > │ #endif │
00:10:51 #23631 [verbose] > │ |> fun x -> _v0 <- Some x │
00:10:51 #23632 [verbose] > │ let v6 : string = _v0.Value │
00:10:51 #23633 [verbose] > │ v6 │
00:10:51 #23634 [verbose] > │ and method1 (v0 : string) : string = │
00:10:51 #23635 [verbose] > │ v0 │
00:10:51 #23636 [verbose] > │ and closure2 () () : string = │
00:10:51 #23637 [verbose] > │ let v0 : string = "" │
00:10:51 #23638 [verbose] > │ v0 │
00:10:51 #23639 [verbose] > │ and closure1 (v0 : string, v1 : string) () : string = │
00:10:51 #23640 [verbose] > │ let v2 : (unit -> string) = closure2() │
00:10:51 #23641 [verbose] > │ let v3 : string = $"temp_folder: {v0} / result: {v1} {v2 ()}" │
00:10:51 #23642 [verbose] > │ v3 │
00:10:51 #23643 [verbose] > │ and closure5 () (v0 : string) : string = │
00:10:51 #23644 [verbose] > │ let v1 : string option = None │
00:10:51 #23645 [verbose] > │ let mutable _v1 = v1 │
00:10:51 #23646 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:51 #23647 [verbose] > │ let v2 : string = null |> unbox<string> │
00:10:51 #23648 [verbose] > │ v2 │
00:10:51 #23649 [verbose] > │ #endif │
00:10:51 #23650 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:51 #23651 [verbose] > │ let v3 : string = null |> unbox<string> │
00:10:51 #23652 [verbose] > │ v3 │
00:10:51 #23653 [verbose] > │ #endif │
00:10:51 #23654 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:51 #23655 [verbose] > │ let v4 : string = null |> unbox<string> │
00:10:51 #23656 [verbose] > │ v4 │
00:10:51 #23657 [verbose] > │ #endif │
00:10:51 #23658 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:51 #23659 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:51 #23660 [verbose] > │ let v5 : (string -> string) = System.IO.Path.GetFileName │
00:10:51 #23661 [verbose] > │ let v6 : string = v5 v0 │
00:10:51 #23662 [verbose] > │ v6 │
00:10:51 #23663 [verbose] > │ #endif │
00:10:51 #23664 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:51 #23665 [verbose] > │ let v7 : string = null |> unbox<string> │
00:10:51 #23666 [verbose] > │ v7 │
00:10:51 #23667 [verbose] > │ #endif │
00:10:51 #23668 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:51 #23669 [verbose] > │ Unchecked.defaultof<string> │
00:10:51 #23670 [verbose] > │ #endif │
00:10:51 #23671 [verbose] > │ |> fun x -> _v1 <- Some x │
00:10:51 #23672 [verbose] > │ let v8 : string = _v1.Value │
00:10:51 #23673 [verbose] > │ v8 │
00:10:51 #23674 [verbose] > │ and method3 (v0 : string, v1 : string) : string = │
00:10:51 #23675 [verbose] > │ let v2 : (string -> string) = closure5() │
00:10:51 #23676 [verbose] > │ let v3 : (unit -> string) = closure2() │
00:10:51 #23677 [verbose] > │ let v4 : string = $"path: {v0 |> v2} / ex: {v1} / {v3 ()}" │
00:10:51 #23678 [verbose] > │ v4 │
00:10:51 #23679 [verbose] > │ and closure4 (v0 : string, v1 : string) () : string = │
00:10:51 #23680 [verbose] > │ method3(v0, v1) │
00:10:51 #23681 [verbose] > │ and method2 (v0 : string, v1 : int64) : Async<int64> = │
00:10:51 #23682 [verbose] > │ let v2 : Async<int64> option = None │
00:10:51 #23683 [verbose] > │ let mutable _v2 = v2 │
00:10:51 #23684 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:51 #23685 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:51 #23686 [verbose] > │ v3 │
00:10:51 #23687 [verbose] > │ #endif │
00:10:51 #23688 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:51 #23689 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:51 #23690 [verbose] > │ v4 │
00:10:51 #23691 [verbose] > │ #endif │
00:10:51 #23692 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:51 #23693 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:10:51 #23694 [verbose] > │ v5 │
00:10:51 #23695 [verbose] > │ #endif │
00:10:51 #23696 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:51 #23697 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:51 #23698 [verbose] > │ let v6 : Async<int64> option = None │
00:10:51 #23699 [verbose] > │ let mutable _v6 = v6 │
00:10:51 #23700 [verbose] > │ async { │
00:10:51 #23701 [verbose] > │ try │
00:10:51 #23702 [verbose] > │ let v7 : unit option = None │
00:10:51 #23703 [verbose] > │ let mutable _v7 = v7 │
00:10:51 #23704 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:51 #23705 [verbose] > │ null |> unbox<unit> │
00:10:51 #23706 [verbose] > │ () │
00:10:51 #23707 [verbose] > │ #endif │
00:10:51 #23708 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:51 #23709 [verbose] > │ null |> unbox<unit> │
00:10:51 #23710 [verbose] > │ () │
00:10:51 #23711 [verbose] > │ #endif │
00:10:51 #23712 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:51 #23713 [verbose] > │ null |> unbox<unit> │
00:10:51 #23714 [verbose] > │ () │
00:10:51 #23715 [verbose] > │ #endif │
00:10:51 #23716 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:51 #23717 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:51 #23718 [verbose] > │ System.IO.Directory.Delete (v0, true) │
00:10:51 #23719 [verbose] > │ () │
00:10:51 #23720 [verbose] > │ #endif │
00:10:51 #23721 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:51 #23722 [verbose] > │ null |> unbox<unit> │
00:10:51 #23723 [verbose] > │ () │
00:10:51 #23724 [verbose] > │ #endif │
00:10:51 #23725 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:51 #23726 [verbose] > │ Unchecked.defaultof<unit> │
00:10:51 #23727 [verbose] > │ #endif │
00:10:51 #23728 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:51 #23729 [verbose] > │ _v7.Value │
00:10:51 #23730 [verbose] > │ return v1 │
00:10:51 #23731 [verbose] > │ with ex -> │
00:10:51 #23732 [verbose] > │ let v8 : exn = ex │
00:10:51 #23733 [verbose] > │ let v9 : int64 = v1 % 100L │
00:10:51 #23734 [verbose] > │ let v10 : bool = v9 = 0L │
00:10:51 #23735 [verbose] > │ if v10 then │
00:10:51 #23736 [verbose] > │ let v11 : string option = None │
00:10:51 #23737 [verbose] > │ let mutable _v11 = v11 │
00:10:51 #23738 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:51 #23739 [verbose] > │ let v12 : string = $"%A{v8}" │
00:10:51 #23740 [verbose] > │ v12 │
00:10:51 #23741 [verbose] > │ #endif │
00:10:51 #23742 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:51 #23743 [verbose] > │ let v13 : string = $"%A{v8}" │
00:10:51 #23744 [verbose] > │ v13 │
00:10:51 #23745 [verbose] > │ #endif │
00:10:51 #23746 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:51 #23747 [verbose] > │ let v14 : string = $"%A{v8}" │
00:10:51 #23748 [verbose] > │ v14 │
00:10:51 #23749 [verbose] > │ #endif │
00:10:51 #23750 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:51 #23751 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:51 #23752 [verbose] > │ let v15 : string = $"{v8.GetType ()}: {v8.Message}" │
00:10:51 #23753 [verbose] > │ v15 │
00:10:51 #23754 [verbose] > │ #endif │
00:10:51 #23755 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:51 #23756 [verbose] > │ let v16 : string = $"%A{v8}" │
00:10:51 #23757 [verbose] > │ v16 │
00:10:51 #23758 [verbose] > │ #endif │
00:10:51 #23759 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:51 #23760 [verbose] > │ FABLE_COMPILER_DART │
00:10:51 #23761 [verbose] > │ Unchecked.defaultof<string> │
00:10:51 #23762 [verbose] > │ #endif │
00:10:51 #23763 [verbose] > │ |> fun x -> _v11 <- Some x │
00:10:51 #23764 [verbose] > │ let v17 : string = _v11.Value │
00:10:51 #23765 [verbose] > │ let v18 : (unit -> string) = closure4(v0, v17) │
00:10:51 #23766 [verbose] > │ let v19 : string = $"delete_directory_async / {v18 ()}" │
00:10:51 #23767 [verbose] > │ System.Console.WriteLine v19 │
00:10:51 #23768 [verbose] > │ () │
00:10:51 #23769 [verbose] > │ let v20 : Async<unit> option = None │
00:10:51 #23770 [verbose] > │ let mutable _v20 = v20 │
00:10:51 #23771 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:51 #23772 [verbose] > │ let v21 : Async<unit> = null |> unbox<Async<unit>> │
00:10:51 #23773 [verbose] > │ v21 │
00:10:51 #23774 [verbose] > │ #endif │
00:10:51 #23775 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:51 #23776 [verbose] > │ let v22 : Async<unit> = null |> unbox<Async<unit>> │
00:10:51 #23777 [verbose] > │ v22 │
00:10:51 #23778 [verbose] > │ #endif │
00:10:51 #23779 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:51 #23780 [verbose] > │ let v23 : Async<unit> = null |> unbox<Async<unit>> │
00:10:51 #23781 [verbose] > │ v23 │
00:10:51 #23782 [verbose] > │ #endif │
00:10:51 #23783 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:51 #23784 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:51 #23785 [verbose] > │ let v24 : (int32 -> Async<unit>) = Async.Sleep │
00:10:51 #23786 [verbose] > │ let v25 : Async<unit> = v24 10 │
00:10:51 #23787 [verbose] > │ v25 │
00:10:51 #23788 [verbose] > │ #endif │
00:10:51 #23789 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:51 #23790 [verbose] > │ let v26 : Async<unit> = null |> unbox<Async<unit>> │
00:10:51 #23791 [verbose] > │ v26 │
00:10:51 #23792 [verbose] > │ #endif │
00:10:51 #23793 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:51 #23794 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:51 #23795 [verbose] > │ #endif │
00:10:51 #23796 [verbose] > │ |> fun x -> _v20 <- Some x │
00:10:51 #23797 [verbose] > │ let v27 : Async<unit> = _v20.Value │
00:10:51 #23798 [verbose] > │ do! v27 │
00:10:51 #23799 [verbose] > │ let v28 : int64 = v1 + 1L │
00:10:51 #23800 [verbose] > │ let v29 : Async<int64> = method2(v0, v28) │
00:10:51 #23801 [verbose] > │ return! v29 │
00:10:51 #23802 [verbose] > │ (* │
00:10:51 #23803 [verbose] > │ let v30 : int64 = *) │
00:10:51 #23804 [verbose] > │ } │
00:10:51 #23805 [verbose] > │ |> fun x -> _v6 <- Some x │
00:10:51 #23806 [verbose] > │ let v31 : Async<int64> = _v6 |> Option.get │
00:10:51 #23807 [verbose] > │ v31 │
00:10:51 #23808 [verbose] > │ #endif │
00:10:51 #23809 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:51 #23810 [verbose] > │ let v32 : Async<int64> = null |> unbox<Async<int64>> │
00:10:51 #23811 [verbose] > │ v32 │
00:10:51 #23812 [verbose] > │ #endif │
00:10:51 #23813 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:51 #23814 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:51 #23815 [verbose] > │ #endif │
00:10:51 #23816 [verbose] > │ |> fun x -> _v2 <- Some x │
00:10:51 #23817 [verbose] > │ let v33 : Async<int64> = _v2.Value │
00:10:51 #23818 [verbose] > │ v33 │
00:10:51 #23819 [verbose] > │ and closure3 (v0 : string) () : unit = │
00:10:51 #23820 [verbose] > │ let v1 : Async<int64> option = None │
00:10:51 #23821 [verbose] > │ let mutable _v1 = v1 │
00:10:51 #23822 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:51 #23823 [verbose] > │ let v2 : Async<int64> = null |> unbox<Async<int64>> │
00:10:51 #23824 [verbose] > │ v2 │
00:10:51 #23825 [verbose] > │ #endif │
00:10:51 #23826 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:51 #23827 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:51 #23828 [verbose] > │ v3 │
00:10:51 #23829 [verbose] > │ #endif │
00:10:51 #23830 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:51 #23831 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:51 #23832 [verbose] > │ v4 │
00:10:51 #23833 [verbose] > │ #endif │
00:10:51 #23834 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:51 #23835 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:51 #23836 [verbose] > │ let v5 : int64 = 0L │
00:10:51 #23837 [verbose] > │ let v6 : Async<int64> = method2(v0, v5) │
00:10:51 #23838 [verbose] > │ v6 │
00:10:51 #23839 [verbose] > │ #endif │
00:10:51 #23840 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:51 #23841 [verbose] > │ let v7 : Async<int64> = null |> unbox<Async<int64>> │
00:10:51 #23842 [verbose] > │ v7 │
00:10:51 #23843 [verbose] > │ #endif │
00:10:51 #23844 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:51 #23845 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:51 #23846 [verbose] > │ #endif │
00:10:51 #23847 [verbose] > │ |> fun x -> _v1 <- Some x │
00:10:51 #23848 [verbose] > │ let v8 : Async<int64> = _v1.Value │
00:10:51 #23849 [verbose] > │ let v9 : Async<unit> option = None │
00:10:51 #23850 [verbose] > │ let mutable _v9 = v9 │
00:10:51 #23851 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:51 #23852 [verbose] > │ let v10 : Async<unit> = null |> unbox<Async<unit>> │
00:10:51 #23853 [verbose] > │ v10 │
00:10:51 #23854 [verbose] > │ #endif │
00:10:51 #23855 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:51 #23856 [verbose] > │ let v11 : Async<unit> = null |> unbox<Async<unit>> │
00:10:51 #23857 [verbose] > │ v11 │
00:10:51 #23858 [verbose] > │ #endif │
00:10:51 #23859 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:51 #23860 [verbose] > │ let v12 : Async<unit> = null |> unbox<Async<unit>> │
00:10:51 #23861 [verbose] > │ v12 │
00:10:51 #23862 [verbose] > │ #endif │
00:10:51 #23863 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:51 #23864 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:51 #23865 [verbose] > │ let v13 : (Async<int64> -> Async<unit>) = Async.Ignore │
00:10:51 #23866 [verbose] > │ let v14 : Async<unit> = v13 v8 │
00:10:51 #23867 [verbose] > │ v14 │
00:10:51 #23868 [verbose] > │ #endif │
00:10:51 #23869 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:51 #23870 [verbose] > │ let v15 : Async<unit> = null |> unbox<Async<unit>> │
00:10:51 #23871 [verbose] > │ v15 │
00:10:51 #23872 [verbose] > │ #endif │
00:10:51 #23873 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:51 #23874 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:51 #23875 [verbose] > │ #endif │
00:10:51 #23876 [verbose] > │ |> fun x -> _v9 <- Some x │
00:10:51 #23877 [verbose] > │ let v16 : Async<unit> = _v9.Value │
00:10:51 #23878 [verbose] > │ let v17 : unit option = None │
00:10:51 #23879 [verbose] > │ let mutable _v17 = v17 │
00:10:51 #23880 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:51 #23881 [verbose] > │ null |> unbox<unit> │
00:10:51 #23882 [verbose] > │ () │
00:10:51 #23883 [verbose] > │ #endif │
00:10:51 #23884 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:51 #23885 [verbose] > │ null |> unbox<unit> │
00:10:51 #23886 [verbose] > │ () │
00:10:51 #23887 [verbose] > │ #endif │
00:10:51 #23888 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:51 #23889 [verbose] > │ null |> unbox<unit> │
00:10:51 #23890 [verbose] > │ () │
00:10:51 #23891 [verbose] > │ #endif │
00:10:51 #23892 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:51 #23893 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:51 #23894 [verbose] > │ let v18 : (Async<unit> -> unit) = Async.RunSynchronously │
00:10:51 #23895 [verbose] > │ v18 v16 │
00:10:51 #23896 [verbose] > │ () │
00:10:51 #23897 [verbose] > │ #endif │
00:10:51 #23898 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:51 #23899 [verbose] > │ null |> unbox<unit> │
00:10:51 #23900 [verbose] > │ () │
00:10:51 #23901 [verbose] > │ #endif │
00:10:51 #23902 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:51 #23903 [verbose] > │ Unchecked.defaultof<unit> │
00:10:51 #23904 [verbose] > │ #endif │
00:10:51 #23905 [verbose] > │ |> fun x -> _v17 <- Some x │
00:10:51 #23906 [verbose] > │ _v17.Value │
00:10:51 #23907 [verbose] > │ () │
00:10:51 #23908 [verbose] > │ and method4 () : string = │
00:10:51 #23909 [verbose] > │ let v0 : string = "test.txt" │
00:10:51 #23910 [verbose] > │ v0 │
00:10:51 #23911 [verbose] > │ and closure6 () () : string = │
00:10:51 #23912 [verbose] > │ let v0 : string = "1" │
00:10:51 #23913 [verbose] > │ v0 │
00:10:51 #23914 [verbose] > │ and method6 (v0 : int64 option) : int64 option = │
00:10:51 #23915 [verbose] > │ v0 │
00:10:51 #23916 [verbose] > │ and method7 (v0 : int64 option) : int64 option = │
00:10:51 #23917 [verbose] > │ v0 │
00:10:51 #23918 [verbose] > │ and closure7 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) = │
00:10:51 #23919 [verbose] > │ let v0 : Mut1 = {l0 = true} : Mut1 │
00:10:51 #23920 [verbose] > │ let v1 : Mut0 = {l0 = 0L} : Mut0 │
00:10:51 #23921 [verbose] > │ let v2 : US0 = US0_0 │
00:10:51 #23922 [verbose] > │ let v3 : Mut2 = {l0 = v2} : Mut2 │
00:10:51 #23923 [verbose] > │ let v4 : Mut1 = {l0 = false} : Mut1 │
00:10:51 #23924 [verbose] > │ let v5 : int64 option option = None │
00:10:51 #23925 [verbose] > │ let mutable _v5 = v5 │
00:10:51 #23926 [verbose] > │ #if INTERACTIVE || !FABLE_COMPILER │
00:10:51 #23927 [verbose] > │ let v6 : string option = None │
00:10:51 #23928 [verbose] > │ let mutable _v6 = v6 │
00:10:51 #23929 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:51 #23930 [verbose] > │ let v7 : string = null |> unbox<string> │
00:10:51 #23931 [verbose] > │ v7 │
00:10:51 #23932 [verbose] > │ #endif │
00:10:51 #23933 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:51 #23934 [verbose] > │ let v8 : string = null |> unbox<string> │
00:10:51 #23935 [verbose] > │ v8 │
00:10:51 #23936 [verbose] > │ #endif │
00:10:51 #23937 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:51 #23938 [verbose] > │ let v9 : string = null |> unbox<string> │
00:10:51 #23939 [verbose] > │ v9 │
00:10:51 #23940 [verbose] > │ #endif │
00:10:51 #23941 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:51 #23942 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:51 #23943 [verbose] > │ let v10 : string = │
00:10:51 #23944 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:10:51 #23945 [verbose] > │ v10 │
00:10:51 #23946 [verbose] > │ #endif │
00:10:51 #23947 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:51 #23948 [verbose] > │ let v11 : string = null |> unbox<string> │
00:10:51 #23949 [verbose] > │ v11 │
00:10:51 #23950 [verbose] > │ #endif │
00:10:51 #23951 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:51 #23952 [verbose] > │ Unchecked.defaultof<string> │
00:10:51 #23953 [verbose] > │ #endif │
00:10:51 #23954 [verbose] > │ |> fun x -> _v6 <- Some x │
00:10:51 #23955 [verbose] > │ let v12 : string = _v6.Value │
00:10:51 #23956 [verbose] > │ let v14 : bool = v12 = "Microsoft.DotNet.Interactive.App" │
00:10:51 #23957 [verbose] > │ let v15 : bool = v14 <> true │
00:10:51 #23958 [verbose] > │ let v21 : US1 = │
00:10:51 #23959 [verbose] > │ if v15 then │
00:10:51 #23960 [verbose] > │ let v16 : System.DateTime = System.DateTime.Now │
00:10:51 #23961 [verbose] > │ let v17 : (System.DateTime -> int64) = _.Ticks │
00:10:51 #23962 [verbose] > │ let v18 : int64 = v17 v16 │
00:10:51 #23963 [verbose] > │ US1_0(v18) │
00:10:51 #23964 [verbose] > │ else │
00:10:51 #23965 [verbose] > │ US1_1 │
00:10:51 #23966 [verbose] > │ let v26 : int64 option = │
00:10:51 #23967 [verbose] > │ match v21 with │
00:10:51 #23968 [verbose] > │ | US1_1 -> (* None *) │
00:10:51 #23969 [verbose] > │ let v24 : int64 option = None │
00:10:51 #23970 [verbose] > │ v24 │
00:10:51 #23971 [verbose] > │ | US1_0(v22) -> (* Some *) │
00:10:51 #23972 [verbose] > │ let v23 : int64 option = Some v22 │
00:10:51 #23973 [verbose] > │ v23 │
00:10:51 #23974 [verbose] > │ let v27 : int64 option = method6(v26) │
00:10:51 #23975 [verbose] > │ v27 │
00:10:51 #23976 [verbose] > │ #else │
00:10:51 #23977 [verbose] > │ let v28 : int64 option = None │
00:10:51 #23978 [verbose] > │ let v29 : int64 option = method7(v28) │
00:10:51 #23979 [verbose] > │ v29 │
00:10:51 #23980 [verbose] > │ #endif │
00:10:51 #23981 [verbose] > │ |> fun x -> _v5 <- Some x │
00:10:51 #23982 [verbose] > │ let v30 : int64 option = _v5.Value │
00:10:51 #23983 [verbose] > │ struct (v1, v4, v0, v3, v30) │
00:10:51 #23984 [verbose] > │ and closure9 () (v0 : int64) : US2 = │
00:10:51 #23985 [verbose] > │ US2_0(v0) │
00:10:51 #23986 [verbose] > │ and method8 () : (int64 -> US2) = │
00:10:51 #23987 [verbose] > │ closure9() │
00:10:51 #23988 [verbose] > │ and method9 () : string = │
00:10:51 #23989 [verbose] > │ let v0 : string = "" │
00:10:51 #23990 [verbose] > │ v0 │
00:10:51 #23991 [verbose] > │ and closure8 (v0 : US0, v1 : (unit -> string), v2 : (unit -> string)) () : │
00:10:51 #23992 [verbose] > │ string = │
00:10:51 #23993 [verbose] > │ let v3 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:10:51 #23994 [verbose] > │ closure7() │
00:10:51 #23995 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:10:51 #23996 [verbose] > │ let struct (v4 : Mut0, v5 : Mut1, v6 : Mut1, v7 : Mut2, v8 : int64 │
00:10:51 #23997 [verbose] > │ option) = State.trace_state.Value │
00:10:51 #23998 [verbose] > │ let v9 : string option = None │
00:10:51 #23999 [verbose] > │ let mutable _v9 = v9 │
00:10:51 #24000 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:51 #24001 [verbose] > │ let v10 : (int64 -> US2) = method8() │
00:10:51 #24002 [verbose] > │ let v11 : US2 = US2_1 │
00:10:51 #24003 [verbose] > │ let v12 : US2 = v8 |> Option.map v10 |> Option.defaultValue v11 │
00:10:51 #24004 [verbose] > │ let v30 : System.DateTime = │
00:10:51 #24005 [verbose] > │ match v12 with │
00:10:51 #24006 [verbose] > │ | US2_1 -> (* None *) │
00:10:51 #24007 [verbose] > │ let v28 : System.DateTime = System.DateTime.Now │
00:10:51 #24008 [verbose] > │ v28 │
00:10:51 #24009 [verbose] > │ | US2_0(v13) -> (* Some *) │
00:10:51 #24010 [verbose] > │ let v14 : System.DateTime = System.DateTime.Now │
00:10:51 #24011 [verbose] > │ let v15 : (System.DateTime -> int64) = _.Ticks │
00:10:51 #24012 [verbose] > │ let v16 : int64 = v15 v14 │
00:10:51 #24013 [verbose] > │ let v17 : int64 = v16 - v13 │
00:10:51 #24014 [verbose] > │ let v18 : System.TimeSpan = System.TimeSpan v17 │
00:10:51 #24015 [verbose] > │ let v19 : (System.TimeSpan -> int32) = _.Hours │
00:10:51 #24016 [verbose] > │ let v20 : int32 = v19 v18 │
00:10:51 #24017 [verbose] > │ let v21 : (System.TimeSpan -> int32) = _.Minutes │
00:10:51 #24018 [verbose] > │ let v22 : int32 = v21 v18 │
00:10:51 #24019 [verbose] > │ let v23 : (System.TimeSpan -> int32) = _.Seconds │
00:10:51 #24020 [verbose] > │ let v24 : int32 = v23 v18 │
00:10:51 #24021 [verbose] > │ let v25 : (System.TimeSpan -> int32) = _.Milliseconds │
00:10:51 #24022 [verbose] > │ let v26 : int32 = v25 v18 │
00:10:51 #24023 [verbose] > │ let v27 : System.DateTime = System.DateTime (1, 1, 1, v20, v22, │
00:10:51 #24024 [verbose] > │ v24, v26) │
00:10:51 #24025 [verbose] > │ v27 │
00:10:51 #24026 [verbose] > │ let v31 : string = "hh:mm:ss" │
00:10:51 #24027 [verbose] > │ let v32 : string = v30.ToString v31 │
00:10:51 #24028 [verbose] > │ v32 │
00:10:51 #24029 [verbose] > │ #endif │
00:10:51 #24030 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:51 #24031 [verbose] > │ let v33 : string = method9() │
00:10:51 #24032 [verbose] > │ v33 │
00:10:51 #24033 [verbose] > │ #endif │
00:10:51 #24034 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:51 #24035 [verbose] > │ let v34 : string = method9() │
00:10:51 #24036 [verbose] > │ v34 │
00:10:51 #24037 [verbose] > │ #endif │
00:10:51 #24038 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:51 #24039 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:51 #24040 [verbose] > │ let v35 : (int64 -> US2) = method8() │
00:10:51 #24041 [verbose] > │ let v36 : US2 = US2_1 │
00:10:51 #24042 [verbose] > │ let v37 : US2 = v8 |> Option.map v35 |> Option.defaultValue v36 │
00:10:51 #24043 [verbose] > │ let v55 : System.DateTime = │
00:10:51 #24044 [verbose] > │ match v37 with │
00:10:51 #24045 [verbose] > │ | US2_1 -> (* None *) │
00:10:51 #24046 [verbose] > │ let v53 : System.DateTime = System.DateTime.Now │
00:10:51 #24047 [verbose] > │ v53 │
00:10:51 #24048 [verbose] > │ | US2_0(v38) -> (* Some *) │
00:10:51 #24049 [verbose] > │ let v39 : System.DateTime = System.DateTime.Now │
00:10:51 #24050 [verbose] > │ let v40 : (System.DateTime -> int64) = _.Ticks │
00:10:51 #24051 [verbose] > │ let v41 : int64 = v40 v39 │
00:10:51 #24052 [verbose] > │ let v42 : int64 = v41 - v38 │
00:10:51 #24053 [verbose] > │ let v43 : System.TimeSpan = System.TimeSpan v42 │
00:10:51 #24054 [verbose] > │ let v44 : (System.TimeSpan -> int32) = _.Hours │
00:10:51 #24055 [verbose] > │ let v45 : int32 = v44 v43 │
00:10:51 #24056 [verbose] > │ let v46 : (System.TimeSpan -> int32) = _.Minutes │
00:10:51 #24057 [verbose] > │ let v47 : int32 = v46 v43 │
00:10:51 #24058 [verbose] > │ let v48 : (System.TimeSpan -> int32) = _.Seconds │
00:10:51 #24059 [verbose] > │ let v49 : int32 = v48 v43 │
00:10:51 #24060 [verbose] > │ let v50 : (System.TimeSpan -> int32) = _.Milliseconds │
00:10:51 #24061 [verbose] > │ let v51 : int32 = v50 v43 │
00:10:51 #24062 [verbose] > │ let v52 : System.DateTime = System.DateTime (1, 1, 1, v45, v47, │
00:10:51 #24063 [verbose] > │ v49, v51) │
00:10:51 #24064 [verbose] > │ v52 │
00:10:51 #24065 [verbose] > │ let v56 : string = "HH:mm:ss" │
00:10:51 #24066 [verbose] > │ let v57 : string = v55.ToString v56 │
00:10:51 #24067 [verbose] > │ v57 │
00:10:51 #24068 [verbose] > │ #endif │
00:10:51 #24069 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:51 #24070 [verbose] > │ let v58 : string = method9() │
00:10:51 #24071 [verbose] > │ v58 │
00:10:51 #24072 [verbose] > │ #endif │
00:10:51 #24073 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:51 #24074 [verbose] > │ Unchecked.defaultof<string> │
00:10:51 #24075 [verbose] > │ #endif │
00:10:51 #24076 [verbose] > │ |> fun x -> _v9 <- Some x │
00:10:51 #24077 [verbose] > │ let v59 : string = _v9.Value │
00:10:51 #24078 [verbose] > │ let v60 : int64 = v4.l0 │
00:10:51 #24079 [verbose] > │ let v70 : string = │
00:10:51 #24080 [verbose] > │ match v0 with │
00:10:51 #24081 [verbose] > │ | US0_4 -> (* Critical *) │
00:10:51 #24082 [verbose] > │ let v65 : string = "Critical" │
00:10:51 #24083 [verbose] > │ v65 │
00:10:51 #24084 [verbose] > │ | US0_1 -> (* Debug *) │
00:10:51 #24085 [verbose] > │ let v62 : string = "Debug" │
00:10:51 #24086 [verbose] > │ v62 │
00:10:51 #24087 [verbose] > │ | US0_2 -> (* Info *) │
00:10:51 #24088 [verbose] > │ let v63 : string = "Info" │
00:10:51 #24089 [verbose] > │ v63 │
00:10:51 #24090 [verbose] > │ | US0_0 -> (* Verbose *) │
00:10:51 #24091 [verbose] > │ let v61 : string = "Verbose" │
00:10:51 #24092 [verbose] > │ v61 │
00:10:51 #24093 [verbose] > │ | US0_3 -> (* Warning *) │
00:10:51 #24094 [verbose] > │ let v64 : string = "Warning" │
00:10:51 #24095 [verbose] > │ v64 │
00:10:51 #24096 [verbose] > │ let v71 : string = v70.ToLower () │
00:10:51 #24097 [verbose] > │ let v72 : string = $"{v59} #{v60} [{v71}] %s{v1 ()} / %s{v2 ()}" │
00:10:51 #24098 [verbose] > │ let v73 : (char []) = [||] │
00:10:51 #24099 [verbose] > │ let v74 : string = v72.TrimStart v73 │
00:10:51 #24100 [verbose] > │ let v75 : (char []) = [|' '; '/'|] │
00:10:51 #24101 [verbose] > │ let v76 : string = v74.TrimEnd v75 │
00:10:51 #24102 [verbose] > │ v76 │
00:10:52 #24103 [verbose] > │ and method5 (v0 : US0, v1 : (unit -> string), v2 : (unit -> string)) : unit │
00:10:52 #24104 [verbose] > │ = │
00:10:52 #24105 [verbose] > │ let v3 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:10:52 #24106 [verbose] > │ closure7() │
00:10:52 #24107 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:10:52 #24108 [verbose] > │ let struct (v4 : Mut0, v5 : Mut1, v6 : Mut1, v7 : Mut2, v8 : int64 │
00:10:52 #24109 [verbose] > │ option) = State.trace_state.Value │
00:10:52 #24110 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:10:52 #24111 [verbose] > │ let struct (v9 : Mut0, v10 : Mut1, v11 : Mut1, v12 : Mut2, v13 : int64 │
00:10:52 #24112 [verbose] > │ option) = State.trace_state.Value │
00:10:52 #24113 [verbose] > │ let v14 : US0 = v12.l0 │
00:10:52 #24114 [verbose] > │ let v15 : bool = v11.l0 │
00:10:52 #24115 [verbose] > │ let v17 : bool = │
00:10:52 #24116 [verbose] > │ if v15 then │
00:10:52 #24117 [verbose] > │ let v16 : bool = v0 >= v14 │
00:10:52 #24118 [verbose] > │ v16 │
00:10:52 #24119 [verbose] > │ else │
00:10:52 #24120 [verbose] > │ false │
00:10:52 #24121 [verbose] > │ if v17 then │
00:10:52 #24122 [verbose] > │ let v18 : int64 = v4.l0 │
00:10:52 #24123 [verbose] > │ let v19 : int64 = v18 + 1L │
00:10:52 #24124 [verbose] > │ v4.l0 <- v19 │
00:10:52 #24125 [verbose] > │ let v20 : (unit -> string) = closure8(v0, v1, v2) │
00:10:52 #24126 [verbose] > │ let v21 : string = $"%s{v20 ()}" │
00:10:52 #24127 [verbose] > │ let v22 : unit option = None │
00:10:52 #24128 [verbose] > │ let mutable _v22 = v22 │
00:10:52 #24129 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24130 [verbose] > │ let v23 : string = @"println!(""{}"", $0)" │
00:10:52 #24131 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v23 │
00:10:52 #24132 [verbose] > │ () │
00:10:52 #24133 [verbose] > │ #endif │
00:10:52 #24134 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24135 [verbose] > │ let v24 : string = @"println!(""{}"", $0)" │
00:10:52 #24136 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v24 │
00:10:52 #24137 [verbose] > │ () │
00:10:52 #24138 [verbose] > │ #endif │
00:10:52 #24139 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24140 [verbose] > │ let v25 : string = @"println!(""{}"", $0)" │
00:10:52 #24141 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v25 │
00:10:52 #24142 [verbose] > │ () │
00:10:52 #24143 [verbose] > │ #endif │
00:10:52 #24144 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24145 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24146 [verbose] > │ System.Console.WriteLine v21 │
00:10:52 #24147 [verbose] > │ () │
00:10:52 #24148 [verbose] > │ #endif │
00:10:52 #24149 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24150 [verbose] > │ System.Console.WriteLine v21 │
00:10:52 #24151 [verbose] > │ () │
00:10:52 #24152 [verbose] > │ #endif │
00:10:52 #24153 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:52 #24154 [verbose] > │ FABLE_COMPILER_DART │
00:10:52 #24155 [verbose] > │ Unchecked.defaultof<unit> │
00:10:52 #24156 [verbose] > │ #endif │
00:10:52 #24157 [verbose] > │ |> fun x -> _v22 <- Some x │
00:10:52 #24158 [verbose] > │ _v22.Value │
00:10:52 #24159 [verbose] > │ () │
00:10:52 #24160 [verbose] > │ and closure10 () () : string = │
00:10:52 #24161 [verbose] > │ let v0 : string = "2" │
00:10:52 #24162 [verbose] > │ v0 │
00:10:52 #24163 [verbose] > │ and closure11 () () : string = │
00:10:52 #24164 [verbose] > │ let v0 : string = "_1" │
00:10:52 #24165 [verbose] > │ v0 │
00:10:52 #24166 [verbose] > │ and closure12 () () : string = │
00:10:52 #24167 [verbose] > │ let v0 : string = "_2" │
00:10:52 #24168 [verbose] > │ v0 │
00:10:52 #24169 [verbose] > │ and closure13 () () : string = │
00:10:52 #24170 [verbose] > │ let v0 : string = "_3" │
00:10:52 #24171 [verbose] > │ v0 │
00:10:52 #24172 [verbose] > │ and closure14 () () : string = │
00:10:52 #24173 [verbose] > │ let v0 : string = "3" │
00:10:52 #24174 [verbose] > │ v0 │
00:10:52 #24175 [verbose] > │ and closure15 () () : string = │
00:10:52 #24176 [verbose] > │ let v0 : string = "4" │
00:10:52 #24177 [verbose] > │ v0 │
00:10:52 #24178 [verbose] > │ and closure16 () () : string = │
00:10:52 #24179 [verbose] > │ let v0 : string = "delete_file_async" │
00:10:52 #24180 [verbose] > │ v0 │
00:10:52 #24181 [verbose] > │ and method10 (v0 : string, v1 : int64) : Async<int64> = │
00:10:52 #24182 [verbose] > │ let v2 : Async<int64> option = None │
00:10:52 #24183 [verbose] > │ let mutable _v2 = v2 │
00:10:52 #24184 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24185 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:52 #24186 [verbose] > │ v3 │
00:10:52 #24187 [verbose] > │ #endif │
00:10:52 #24188 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24189 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:52 #24190 [verbose] > │ v4 │
00:10:52 #24191 [verbose] > │ #endif │
00:10:52 #24192 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24193 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:10:52 #24194 [verbose] > │ v5 │
00:10:52 #24195 [verbose] > │ #endif │
00:10:52 #24196 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24197 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24198 [verbose] > │ let v6 : Async<int64> option = None │
00:10:52 #24199 [verbose] > │ let mutable _v6 = v6 │
00:10:52 #24200 [verbose] > │ async { │
00:10:52 #24201 [verbose] > │ try │
00:10:52 #24202 [verbose] > │ let v7 : unit option = None │
00:10:52 #24203 [verbose] > │ let mutable _v7 = v7 │
00:10:52 #24204 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24205 [verbose] > │ null |> unbox<unit> │
00:10:52 #24206 [verbose] > │ () │
00:10:52 #24207 [verbose] > │ #endif │
00:10:52 #24208 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24209 [verbose] > │ null |> unbox<unit> │
00:10:52 #24210 [verbose] > │ () │
00:10:52 #24211 [verbose] > │ #endif │
00:10:52 #24212 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24213 [verbose] > │ null |> unbox<unit> │
00:10:52 #24214 [verbose] > │ () │
00:10:52 #24215 [verbose] > │ #endif │
00:10:52 #24216 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24217 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24218 [verbose] > │ let v8 : (string -> unit) = System.IO.File.Delete │
00:10:52 #24219 [verbose] > │ v8 v0 │
00:10:52 #24220 [verbose] > │ () │
00:10:52 #24221 [verbose] > │ #endif │
00:10:52 #24222 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24223 [verbose] > │ null |> unbox<unit> │
00:10:52 #24224 [verbose] > │ () │
00:10:52 #24225 [verbose] > │ #endif │
00:10:52 #24226 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24227 [verbose] > │ Unchecked.defaultof<unit> │
00:10:52 #24228 [verbose] > │ #endif │
00:10:52 #24229 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:52 #24230 [verbose] > │ _v7.Value │
00:10:52 #24231 [verbose] > │ return v1 │
00:10:52 #24232 [verbose] > │ with ex -> │
00:10:52 #24233 [verbose] > │ let v9 : exn = ex │
00:10:52 #24234 [verbose] > │ let v10 : int64 = v1 % 100L │
00:10:52 #24235 [verbose] > │ let v11 : bool = v10 = 0L │
00:10:52 #24236 [verbose] > │ if v11 then │
00:10:52 #24237 [verbose] > │ let v12 : string option = None │
00:10:52 #24238 [verbose] > │ let mutable _v12 = v12 │
00:10:52 #24239 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24240 [verbose] > │ let v13 : string = $"%A{v9}" │
00:10:52 #24241 [verbose] > │ v13 │
00:10:52 #24242 [verbose] > │ #endif │
00:10:52 #24243 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24244 [verbose] > │ let v14 : string = $"%A{v9}" │
00:10:52 #24245 [verbose] > │ v14 │
00:10:52 #24246 [verbose] > │ #endif │
00:10:52 #24247 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24248 [verbose] > │ let v15 : string = $"%A{v9}" │
00:10:52 #24249 [verbose] > │ v15 │
00:10:52 #24250 [verbose] > │ #endif │
00:10:52 #24251 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24252 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24253 [verbose] > │ let v16 : string = $"{v9.GetType ()}: {v9.Message}" │
00:10:52 #24254 [verbose] > │ v16 │
00:10:52 #24255 [verbose] > │ #endif │
00:10:52 #24256 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24257 [verbose] > │ let v17 : string = $"%A{v9}" │
00:10:52 #24258 [verbose] > │ v17 │
00:10:52 #24259 [verbose] > │ #endif │
00:10:52 #24260 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:52 #24261 [verbose] > │ FABLE_COMPILER_DART │
00:10:52 #24262 [verbose] > │ Unchecked.defaultof<string> │
00:10:52 #24263 [verbose] > │ #endif │
00:10:52 #24264 [verbose] > │ |> fun x -> _v12 <- Some x │
00:10:52 #24265 [verbose] > │ let v18 : string = _v12.Value │
00:10:52 #24266 [verbose] > │ let v19 : US0 = US0_3 │
00:10:52 #24267 [verbose] > │ let v20 : (unit -> string) = closure16() │
00:10:52 #24268 [verbose] > │ let v21 : (unit -> string) = closure2() │
00:10:52 #24269 [verbose] > │ method5(v19, v20, v21) │
00:10:52 #24270 [verbose] > │ let v22 : Async<unit> option = None │
00:10:52 #24271 [verbose] > │ let mutable _v22 = v22 │
00:10:52 #24272 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24273 [verbose] > │ let v23 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24274 [verbose] > │ v23 │
00:10:52 #24275 [verbose] > │ #endif │
00:10:52 #24276 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24277 [verbose] > │ let v24 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24278 [verbose] > │ v24 │
00:10:52 #24279 [verbose] > │ #endif │
00:10:52 #24280 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24281 [verbose] > │ let v25 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24282 [verbose] > │ v25 │
00:10:52 #24283 [verbose] > │ #endif │
00:10:52 #24284 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24285 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24286 [verbose] > │ let v26 : (int32 -> Async<unit>) = Async.Sleep │
00:10:52 #24287 [verbose] > │ let v27 : Async<unit> = v26 10 │
00:10:52 #24288 [verbose] > │ v27 │
00:10:52 #24289 [verbose] > │ #endif │
00:10:52 #24290 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24291 [verbose] > │ let v28 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24292 [verbose] > │ v28 │
00:10:52 #24293 [verbose] > │ #endif │
00:10:52 #24294 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24295 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:52 #24296 [verbose] > │ #endif │
00:10:52 #24297 [verbose] > │ |> fun x -> _v22 <- Some x │
00:10:52 #24298 [verbose] > │ let v29 : Async<unit> = _v22.Value │
00:10:52 #24299 [verbose] > │ do! v29 │
00:10:52 #24300 [verbose] > │ let v30 : int64 = v1 + 1L │
00:10:52 #24301 [verbose] > │ let v31 : Async<int64> = method10(v0, v30) │
00:10:52 #24302 [verbose] > │ return! v31 │
00:10:52 #24303 [verbose] > │ (* │
00:10:52 #24304 [verbose] > │ let v32 : int64 = *) │
00:10:52 #24305 [verbose] > │ } │
00:10:52 #24306 [verbose] > │ |> fun x -> _v6 <- Some x │
00:10:52 #24307 [verbose] > │ let v33 : Async<int64> = _v6 |> Option.get │
00:10:52 #24308 [verbose] > │ v33 │
00:10:52 #24309 [verbose] > │ #endif │
00:10:52 #24310 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24311 [verbose] > │ let v34 : Async<int64> = null |> unbox<Async<int64>> │
00:10:52 #24312 [verbose] > │ v34 │
00:10:52 #24313 [verbose] > │ #endif │
00:10:52 #24314 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24315 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:52 #24316 [verbose] > │ #endif │
00:10:52 #24317 [verbose] > │ |> fun x -> _v2 <- Some x │
00:10:52 #24318 [verbose] > │ let v35 : Async<int64> = _v2.Value │
00:10:52 #24319 [verbose] > │ v35 │
00:10:52 #24320 [verbose] > │ and closure17 () () : string = │
00:10:52 #24321 [verbose] > │ let v0 : string = "5" │
00:10:52 #24322 [verbose] > │ v0 │
00:10:52 #24323 [verbose] > │ and closure18 () () : string = │
00:10:52 #24324 [verbose] > │ let v0 : string = "6" │
00:10:52 #24325 [verbose] > │ v0 │
00:10:52 #24326 [verbose] > │ and closure19 () (v0 : int64) : US3 = │
00:10:52 #24327 [verbose] > │ US3_0(v0) │
00:10:52 #24328 [verbose] > │ and closure20 () (v0 : exn) : US3 = │
00:10:52 #24329 [verbose] > │ US3_1(v0) │
00:10:52 #24330 [verbose] > │ and closure21 () () : string = │
00:10:52 #24331 [verbose] > │ let v0 : string = "run_with_timeout_async" │
00:10:52 #24332 [verbose] > │ v0 │
00:10:52 #24333 [verbose] > │ and closure22 () () : string = │
00:10:52 #24334 [verbose] > │ let v0 : (unit -> string) = closure2() │
00:10:52 #24335 [verbose] > │ let v1 : string = $"timeout: {3000} / {v0 ()}" │
00:10:52 #24336 [verbose] > │ v1 │
00:10:52 #24337 [verbose] > │ and closure23 (v0 : string) () : string = │
00:10:52 #24338 [verbose] > │ let v1 : string = $"run_with_timeout_async** / ex: {v0}" │
00:10:52 #24339 [verbose] > │ v1 │
00:10:52 #24340 [verbose] > │ and method11 (v0 : bool) : bool = │
00:10:52 #24341 [verbose] > │ v0 │
00:10:52 #24342 [verbose] > │ and method0 () : unit = │
00:10:52 #24343 [verbose] > │ let v0 : struct (string * System.IDisposable) option = None │
00:10:52 #24344 [verbose] > │ let mutable _v0 = v0 │
00:10:52 #24345 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24346 [verbose] > │ let struct (v1 : string, v2 : System.IDisposable) = null |> unbox<struct │
00:10:52 #24347 [verbose] > │ (string * System.IDisposable)> │
00:10:52 #24348 [verbose] > │ struct (v1, v2) │
00:10:52 #24349 [verbose] > │ #endif │
00:10:52 #24350 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24351 [verbose] > │ let struct (v3 : string, v4 : System.IDisposable) = null |> unbox<struct │
00:10:52 #24352 [verbose] > │ (string * System.IDisposable)> │
00:10:52 #24353 [verbose] > │ struct (v3, v4) │
00:10:52 #24354 [verbose] > │ #endif │
00:10:52 #24355 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24356 [verbose] > │ let struct (v5 : string, v6 : System.IDisposable) = null |> unbox<struct │
00:10:52 #24357 [verbose] > │ (string * System.IDisposable)> │
00:10:52 #24358 [verbose] > │ struct (v5, v6) │
00:10:52 #24359 [verbose] > │ #endif │
00:10:52 #24360 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24361 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24362 [verbose] > │ let v7 : string option = None │
00:10:52 #24363 [verbose] > │ let mutable _v7 = v7 │
00:10:52 #24364 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24365 [verbose] > │ let v8 : string = null |> unbox<string> │
00:10:52 #24366 [verbose] > │ v8 │
00:10:52 #24367 [verbose] > │ #endif │
00:10:52 #24368 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24369 [verbose] > │ let v9 : string = null |> unbox<string> │
00:10:52 #24370 [verbose] > │ v9 │
00:10:52 #24371 [verbose] > │ #endif │
00:10:52 #24372 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24373 [verbose] > │ let v10 : string = null |> unbox<string> │
00:10:52 #24374 [verbose] > │ v10 │
00:10:52 #24375 [verbose] > │ #endif │
00:10:52 #24376 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24377 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24378 [verbose] > │ let v11 : (unit -> string) = System.IO.Path.GetTempPath │
00:10:52 #24379 [verbose] > │ let v12 : string = v11 () │
00:10:52 #24380 [verbose] > │ let v13 : (unit -> string) = closure0() │
00:10:52 #24381 [verbose] > │ let v14 : string = $"!{v13 ()}" │
00:10:52 #24382 [verbose] > │ let v15 : string option = None │
00:10:52 #24383 [verbose] > │ let mutable _v15 = v15 │
00:10:52 #24384 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24385 [verbose] > │ let v16 : string = method1(v12) │
00:10:52 #24386 [verbose] > │ let v17 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:52 #24387 [verbose] > │ let v18 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v16 v17 │
00:10:52 #24388 [verbose] > │ let v19 : string = "String::from($0)" │
00:10:52 #24389 [verbose] > │ let v20 : std_string_String = Fable.Core.RustInterop.emitRustExpr v18 │
00:10:52 #24390 [verbose] > │ v19 │
00:10:52 #24391 [verbose] > │ let v21 : string = "std::path::PathBuf::from($0)" │
00:10:52 #24392 [verbose] > │ let v22 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v20 v21 │
00:10:52 #24393 [verbose] > │ let v23 : string = method1(v14) │
00:10:52 #24394 [verbose] > │ let v24 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:52 #24395 [verbose] > │ let v25 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v23 v24 │
00:10:52 #24396 [verbose] > │ let v26 : string = "String::from($0)" │
00:10:52 #24397 [verbose] > │ let v27 : std_string_String = Fable.Core.RustInterop.emitRustExpr v25 │
00:10:52 #24398 [verbose] > │ v26 │
00:10:52 #24399 [verbose] > │ let v28 : string = "$0.join($1)" │
00:10:52 #24400 [verbose] > │ let v29 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:52 #24401 [verbose] > │ (v22, v27) v28 │
00:10:52 #24402 [verbose] > │ let v30 : string = "$0.display().to_string()" │
00:10:52 #24403 [verbose] > │ let v31 : std_string_String = Fable.Core.RustInterop.emitRustExpr v29 │
00:10:52 #24404 [verbose] > │ v30 │
00:10:52 #24405 [verbose] > │ let v32 : string = "fable_library_rust::String_::fromString($0)" │
00:10:52 #24406 [verbose] > │ let v33 : string = Fable.Core.RustInterop.emitRustExpr v31 v32 │
00:10:52 #24407 [verbose] > │ v33 │
00:10:52 #24408 [verbose] > │ #endif │
00:10:52 #24409 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24410 [verbose] > │ let v34 : string = null |> unbox<string> │
00:10:52 #24411 [verbose] > │ v34 │
00:10:52 #24412 [verbose] > │ #endif │
00:10:52 #24413 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24414 [verbose] > │ let v35 : string = null |> unbox<string> │
00:10:52 #24415 [verbose] > │ v35 │
00:10:52 #24416 [verbose] > │ #endif │
00:10:52 #24417 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24418 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24419 [verbose] > │ let v36 : string = System.IO.Path.Combine (v12, v14) │
00:10:52 #24420 [verbose] > │ v36 │
00:10:52 #24421 [verbose] > │ #endif │
00:10:52 #24422 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24423 [verbose] > │ let v37 : string = "path" │
00:10:52 #24424 [verbose] > │ let v38 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:52 #24425 [verbose] > │ let v39 : string = "v38.join($0, $1)" │
00:10:52 #24426 [verbose] > │ let v40 : string = Fable.Core.JsInterop.emitJsExpr struct (v12, v14) v39 │
00:10:52 #24427 [verbose] > │ v40 │
00:10:52 #24428 [verbose] > │ #endif │
00:10:52 #24429 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24430 [verbose] > │ Unchecked.defaultof<string> │
00:10:52 #24431 [verbose] > │ #endif │
00:10:52 #24432 [verbose] > │ |> fun x -> _v15 <- Some x │
00:10:52 #24433 [verbose] > │ let v41 : string = _v15.Value │
00:10:52 #24434 [verbose] > │ let v42 : System.DateTime = System.DateTime.Now │
00:10:52 #24435 [verbose] > │ let v43 : System.Guid = System.Guid.NewGuid () │
00:10:52 #24436 [verbose] > │ let v44 : (System.Guid -> string) = _.ToString() │
00:10:52 #24437 [verbose] > │ let v45 : string = v44 v43 │
00:10:52 #24438 [verbose] > │ let v46 : string = v42.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:10:52 #24439 [verbose] > │ let v47 : System.Guid = System.Guid $"{v46}{v45.[v46.Length..]}" │
00:10:52 #24440 [verbose] > │ let v48 : (System.Guid -> string) = _.ToString() │
00:10:52 #24441 [verbose] > │ let v49 : string = v48 v47 │
00:10:52 #24442 [verbose] > │ let v50 : string option = None │
00:10:52 #24443 [verbose] > │ let mutable _v50 = v50 │
00:10:52 #24444 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24445 [verbose] > │ let v51 : string = method1(v41) │
00:10:52 #24446 [verbose] > │ let v52 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:52 #24447 [verbose] > │ let v53 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v51 v52 │
00:10:52 #24448 [verbose] > │ let v54 : string = "String::from($0)" │
00:10:52 #24449 [verbose] > │ let v55 : std_string_String = Fable.Core.RustInterop.emitRustExpr v53 │
00:10:52 #24450 [verbose] > │ v54 │
00:10:52 #24451 [verbose] > │ let v56 : string = "std::path::PathBuf::from($0)" │
00:10:52 #24452 [verbose] > │ let v57 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v55 v56 │
00:10:52 #24453 [verbose] > │ let v58 : string = method1(v49) │
00:10:52 #24454 [verbose] > │ let v59 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:52 #24455 [verbose] > │ let v60 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v58 v59 │
00:10:52 #24456 [verbose] > │ let v61 : string = "String::from($0)" │
00:10:52 #24457 [verbose] > │ let v62 : std_string_String = Fable.Core.RustInterop.emitRustExpr v60 │
00:10:52 #24458 [verbose] > │ v61 │
00:10:52 #24459 [verbose] > │ let v63 : string = "$0.join($1)" │
00:10:52 #24460 [verbose] > │ let v64 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:52 #24461 [verbose] > │ (v57, v62) v63 │
00:10:52 #24462 [verbose] > │ let v65 : string = "$0.display().to_string()" │
00:10:52 #24463 [verbose] > │ let v66 : std_string_String = Fable.Core.RustInterop.emitRustExpr v64 │
00:10:52 #24464 [verbose] > │ v65 │
00:10:52 #24465 [verbose] > │ let v67 : string = "fable_library_rust::String_::fromString($0)" │
00:10:52 #24466 [verbose] > │ let v68 : string = Fable.Core.RustInterop.emitRustExpr v66 v67 │
00:10:52 #24467 [verbose] > │ v68 │
00:10:52 #24468 [verbose] > │ #endif │
00:10:52 #24469 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24470 [verbose] > │ let v69 : string = null |> unbox<string> │
00:10:52 #24471 [verbose] > │ v69 │
00:10:52 #24472 [verbose] > │ #endif │
00:10:52 #24473 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24474 [verbose] > │ let v70 : string = null |> unbox<string> │
00:10:52 #24475 [verbose] > │ v70 │
00:10:52 #24476 [verbose] > │ #endif │
00:10:52 #24477 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24478 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24479 [verbose] > │ let v71 : string = System.IO.Path.Combine (v41, v49) │
00:10:52 #24480 [verbose] > │ v71 │
00:10:52 #24481 [verbose] > │ #endif │
00:10:52 #24482 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24483 [verbose] > │ let v72 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:52 #24484 [verbose] > │ let v73 : string = "v72.join($0, $1)" │
00:10:52 #24485 [verbose] > │ let v74 : string = Fable.Core.JsInterop.emitJsExpr struct (v41, v49) v73 │
00:10:52 #24486 [verbose] > │ v74 │
00:10:52 #24487 [verbose] > │ #endif │
00:10:52 #24488 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24489 [verbose] > │ Unchecked.defaultof<string> │
00:10:52 #24490 [verbose] > │ #endif │
00:10:52 #24491 [verbose] > │ |> fun x -> _v50 <- Some x │
00:10:52 #24492 [verbose] > │ let v75 : string = _v50.Value │
00:10:52 #24493 [verbose] > │ v75 │
00:10:52 #24494 [verbose] > │ #endif │
00:10:52 #24495 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24496 [verbose] > │ let v76 : string = null |> unbox<string> │
00:10:52 #24497 [verbose] > │ v76 │
00:10:52 #24498 [verbose] > │ #endif │
00:10:52 #24499 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24500 [verbose] > │ Unchecked.defaultof<string> │
00:10:52 #24501 [verbose] > │ #endif │
00:10:52 #24502 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:52 #24503 [verbose] > │ let v77 : string = _v7.Value │
00:10:52 #24504 [verbose] > │ let v78 : System.IO.DirectoryInfo option = None │
00:10:52 #24505 [verbose] > │ let mutable _v78 = v78 │
00:10:52 #24506 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24507 [verbose] > │ let v79 : System.IO.DirectoryInfo = null |> │
00:10:52 #24508 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:52 #24509 [verbose] > │ v79 │
00:10:52 #24510 [verbose] > │ #endif │
00:10:52 #24511 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24512 [verbose] > │ let v80 : System.IO.DirectoryInfo = null |> │
00:10:52 #24513 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:52 #24514 [verbose] > │ v80 │
00:10:52 #24515 [verbose] > │ #endif │
00:10:52 #24516 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24517 [verbose] > │ let v81 : System.IO.DirectoryInfo = null |> │
00:10:52 #24518 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:52 #24519 [verbose] > │ v81 │
00:10:52 #24520 [verbose] > │ #endif │
00:10:52 #24521 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24522 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24523 [verbose] > │ let v82 : (string -> System.IO.DirectoryInfo) = │
00:10:52 #24524 [verbose] > │ System.IO.Directory.CreateDirectory │
00:10:52 #24525 [verbose] > │ let v83 : System.IO.DirectoryInfo = v82 v77 │
00:10:52 #24526 [verbose] > │ v83 │
00:10:52 #24527 [verbose] > │ #endif │
00:10:52 #24528 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24529 [verbose] > │ let v84 : System.IO.DirectoryInfo = null |> │
00:10:52 #24530 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:52 #24531 [verbose] > │ v84 │
00:10:52 #24532 [verbose] > │ #endif │
00:10:52 #24533 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24534 [verbose] > │ Unchecked.defaultof<System.IO.DirectoryInfo> │
00:10:52 #24535 [verbose] > │ #endif │
00:10:52 #24536 [verbose] > │ |> fun x -> _v78 <- Some x │
00:10:52 #24537 [verbose] > │ let v85 : System.IO.DirectoryInfo = _v78.Value │
00:10:52 #24538 [verbose] > │ let v86 : bool option = None │
00:10:52 #24539 [verbose] > │ let mutable _v86 = v86 │
00:10:52 #24540 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24541 [verbose] > │ let v87 : bool = null |> unbox<bool> │
00:10:52 #24542 [verbose] > │ v87 │
00:10:52 #24543 [verbose] > │ #endif │
00:10:52 #24544 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24545 [verbose] > │ let v88 : bool = null |> unbox<bool> │
00:10:52 #24546 [verbose] > │ v88 │
00:10:52 #24547 [verbose] > │ #endif │
00:10:52 #24548 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24549 [verbose] > │ let v89 : bool = null |> unbox<bool> │
00:10:52 #24550 [verbose] > │ v89 │
00:10:52 #24551 [verbose] > │ #endif │
00:10:52 #24552 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24553 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24554 [verbose] > │ let v90 : bool = v85.Exists │
00:10:52 #24555 [verbose] > │ v90 │
00:10:52 #24556 [verbose] > │ #endif │
00:10:52 #24557 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24558 [verbose] > │ let v91 : bool = null |> unbox<bool> │
00:10:52 #24559 [verbose] > │ v91 │
00:10:52 #24560 [verbose] > │ #endif │
00:10:52 #24561 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24562 [verbose] > │ Unchecked.defaultof<bool> │
00:10:52 #24563 [verbose] > │ #endif │
00:10:52 #24564 [verbose] > │ |> fun x -> _v86 <- Some x │
00:10:52 #24565 [verbose] > │ let v92 : bool = _v86.Value │
00:10:52 #24566 [verbose] > │ let v93 : bool = v92 = false │
00:10:52 #24567 [verbose] > │ if v93 then │
00:10:52 #24568 [verbose] > │ let v94 : System.DateTime option = None │
00:10:52 #24569 [verbose] > │ let mutable _v94 = v94 │
00:10:52 #24570 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24571 [verbose] > │ let v95 : System.DateTime = null |> unbox<System.DateTime> │
00:10:52 #24572 [verbose] > │ v95 │
00:10:52 #24573 [verbose] > │ #endif │
00:10:52 #24574 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24575 [verbose] > │ let v96 : System.DateTime = null |> unbox<System.DateTime> │
00:10:52 #24576 [verbose] > │ v96 │
00:10:52 #24577 [verbose] > │ #endif │
00:10:52 #24578 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24579 [verbose] > │ let v97 : System.DateTime = null |> unbox<System.DateTime> │
00:10:52 #24580 [verbose] > │ v97 │
00:10:52 #24581 [verbose] > │ #endif │
00:10:52 #24582 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24583 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24584 [verbose] > │ let v98 : System.DateTime = v85.CreationTime │
00:10:52 #24585 [verbose] > │ v98 │
00:10:52 #24586 [verbose] > │ #endif │
00:10:52 #24587 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24588 [verbose] > │ let v99 : System.DateTime = null |> unbox<System.DateTime> │
00:10:52 #24589 [verbose] > │ v99 │
00:10:52 #24590 [verbose] > │ #endif │
00:10:52 #24591 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:52 #24592 [verbose] > │ FABLE_COMPILER_DART │
00:10:52 #24593 [verbose] > │ Unchecked.defaultof<System.DateTime> │
00:10:52 #24594 [verbose] > │ #endif │
00:10:52 #24595 [verbose] > │ |> fun x -> _v94 <- Some x │
00:10:52 #24596 [verbose] > │ let v100 : System.DateTime = _v94.Value │
00:10:52 #24597 [verbose] > │ let v101 : obj = {| Exists = v92; CreationTime = v100 |} │
00:10:52 #24598 [verbose] > │ let v102 : string = $"%A{v101}" │
00:10:52 #24599 [verbose] > │ let v103 : (unit -> string) = closure1(v77, v102) │
00:10:52 #24600 [verbose] > │ let v104 : string = $"create_temp_directory / {v103 ()}" │
00:10:52 #24601 [verbose] > │ System.Console.WriteLine v104 │
00:10:52 #24602 [verbose] > │ () │
00:10:52 #24603 [verbose] > │ let v105 : System.IDisposable option = None │
00:10:52 #24604 [verbose] > │ let mutable _v105 = v105 │
00:10:52 #24605 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24606 [verbose] > │ let v106 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:52 #24607 [verbose] > │ v106 │
00:10:52 #24608 [verbose] > │ #endif │
00:10:52 #24609 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24610 [verbose] > │ let v107 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:52 #24611 [verbose] > │ v107 │
00:10:52 #24612 [verbose] > │ #endif │
00:10:52 #24613 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24614 [verbose] > │ let v108 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:52 #24615 [verbose] > │ v108 │
00:10:52 #24616 [verbose] > │ #endif │
00:10:52 #24617 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24618 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24619 [verbose] > │ let v109 : (unit -> unit) = closure3(v77) │
00:10:52 #24620 [verbose] > │ let v110 : System.IDisposable = { new System.IDisposable with member │
00:10:52 #24621 [verbose] > │ _.Dispose () = v109 () } │
00:10:52 #24622 [verbose] > │ v110 │
00:10:52 #24623 [verbose] > │ #endif │
00:10:52 #24624 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24625 [verbose] > │ let v111 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:52 #24626 [verbose] > │ v111 │
00:10:52 #24627 [verbose] > │ #endif │
00:10:52 #24628 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24629 [verbose] > │ Unchecked.defaultof<System.IDisposable> │
00:10:52 #24630 [verbose] > │ #endif │
00:10:52 #24631 [verbose] > │ |> fun x -> _v105 <- Some x │
00:10:52 #24632 [verbose] > │ let v112 : System.IDisposable = _v105.Value │
00:10:52 #24633 [verbose] > │ struct (v77, v112) │
00:10:52 #24634 [verbose] > │ #endif │
00:10:52 #24635 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24636 [verbose] > │ let struct (v113 : string, v114 : System.IDisposable) = null |> │
00:10:52 #24637 [verbose] > │ unbox<struct (string * System.IDisposable)> │
00:10:52 #24638 [verbose] > │ struct (v113, v114) │
00:10:52 #24639 [verbose] > │ #endif │
00:10:52 #24640 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24641 [verbose] > │ Unchecked.defaultof<struct (string * System.IDisposable)> │
00:10:52 #24642 [verbose] > │ #endif │
00:10:52 #24643 [verbose] > │ |> fun x -> _v0 <- Some x │
00:10:52 #24644 [verbose] > │ let struct (v115 : string, v116 : System.IDisposable) = _v0.Value │
00:10:52 #24645 [verbose] > │ use v116 = v116 │
00:10:52 #24646 [verbose] > │ let v117 : System.IDisposable = v116 │
00:10:52 #24647 [verbose] > │ let v118 : string option = None │
00:10:52 #24648 [verbose] > │ let mutable _v118 = v118 │
00:10:52 #24649 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24650 [verbose] > │ let v119 : string = method1(v115) │
00:10:52 #24651 [verbose] > │ let v120 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:52 #24652 [verbose] > │ let v121 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v119 v120 │
00:10:52 #24653 [verbose] > │ let v122 : string = "String::from($0)" │
00:10:52 #24654 [verbose] > │ let v123 : std_string_String = Fable.Core.RustInterop.emitRustExpr v121 │
00:10:52 #24655 [verbose] > │ v122 │
00:10:52 #24656 [verbose] > │ let v124 : string = "std::path::PathBuf::from($0)" │
00:10:52 #24657 [verbose] > │ let v125 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v123 │
00:10:52 #24658 [verbose] > │ v124 │
00:10:52 #24659 [verbose] > │ let v126 : string = method4() │
00:10:52 #24660 [verbose] > │ let v127 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:52 #24661 [verbose] > │ let v128 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v126 v127 │
00:10:52 #24662 [verbose] > │ let v129 : string = "String::from($0)" │
00:10:52 #24663 [verbose] > │ let v130 : std_string_String = Fable.Core.RustInterop.emitRustExpr v128 │
00:10:52 #24664 [verbose] > │ v129 │
00:10:52 #24665 [verbose] > │ let v131 : string = "$0.join($1)" │
00:10:52 #24666 [verbose] > │ let v132 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:52 #24667 [verbose] > │ (v125, v130) v131 │
00:10:52 #24668 [verbose] > │ let v133 : string = "$0.display().to_string()" │
00:10:52 #24669 [verbose] > │ let v134 : std_string_String = Fable.Core.RustInterop.emitRustExpr v132 │
00:10:52 #24670 [verbose] > │ v133 │
00:10:52 #24671 [verbose] > │ let v135 : string = "fable_library_rust::String_::fromString($0)" │
00:10:52 #24672 [verbose] > │ let v136 : string = Fable.Core.RustInterop.emitRustExpr v134 v135 │
00:10:52 #24673 [verbose] > │ v136 │
00:10:52 #24674 [verbose] > │ #endif │
00:10:52 #24675 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24676 [verbose] > │ let v137 : string = null |> unbox<string> │
00:10:52 #24677 [verbose] > │ v137 │
00:10:52 #24678 [verbose] > │ #endif │
00:10:52 #24679 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24680 [verbose] > │ let v138 : string = null |> unbox<string> │
00:10:52 #24681 [verbose] > │ v138 │
00:10:52 #24682 [verbose] > │ #endif │
00:10:52 #24683 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24684 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24685 [verbose] > │ let v139 : string = "test.txt" │
00:10:52 #24686 [verbose] > │ let v140 : string = System.IO.Path.Combine (v115, v139) │
00:10:52 #24687 [verbose] > │ v140 │
00:10:52 #24688 [verbose] > │ #endif │
00:10:52 #24689 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24690 [verbose] > │ let v141 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:52 #24691 [verbose] > │ let v142 : string = "v141.join($0, $1)" │
00:10:52 #24692 [verbose] > │ let v143 : string = Fable.Core.JsInterop.emitJsExpr struct (v115, v139) │
00:10:52 #24693 [verbose] > │ v142 │
00:10:52 #24694 [verbose] > │ v143 │
00:10:52 #24695 [verbose] > │ #endif │
00:10:52 #24696 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24697 [verbose] > │ Unchecked.defaultof<string> │
00:10:52 #24698 [verbose] > │ #endif │
00:10:52 #24699 [verbose] > │ |> fun x -> _v118 <- Some x │
00:10:52 #24700 [verbose] > │ let v144 : string = _v118.Value │
00:10:52 #24701 [verbose] > │ let v145 : Async<int64> option = None │
00:10:52 #24702 [verbose] > │ let mutable _v145 = v145 │
00:10:52 #24703 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24704 [verbose] > │ let v146 : Async<int64> = null |> unbox<Async<int64>> │
00:10:52 #24705 [verbose] > │ v146 │
00:10:52 #24706 [verbose] > │ #endif │
00:10:52 #24707 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24708 [verbose] > │ let v147 : Async<int64> = null |> unbox<Async<int64>> │
00:10:52 #24709 [verbose] > │ v147 │
00:10:52 #24710 [verbose] > │ #endif │
00:10:52 #24711 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24712 [verbose] > │ let v148 : Async<int64> = null |> unbox<Async<int64>> │
00:10:52 #24713 [verbose] > │ v148 │
00:10:52 #24714 [verbose] > │ #endif │
00:10:52 #24715 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24716 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24717 [verbose] > │ let v149 : Async<int64> option = None │
00:10:52 #24718 [verbose] > │ let mutable _v149 = v149 │
00:10:52 #24719 [verbose] > │ async { │
00:10:52 #24720 [verbose] > │ let v150 : US0 = US0_1 │
00:10:52 #24721 [verbose] > │ let v151 : (unit -> string) = closure6() │
00:10:52 #24722 [verbose] > │ let v152 : (unit -> string) = closure2() │
00:10:52 #24723 [verbose] > │ method5(v150, v151, v152) │
00:10:52 #24724 [verbose] > │ let v153 : Async<unit> option = None │
00:10:52 #24725 [verbose] > │ let mutable _v153 = v153 │
00:10:52 #24726 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24727 [verbose] > │ let v154 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24728 [verbose] > │ v154 │
00:10:52 #24729 [verbose] > │ #endif │
00:10:52 #24730 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24731 [verbose] > │ let v155 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24732 [verbose] > │ v155 │
00:10:52 #24733 [verbose] > │ #endif │
00:10:52 #24734 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24735 [verbose] > │ let v156 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24736 [verbose] > │ v156 │
00:10:52 #24737 [verbose] > │ #endif │
00:10:52 #24738 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24739 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24740 [verbose] > │ let v157 : string = "0" │
00:10:52 #24741 [verbose] > │ let v158 : System.Threading.Tasks.Task = │
00:10:52 #24742 [verbose] > │ System.IO.File.WriteAllTextAsync (v144, v157) │
00:10:52 #24743 [verbose] > │ let v159 : Async<unit> option = None │
00:10:52 #24744 [verbose] > │ let mutable _v159 = v159 │
00:10:52 #24745 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24746 [verbose] > │ let v160 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24747 [verbose] > │ v160 │
00:10:52 #24748 [verbose] > │ #endif │
00:10:52 #24749 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24750 [verbose] > │ let v161 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24751 [verbose] > │ v161 │
00:10:52 #24752 [verbose] > │ #endif │
00:10:52 #24753 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24754 [verbose] > │ let v162 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24755 [verbose] > │ v162 │
00:10:52 #24756 [verbose] > │ #endif │
00:10:52 #24757 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24758 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24759 [verbose] > │ let v163 : (System.Threading.Tasks.Task -> Async<unit>) = │
00:10:52 #24760 [verbose] > │ Async.AwaitTask │
00:10:52 #24761 [verbose] > │ let v164 : Async<unit> = v163 v158 │
00:10:52 #24762 [verbose] > │ v164 │
00:10:52 #24763 [verbose] > │ #endif │
00:10:52 #24764 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24765 [verbose] > │ let v165 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24766 [verbose] > │ v165 │
00:10:52 #24767 [verbose] > │ #endif │
00:10:52 #24768 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24769 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:52 #24770 [verbose] > │ #endif │
00:10:52 #24771 [verbose] > │ |> fun x -> _v159 <- Some x │
00:10:52 #24772 [verbose] > │ let v166 : Async<unit> = _v159.Value │
00:10:52 #24773 [verbose] > │ v166 │
00:10:52 #24774 [verbose] > │ #endif │
00:10:52 #24775 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24776 [verbose] > │ let v167 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24777 [verbose] > │ v167 │
00:10:52 #24778 [verbose] > │ #endif │
00:10:52 #24779 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24780 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:52 #24781 [verbose] > │ #endif │
00:10:52 #24782 [verbose] > │ |> fun x -> _v153 <- Some x │
00:10:52 #24783 [verbose] > │ let v168 : Async<unit> = _v153.Value │
00:10:52 #24784 [verbose] > │ do! v168 │
00:10:52 #24785 [verbose] > │ let v169 : US0 = US0_1 │
00:10:52 #24786 [verbose] > │ let v170 : (unit -> string) = closure10() │
00:10:52 #24787 [verbose] > │ method5(v169, v170, v152) │
00:10:52 #24788 [verbose] > │ let v171 : Async<unit> option = None │
00:10:52 #24789 [verbose] > │ let mutable _v171 = v171 │
00:10:52 #24790 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24791 [verbose] > │ let v172 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24792 [verbose] > │ v172 │
00:10:52 #24793 [verbose] > │ #endif │
00:10:52 #24794 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24795 [verbose] > │ let v173 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24796 [verbose] > │ v173 │
00:10:52 #24797 [verbose] > │ #endif │
00:10:52 #24798 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24799 [verbose] > │ let v174 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24800 [verbose] > │ v174 │
00:10:52 #24801 [verbose] > │ #endif │
00:10:52 #24802 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24803 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24804 [verbose] > │ let v175 : Async<unit> option = None │
00:10:52 #24805 [verbose] > │ let mutable _v175 = v175 │
00:10:52 #24806 [verbose] > │ async { │
00:10:52 #24807 [verbose] > │ let v176 : US0 = US0_1 │
00:10:52 #24808 [verbose] > │ let v177 : (unit -> string) = closure11() │
00:10:52 #24809 [verbose] > │ method5(v176, v177, v152) │
00:10:52 #24810 [verbose] > │ let v178 : System.IO.FileStream option = None │
00:10:52 #24811 [verbose] > │ let mutable _v178 = v178 │
00:10:52 #24812 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24813 [verbose] > │ let v179 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:52 #24814 [verbose] > │ v179 │
00:10:52 #24815 [verbose] > │ #endif │
00:10:52 #24816 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24817 [verbose] > │ let v180 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:52 #24818 [verbose] > │ v180 │
00:10:52 #24819 [verbose] > │ #endif │
00:10:52 #24820 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24821 [verbose] > │ let v181 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:52 #24822 [verbose] > │ v181 │
00:10:52 #24823 [verbose] > │ #endif │
00:10:52 #24824 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24825 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24826 [verbose] > │ let v182 : System.IO.FileMode = System.IO.FileMode.Open │
00:10:52 #24827 [verbose] > │ let v183 : System.IO.FileAccess = System.IO.FileAccess.ReadWrite │
00:10:52 #24828 [verbose] > │ let v184 : System.IO.FileShare = System.IO.FileShare.None │
00:10:52 #24829 [verbose] > │ let v185 : System.IO.FileStream = new System.IO.FileStream (v144, v182, │
00:10:52 #24830 [verbose] > │ v183, v184) │
00:10:52 #24831 [verbose] > │ v185 │
00:10:52 #24832 [verbose] > │ #endif │
00:10:52 #24833 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24834 [verbose] > │ let v186 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:52 #24835 [verbose] > │ v186 │
00:10:52 #24836 [verbose] > │ #endif │
00:10:52 #24837 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24838 [verbose] > │ Unchecked.defaultof<System.IO.FileStream> │
00:10:52 #24839 [verbose] > │ #endif │
00:10:52 #24840 [verbose] > │ |> fun x -> _v178 <- Some x │
00:10:52 #24841 [verbose] > │ let v187 : System.IO.FileStream = _v178.Value │
00:10:52 #24842 [verbose] > │ use v187 = v187 │
00:10:52 #24843 [verbose] > │ let v188 : System.IO.FileStream = v187 │
00:10:52 #24844 [verbose] > │ let v189 : US0 = US0_1 │
00:10:52 #24845 [verbose] > │ let v190 : (unit -> string) = closure12() │
00:10:52 #24846 [verbose] > │ method5(v189, v190, v152) │
00:10:52 #24847 [verbose] > │ let v191 : Async<unit> option = None │
00:10:52 #24848 [verbose] > │ let mutable _v191 = v191 │
00:10:52 #24849 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24850 [verbose] > │ let v192 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24851 [verbose] > │ v192 │
00:10:52 #24852 [verbose] > │ #endif │
00:10:52 #24853 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24854 [verbose] > │ let v193 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24855 [verbose] > │ v193 │
00:10:52 #24856 [verbose] > │ #endif │
00:10:52 #24857 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24858 [verbose] > │ let v194 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24859 [verbose] > │ v194 │
00:10:52 #24860 [verbose] > │ #endif │
00:10:52 #24861 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24862 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24863 [verbose] > │ let v195 : (int32 -> Async<unit>) = Async.Sleep │
00:10:52 #24864 [verbose] > │ let v196 : Async<unit> = v195 2000 │
00:10:52 #24865 [verbose] > │ v196 │
00:10:52 #24866 [verbose] > │ #endif │
00:10:52 #24867 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24868 [verbose] > │ let v197 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24869 [verbose] > │ v197 │
00:10:52 #24870 [verbose] > │ #endif │
00:10:52 #24871 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24872 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:52 #24873 [verbose] > │ #endif │
00:10:52 #24874 [verbose] > │ |> fun x -> _v191 <- Some x │
00:10:52 #24875 [verbose] > │ let v198 : Async<unit> = _v191.Value │
00:10:52 #24876 [verbose] > │ do! v198 │
00:10:52 #24877 [verbose] > │ let v199 : US0 = US0_1 │
00:10:52 #24878 [verbose] > │ let v200 : (unit -> string) = closure13() │
00:10:52 #24879 [verbose] > │ method5(v199, v200, v152) │
00:10:52 #24880 [verbose] > │ } │
00:10:52 #24881 [verbose] > │ |> fun x -> _v175 <- Some x │
00:10:52 #24882 [verbose] > │ let v201 : Async<unit> = _v175 |> Option.get │
00:10:52 #24883 [verbose] > │ v201 │
00:10:52 #24884 [verbose] > │ #endif │
00:10:52 #24885 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24886 [verbose] > │ let v202 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24887 [verbose] > │ v202 │
00:10:52 #24888 [verbose] > │ #endif │
00:10:52 #24889 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24890 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:52 #24891 [verbose] > │ #endif │
00:10:52 #24892 [verbose] > │ |> fun x -> _v171 <- Some x │
00:10:52 #24893 [verbose] > │ let v203 : Async<unit> = _v171.Value │
00:10:52 #24894 [verbose] > │ let v204 : Async<Async<unit>> option = None │
00:10:52 #24895 [verbose] > │ let mutable _v204 = v204 │
00:10:52 #24896 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24897 [verbose] > │ let v205 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:52 #24898 [verbose] > │ v205 │
00:10:52 #24899 [verbose] > │ #endif │
00:10:52 #24900 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24901 [verbose] > │ let v206 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:52 #24902 [verbose] > │ v206 │
00:10:52 #24903 [verbose] > │ #endif │
00:10:52 #24904 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24905 [verbose] > │ let v207 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:52 #24906 [verbose] > │ v207 │
00:10:52 #24907 [verbose] > │ #endif │
00:10:52 #24908 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24909 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24910 [verbose] > │ let v208 : (Async<unit> -> Async<Async<unit>>) = Async.StartChild │
00:10:52 #24911 [verbose] > │ let v209 : Async<Async<unit>> = v208 v203 │
00:10:52 #24912 [verbose] > │ v209 │
00:10:52 #24913 [verbose] > │ #endif │
00:10:52 #24914 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24915 [verbose] > │ let v210 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:52 #24916 [verbose] > │ v210 │
00:10:52 #24917 [verbose] > │ #endif │
00:10:52 #24918 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24919 [verbose] > │ Unchecked.defaultof<Async<Async<unit>>> │
00:10:52 #24920 [verbose] > │ #endif │
00:10:52 #24921 [verbose] > │ |> fun x -> _v204 <- Some x │
00:10:52 #24922 [verbose] > │ let v211 : Async<Async<unit>> = _v204.Value │
00:10:52 #24923 [verbose] > │ let! v211 = v211 │
00:10:52 #24924 [verbose] > │ let v212 : Async<unit> = v211 │
00:10:52 #24925 [verbose] > │ let v213 : US0 = US0_1 │
00:10:52 #24926 [verbose] > │ let v214 : (unit -> string) = closure14() │
00:10:52 #24927 [verbose] > │ method5(v213, v214, v152) │
00:10:52 #24928 [verbose] > │ let v215 : Async<unit> option = None │
00:10:52 #24929 [verbose] > │ let mutable _v215 = v215 │
00:10:52 #24930 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24931 [verbose] > │ let v216 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24932 [verbose] > │ v216 │
00:10:52 #24933 [verbose] > │ #endif │
00:10:52 #24934 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24935 [verbose] > │ let v217 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24936 [verbose] > │ v217 │
00:10:52 #24937 [verbose] > │ #endif │
00:10:52 #24938 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24939 [verbose] > │ let v218 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24940 [verbose] > │ v218 │
00:10:52 #24941 [verbose] > │ #endif │
00:10:52 #24942 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24943 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24944 [verbose] > │ let v219 : (int32 -> Async<unit>) = Async.Sleep │
00:10:52 #24945 [verbose] > │ let v220 : Async<unit> = v219 1 │
00:10:52 #24946 [verbose] > │ v220 │
00:10:52 #24947 [verbose] > │ #endif │
00:10:52 #24948 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24949 [verbose] > │ let v221 : Async<unit> = null |> unbox<Async<unit>> │
00:10:52 #24950 [verbose] > │ v221 │
00:10:52 #24951 [verbose] > │ #endif │
00:10:52 #24952 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24953 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:52 #24954 [verbose] > │ #endif │
00:10:52 #24955 [verbose] > │ |> fun x -> _v215 <- Some x │
00:10:52 #24956 [verbose] > │ let v222 : Async<unit> = _v215.Value │
00:10:52 #24957 [verbose] > │ do! v222 │
00:10:52 #24958 [verbose] > │ let v223 : US0 = US0_1 │
00:10:52 #24959 [verbose] > │ let v224 : (unit -> string) = closure15() │
00:10:52 #24960 [verbose] > │ method5(v223, v224, v152) │
00:10:52 #24961 [verbose] > │ let v225 : Async<int64> option = None │
00:10:52 #24962 [verbose] > │ let mutable _v225 = v225 │
00:10:52 #24963 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #24964 [verbose] > │ let v226 : Async<int64> = null |> unbox<Async<int64>> │
00:10:52 #24965 [verbose] > │ v226 │
00:10:52 #24966 [verbose] > │ #endif │
00:10:52 #24967 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #24968 [verbose] > │ let v227 : Async<int64> = null |> unbox<Async<int64>> │
00:10:52 #24969 [verbose] > │ v227 │
00:10:52 #24970 [verbose] > │ #endif │
00:10:52 #24971 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #24972 [verbose] > │ let v228 : Async<int64> = null |> unbox<Async<int64>> │
00:10:52 #24973 [verbose] > │ v228 │
00:10:52 #24974 [verbose] > │ #endif │
00:10:52 #24975 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #24976 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #24977 [verbose] > │ let v229 : int64 = 0L │
00:10:52 #24978 [verbose] > │ let v230 : Async<int64> = method10(v144, v229) │
00:10:52 #24979 [verbose] > │ v230 │
00:10:52 #24980 [verbose] > │ #endif │
00:10:52 #24981 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #24982 [verbose] > │ let v231 : Async<int64> = null |> unbox<Async<int64>> │
00:10:52 #24983 [verbose] > │ v231 │
00:10:52 #24984 [verbose] > │ #endif │
00:10:52 #24985 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #24986 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:52 #24987 [verbose] > │ #endif │
00:10:52 #24988 [verbose] > │ |> fun x -> _v225 <- Some x │
00:10:52 #24989 [verbose] > │ let v232 : Async<int64> = _v225.Value │
00:10:52 #24990 [verbose] > │ let! v232 = v232 │
00:10:52 #24991 [verbose] > │ let v233 : int64 = v232 │
00:10:52 #24992 [verbose] > │ let v234 : US0 = US0_1 │
00:10:52 #24993 [verbose] > │ let v235 : (unit -> string) = closure17() │
00:10:52 #24994 [verbose] > │ method5(v234, v235, v152) │
00:10:52 #24995 [verbose] > │ do! v212 │
00:10:52 #24996 [verbose] > │ let v236 : US0 = US0_1 │
00:10:52 #24997 [verbose] > │ let v237 : (unit -> string) = closure18() │
00:10:52 #24998 [verbose] > │ method5(v236, v237, v152) │
00:10:52 #24999 [verbose] > │ return v233 │
00:10:52 #25000 [verbose] > │ } │
00:10:52 #25001 [verbose] > │ |> fun x -> _v149 <- Some x │
00:10:52 #25002 [verbose] > │ let v238 : Async<int64> = _v149 |> Option.get │
00:10:52 #25003 [verbose] > │ v238 │
00:10:52 #25004 [verbose] > │ #endif │
00:10:52 #25005 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #25006 [verbose] > │ let v239 : Async<int64> = null |> unbox<Async<int64>> │
00:10:52 #25007 [verbose] > │ v239 │
00:10:52 #25008 [verbose] > │ #endif │
00:10:52 #25009 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #25010 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:52 #25011 [verbose] > │ #endif │
00:10:52 #25012 [verbose] > │ |> fun x -> _v145 <- Some x │
00:10:52 #25013 [verbose] > │ let v240 : Async<int64> = _v145.Value │
00:10:52 #25014 [verbose] > │ let v241 : Async<US2> option = None │
00:10:52 #25015 [verbose] > │ let mutable _v241 = v241 │
00:10:52 #25016 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #25017 [verbose] > │ let v242 : Async<US2> = null |> unbox<Async<US2>> │
00:10:52 #25018 [verbose] > │ v242 │
00:10:52 #25019 [verbose] > │ #endif │
00:10:52 #25020 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #25021 [verbose] > │ let v243 : Async<US2> = null |> unbox<Async<US2>> │
00:10:52 #25022 [verbose] > │ v243 │
00:10:52 #25023 [verbose] > │ #endif │
00:10:52 #25024 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #25025 [verbose] > │ let v244 : Async<US2> = null |> unbox<Async<US2>> │
00:10:52 #25026 [verbose] > │ v244 │
00:10:52 #25027 [verbose] > │ #endif │
00:10:52 #25028 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #25029 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #25030 [verbose] > │ let v245 : Async<US2> option = None │
00:10:52 #25031 [verbose] > │ let mutable _v245 = v245 │
00:10:52 #25032 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #25033 [verbose] > │ let v246 : Async<US2> = null |> unbox<Async<US2>> │
00:10:52 #25034 [verbose] > │ v246 │
00:10:52 #25035 [verbose] > │ #endif │
00:10:52 #25036 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #25037 [verbose] > │ let v247 : Async<US2> = null |> unbox<Async<US2>> │
00:10:52 #25038 [verbose] > │ v247 │
00:10:52 #25039 [verbose] > │ #endif │
00:10:52 #25040 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #25041 [verbose] > │ let v248 : Async<US2> = null |> unbox<Async<US2>> │
00:10:52 #25042 [verbose] > │ v248 │
00:10:52 #25043 [verbose] > │ #endif │
00:10:52 #25044 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #25045 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #25046 [verbose] > │ let v249 : Async<US2> option = None │
00:10:52 #25047 [verbose] > │ let mutable _v249 = v249 │
00:10:52 #25048 [verbose] > │ async { │
00:10:52 #25049 [verbose] > │ let v250 : Async<Async<int64>> option = None │
00:10:52 #25050 [verbose] > │ let mutable _v250 = v250 │
00:10:52 #25051 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #25052 [verbose] > │ let v251 : Async<Async<int64>> = null |> unbox<Async<Async<int64>>> │
00:10:52 #25053 [verbose] > │ v251 │
00:10:52 #25054 [verbose] > │ #endif │
00:10:52 #25055 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #25056 [verbose] > │ let v252 : Async<Async<int64>> = null |> unbox<Async<Async<int64>>> │
00:10:52 #25057 [verbose] > │ v252 │
00:10:52 #25058 [verbose] > │ #endif │
00:10:52 #25059 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #25060 [verbose] > │ let v253 : Async<Async<int64>> = null |> unbox<Async<Async<int64>>> │
00:10:52 #25061 [verbose] > │ v253 │
00:10:52 #25062 [verbose] > │ #endif │
00:10:52 #25063 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #25064 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #25065 [verbose] > │ let v254 : Async<Async<int64>> = Async.StartChild (v240, 3000) │
00:10:52 #25066 [verbose] > │ v254 │
00:10:52 #25067 [verbose] > │ #endif │
00:10:52 #25068 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #25069 [verbose] > │ let v255 : Async<Async<int64>> = null |> unbox<Async<Async<int64>>> │
00:10:52 #25070 [verbose] > │ v255 │
00:10:52 #25071 [verbose] > │ #endif │
00:10:52 #25072 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #25073 [verbose] > │ Unchecked.defaultof<Async<Async<int64>>> │
00:10:52 #25074 [verbose] > │ #endif │
00:10:52 #25075 [verbose] > │ |> fun x -> _v250 <- Some x │
00:10:52 #25076 [verbose] > │ let v256 : Async<Async<int64>> = _v250.Value │
00:10:52 #25077 [verbose] > │ let! v256 = v256 │
00:10:52 #25078 [verbose] > │ let v257 : Async<int64> = v256 │
00:10:52 #25079 [verbose] > │ let v258 : Async<Choice<int64, exn>> option = None │
00:10:52 #25080 [verbose] > │ let mutable _v258 = v258 │
00:10:52 #25081 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #25082 [verbose] > │ let v259 : Async<Choice<int64, exn>> = null |> unbox<Async<Choice<int64, │
00:10:52 #25083 [verbose] > │ exn>>> │
00:10:52 #25084 [verbose] > │ v259 │
00:10:52 #25085 [verbose] > │ #endif │
00:10:52 #25086 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #25087 [verbose] > │ let v260 : Async<Choice<int64, exn>> = null |> unbox<Async<Choice<int64, │
00:10:52 #25088 [verbose] > │ exn>>> │
00:10:52 #25089 [verbose] > │ v260 │
00:10:52 #25090 [verbose] > │ #endif │
00:10:52 #25091 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #25092 [verbose] > │ let v261 : Async<Choice<int64, exn>> = null |> unbox<Async<Choice<int64, │
00:10:52 #25093 [verbose] > │ exn>>> │
00:10:52 #25094 [verbose] > │ v261 │
00:10:52 #25095 [verbose] > │ #endif │
00:10:52 #25096 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #25097 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #25098 [verbose] > │ let v262 : (Async<int64> -> Async<Choice<int64, exn>>) = Async.Catch │
00:10:52 #25099 [verbose] > │ let v263 : Async<Choice<int64, exn>> = v262 v257 │
00:10:52 #25100 [verbose] > │ v263 │
00:10:52 #25101 [verbose] > │ #endif │
00:10:52 #25102 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #25103 [verbose] > │ let v264 : Async<Choice<int64, exn>> = null |> unbox<Async<Choice<int64, │
00:10:52 #25104 [verbose] > │ exn>>> │
00:10:52 #25105 [verbose] > │ v264 │
00:10:52 #25106 [verbose] > │ #endif │
00:10:52 #25107 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #25108 [verbose] > │ Unchecked.defaultof<Async<Choice<int64, exn>>> │
00:10:52 #25109 [verbose] > │ #endif │
00:10:52 #25110 [verbose] > │ |> fun x -> _v258 <- Some x │
00:10:52 #25111 [verbose] > │ let v265 : Async<Choice<int64, exn>> = _v258.Value │
00:10:52 #25112 [verbose] > │ let v266 : Async<US3> option = None │
00:10:52 #25113 [verbose] > │ let mutable _v266 = v266 │
00:10:52 #25114 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #25115 [verbose] > │ let v267 : Async<US3> = null |> unbox<Async<US3>> │
00:10:52 #25116 [verbose] > │ v267 │
00:10:52 #25117 [verbose] > │ #endif │
00:10:52 #25118 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #25119 [verbose] > │ let v268 : Async<US3> = null |> unbox<Async<US3>> │
00:10:52 #25120 [verbose] > │ v268 │
00:10:52 #25121 [verbose] > │ #endif │
00:10:52 #25122 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #25123 [verbose] > │ let v269 : Async<US3> = null |> unbox<Async<US3>> │
00:10:52 #25124 [verbose] > │ v269 │
00:10:52 #25125 [verbose] > │ #endif │
00:10:52 #25126 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #25127 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #25128 [verbose] > │ let v270 : Async<US3> option = None │
00:10:52 #25129 [verbose] > │ let mutable _v270 = v270 │
00:10:52 #25130 [verbose] > │ async { │
00:10:52 #25131 [verbose] > │ let! v265 = v265 │
00:10:52 #25132 [verbose] > │ let v271 : Choice<int64, exn> = v265 │
00:10:52 #25133 [verbose] > │ let v272 : US3 option = None │
00:10:52 #25134 [verbose] > │ let mutable _v272 = v272 │
00:10:52 #25135 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #25136 [verbose] > │ let v273 : US3 = null |> unbox<US3> │
00:10:52 #25137 [verbose] > │ v273 │
00:10:52 #25138 [verbose] > │ #endif │
00:10:52 #25139 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #25140 [verbose] > │ let v274 : US3 = null |> unbox<US3> │
00:10:52 #25141 [verbose] > │ v274 │
00:10:52 #25142 [verbose] > │ #endif │
00:10:52 #25143 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #25144 [verbose] > │ let v275 : US3 = null |> unbox<US3> │
00:10:52 #25145 [verbose] > │ v275 │
00:10:52 #25146 [verbose] > │ #endif │
00:10:52 #25147 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #25148 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #25149 [verbose] > │ let v276 : (int64 -> US3) = closure19() │
00:10:52 #25150 [verbose] > │ let v277 : (exn -> US3) = closure20() │
00:10:52 #25151 [verbose] > │ let v278 : US3 = match v271 with Choice1Of2 x -> v276 x | Choice2Of2 x │
00:10:52 #25152 [verbose] > │ -> v277 x │
00:10:52 #25153 [verbose] > │ v278 │
00:10:52 #25154 [verbose] > │ #endif │
00:10:52 #25155 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #25156 [verbose] > │ let v279 : US3 = null |> unbox<US3> │
00:10:52 #25157 [verbose] > │ v279 │
00:10:52 #25158 [verbose] > │ #endif │
00:10:52 #25159 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #25160 [verbose] > │ Unchecked.defaultof<US3> │
00:10:52 #25161 [verbose] > │ #endif │
00:10:52 #25162 [verbose] > │ |> fun x -> _v272 <- Some x │
00:10:52 #25163 [verbose] > │ let v280 : US3 = _v272.Value │
00:10:52 #25164 [verbose] > │ return v280 │
00:10:52 #25165 [verbose] > │ } │
00:10:52 #25166 [verbose] > │ |> fun x -> _v270 <- Some x │
00:10:52 #25167 [verbose] > │ let v281 : Async<US3> = _v270 |> Option.get │
00:10:52 #25168 [verbose] > │ v281 │
00:10:52 #25169 [verbose] > │ #endif │
00:10:52 #25170 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #25171 [verbose] > │ let v282 : Async<US3> = null |> unbox<Async<US3>> │
00:10:52 #25172 [verbose] > │ v282 │
00:10:52 #25173 [verbose] > │ #endif │
00:10:52 #25174 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #25175 [verbose] > │ Unchecked.defaultof<Async<US3>> │
00:10:52 #25176 [verbose] > │ #endif │
00:10:52 #25177 [verbose] > │ |> fun x -> _v266 <- Some x │
00:10:52 #25178 [verbose] > │ let v283 : Async<US3> = _v266.Value │
00:10:52 #25179 [verbose] > │ let v284 : Async<US4> option = None │
00:10:52 #25180 [verbose] > │ let mutable _v284 = v284 │
00:10:52 #25181 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #25182 [verbose] > │ let v285 : Async<US4> = null |> unbox<Async<US4>> │
00:10:52 #25183 [verbose] > │ v285 │
00:10:52 #25184 [verbose] > │ #endif │
00:10:52 #25185 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #25186 [verbose] > │ let v286 : Async<US4> = null |> unbox<Async<US4>> │
00:10:52 #25187 [verbose] > │ v286 │
00:10:52 #25188 [verbose] > │ #endif │
00:10:52 #25189 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #25190 [verbose] > │ let v287 : Async<US4> = null |> unbox<Async<US4>> │
00:10:52 #25191 [verbose] > │ v287 │
00:10:52 #25192 [verbose] > │ #endif │
00:10:52 #25193 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #25194 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #25195 [verbose] > │ let v288 : Async<US4> option = None │
00:10:52 #25196 [verbose] > │ let mutable _v288 = v288 │
00:10:52 #25197 [verbose] > │ async { │
00:10:52 #25198 [verbose] > │ let! v283 = v283 │
00:10:52 #25199 [verbose] > │ let v289 : US3 = v283 │
00:10:52 #25200 [verbose] > │ let v295 : US4 = │
00:10:52 #25201 [verbose] > │ match v289 with │
00:10:52 #25202 [verbose] > │ | US3_0(v290) -> (* Choice1Of2 *) │
00:10:52 #25203 [verbose] > │ US4_0(v290) │
00:10:52 #25204 [verbose] > │ | US3_1(v292) -> (* Choice2Of2 *) │
00:10:52 #25205 [verbose] > │ US4_1(v292) │
00:10:52 #25206 [verbose] > │ return v295 │
00:10:52 #25207 [verbose] > │ } │
00:10:52 #25208 [verbose] > │ |> fun x -> _v288 <- Some x │
00:10:52 #25209 [verbose] > │ let v296 : Async<US4> = _v288 |> Option.get │
00:10:52 #25210 [verbose] > │ v296 │
00:10:52 #25211 [verbose] > │ #endif │
00:10:52 #25212 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #25213 [verbose] > │ let v297 : Async<US4> = null |> unbox<Async<US4>> │
00:10:52 #25214 [verbose] > │ v297 │
00:10:52 #25215 [verbose] > │ #endif │
00:10:52 #25216 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #25217 [verbose] > │ Unchecked.defaultof<Async<US4>> │
00:10:52 #25218 [verbose] > │ #endif │
00:10:52 #25219 [verbose] > │ |> fun x -> _v284 <- Some x │
00:10:52 #25220 [verbose] > │ let v298 : Async<US4> = _v284.Value │
00:10:52 #25221 [verbose] > │ let v299 : Async<US2> option = None │
00:10:52 #25222 [verbose] > │ let mutable _v299 = v299 │
00:10:52 #25223 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #25224 [verbose] > │ let v300 : Async<US2> = null |> unbox<Async<US2>> │
00:10:52 #25225 [verbose] > │ v300 │
00:10:52 #25226 [verbose] > │ #endif │
00:10:52 #25227 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #25228 [verbose] > │ let v301 : Async<US2> = null |> unbox<Async<US2>> │
00:10:52 #25229 [verbose] > │ v301 │
00:10:52 #25230 [verbose] > │ #endif │
00:10:52 #25231 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #25232 [verbose] > │ let v302 : Async<US2> = null |> unbox<Async<US2>> │
00:10:52 #25233 [verbose] > │ v302 │
00:10:52 #25234 [verbose] > │ #endif │
00:10:52 #25235 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #25236 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #25237 [verbose] > │ let v303 : Async<US2> option = None │
00:10:52 #25238 [verbose] > │ let mutable _v303 = v303 │
00:10:52 #25239 [verbose] > │ async { │
00:10:52 #25240 [verbose] > │ let! v298 = v298 │
00:10:52 #25241 [verbose] > │ let v304 : US4 = v298 │
00:10:52 #25242 [verbose] > │ let v328 : US2 = │
00:10:52 #25243 [verbose] > │ match v304 with │
00:10:52 #25244 [verbose] > │ | US4_1(v307) -> (* Error *) │
00:10:52 #25245 [verbose] > │ let v308 : string = $"%A{v307}" │
00:10:52 #25246 [verbose] > │ let v309 : string = "System.TimeoutException" │
00:10:52 #25247 [verbose] > │ let v310 : bool = v308.Contains v309 │
00:10:52 #25248 [verbose] > │ if v310 then │
00:10:52 #25249 [verbose] > │ let v311 : US0 = US0_1 │
00:10:52 #25250 [verbose] > │ let v312 : (unit -> string) = closure21() │
00:10:52 #25251 [verbose] > │ let v313 : (unit -> string) = closure22() │
00:10:52 #25252 [verbose] > │ method5(v311, v312, v313) │
00:10:52 #25253 [verbose] > │ US2_1 │
00:10:52 #25254 [verbose] > │ else │
00:10:52 #25255 [verbose] > │ let v315 : string option = None │
00:10:52 #25256 [verbose] > │ let mutable _v315 = v315 │
00:10:52 #25257 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #25258 [verbose] > │ let v316 : string = $"%A{v307}" │
00:10:52 #25259 [verbose] > │ v316 │
00:10:52 #25260 [verbose] > │ #endif │
00:10:52 #25261 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #25262 [verbose] > │ let v317 : string = $"%A{v307}" │
00:10:52 #25263 [verbose] > │ v317 │
00:10:52 #25264 [verbose] > │ #endif │
00:10:52 #25265 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #25266 [verbose] > │ let v318 : string = $"%A{v307}" │
00:10:52 #25267 [verbose] > │ v318 │
00:10:52 #25268 [verbose] > │ #endif │
00:10:52 #25269 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #25270 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #25271 [verbose] > │ let v319 : string = $"{v307.GetType ()}: {v307.Message}" │
00:10:52 #25272 [verbose] > │ v319 │
00:10:52 #25273 [verbose] > │ #endif │
00:10:52 #25274 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #25275 [verbose] > │ let v320 : string = $"%A{v307}" │
00:10:52 #25276 [verbose] > │ v320 │
00:10:52 #25277 [verbose] > │ #endif │
00:10:52 #25278 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:52 #25279 [verbose] > │ FABLE_COMPILER_DART │
00:10:52 #25280 [verbose] > │ Unchecked.defaultof<string> │
00:10:52 #25281 [verbose] > │ #endif │
00:10:52 #25282 [verbose] > │ |> fun x -> _v315 <- Some x │
00:10:52 #25283 [verbose] > │ let v321 : string = _v315.Value │
00:10:52 #25284 [verbose] > │ let v322 : US0 = US0_4 │
00:10:52 #25285 [verbose] > │ let v323 : (unit -> string) = closure23(v321) │
00:10:52 #25286 [verbose] > │ let v324 : (unit -> string) = closure22() │
00:10:52 #25287 [verbose] > │ method5(v322, v323, v324) │
00:10:52 #25288 [verbose] > │ US2_1 │
00:10:52 #25289 [verbose] > │ | US4_0(v305) -> (* Ok *) │
00:10:52 #25290 [verbose] > │ US2_0(v305) │
00:10:52 #25291 [verbose] > │ return v328 │
00:10:52 #25292 [verbose] > │ } │
00:10:52 #25293 [verbose] > │ |> fun x -> _v303 <- Some x │
00:10:52 #25294 [verbose] > │ let v329 : Async<US2> = _v303 |> Option.get │
00:10:52 #25295 [verbose] > │ v329 │
00:10:52 #25296 [verbose] > │ #endif │
00:10:52 #25297 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #25298 [verbose] > │ let v330 : Async<US2> = null |> unbox<Async<US2>> │
00:10:52 #25299 [verbose] > │ v330 │
00:10:52 #25300 [verbose] > │ #endif │
00:10:52 #25301 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #25302 [verbose] > │ Unchecked.defaultof<Async<US2>> │
00:10:52 #25303 [verbose] > │ #endif │
00:10:52 #25304 [verbose] > │ |> fun x -> _v299 <- Some x │
00:10:52 #25305 [verbose] > │ let v331 : Async<US2> = _v299.Value │
00:10:52 #25306 [verbose] > │ return! v331 │
00:10:52 #25307 [verbose] > │ } │
00:10:52 #25308 [verbose] > │ |> fun x -> _v249 <- Some x │
00:10:52 #25309 [verbose] > │ let v332 : Async<US2> = _v249 |> Option.get │
00:10:52 #25310 [verbose] > │ v332 │
00:10:52 #25311 [verbose] > │ #endif │
00:10:52 #25312 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #25313 [verbose] > │ let v333 : Async<US2> = null |> unbox<Async<US2>> │
00:10:52 #25314 [verbose] > │ v333 │
00:10:52 #25315 [verbose] > │ #endif │
00:10:52 #25316 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #25317 [verbose] > │ Unchecked.defaultof<Async<US2>> │
00:10:52 #25318 [verbose] > │ #endif │
00:10:52 #25319 [verbose] > │ |> fun x -> _v245 <- Some x │
00:10:52 #25320 [verbose] > │ let v334 : Async<US2> = _v245.Value │
00:10:52 #25321 [verbose] > │ v334 │
00:10:52 #25322 [verbose] > │ #endif │
00:10:52 #25323 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #25324 [verbose] > │ let v335 : Async<US2> = null |> unbox<Async<US2>> │
00:10:52 #25325 [verbose] > │ v335 │
00:10:52 #25326 [verbose] > │ #endif │
00:10:52 #25327 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #25328 [verbose] > │ Unchecked.defaultof<Async<US2>> │
00:10:52 #25329 [verbose] > │ #endif │
00:10:52 #25330 [verbose] > │ |> fun x -> _v241 <- Some x │
00:10:52 #25331 [verbose] > │ let v336 : Async<US2> = _v241.Value │
00:10:52 #25332 [verbose] > │ let v337 : US2 option = None │
00:10:52 #25333 [verbose] > │ let mutable _v337 = v337 │
00:10:52 #25334 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:52 #25335 [verbose] > │ let v338 : US2 = null |> unbox<US2> │
00:10:52 #25336 [verbose] > │ v338 │
00:10:52 #25337 [verbose] > │ #endif │
00:10:52 #25338 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:52 #25339 [verbose] > │ let v339 : US2 = null |> unbox<US2> │
00:10:52 #25340 [verbose] > │ v339 │
00:10:52 #25341 [verbose] > │ #endif │
00:10:52 #25342 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:52 #25343 [verbose] > │ let v340 : US2 = null |> unbox<US2> │
00:10:52 #25344 [verbose] > │ v340 │
00:10:52 #25345 [verbose] > │ #endif │
00:10:52 #25346 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:52 #25347 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:52 #25348 [verbose] > │ let v341 : (Async<US2> -> US2) = Async.RunSynchronously │
00:10:52 #25349 [verbose] > │ let v342 : US2 = v341 v336 │
00:10:52 #25350 [verbose] > │ v342 │
00:10:52 #25351 [verbose] > │ #endif │
00:10:52 #25352 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:52 #25353 [verbose] > │ let v343 : US2 = null |> unbox<US2> │
00:10:52 #25354 [verbose] > │ v343 │
00:10:52 #25355 [verbose] > │ #endif │
00:10:52 #25356 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:52 #25357 [verbose] > │ Unchecked.defaultof<US2> │
00:10:52 #25358 [verbose] > │ #endif │
00:10:52 #25359 [verbose] > │ |> fun x -> _v337 <- Some x │
00:10:52 #25360 [verbose] > │ let v344 : US2 = _v337.Value │
00:10:52 #25361 [verbose] > │ let v368 : bool = │
00:10:52 #25362 [verbose] > │ match v344 with │
00:10:52 #25363 [verbose] > │ | US2_0(v345) -> (* Some *) │
00:10:52 #25364 [verbose] > │ let v346 : System.Runtime.InteropServices.OSPlatform = │
00:10:52 #25365 [verbose] > │ System.Runtime.InteropServices.OSPlatform.Windows │
00:10:52 #25366 [verbose] > │ let v347 : (System.Runtime.InteropServices.OSPlatform -> bool) = │
00:10:52 #25367 [verbose] > │ System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform │
00:10:52 #25368 [verbose] > │ let v348 : bool = v347 v346 │
00:10:52 #25369 [verbose] > │ let v349 : int64 = │
00:10:52 #25370 [verbose] > │ if v348 then │
00:10:52 #25371 [verbose] > │ 50L │
00:10:52 #25372 [verbose] > │ else │
00:10:52 #25373 [verbose] > │ 0L │
00:10:52 #25374 [verbose] > │ let v350 : System.Runtime.InteropServices.OSPlatform = │
00:10:52 #25375 [verbose] > │ System.Runtime.InteropServices.OSPlatform.Windows │
00:10:52 #25376 [verbose] > │ let v351 : (System.Runtime.InteropServices.OSPlatform -> bool) = │
00:10:52 #25377 [verbose] > │ System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform │
00:10:52 #25378 [verbose] > │ let v352 : bool = v351 v350 │
00:10:52 #25379 [verbose] > │ let v353 : int64 = │
00:10:52 #25380 [verbose] > │ if v352 then │
00:10:52 #25381 [verbose] > │ 150L │
00:10:52 #25382 [verbose] > │ else │
00:10:52 #25383 [verbose] > │ 0L │
00:10:52 #25384 [verbose] > │ let v354 : string = $"%A{v345}" │
00:10:52 #25385 [verbose] > │ System.Console.WriteLine v354 │
00:10:52 #25386 [verbose] > │ let v355 : string = $"%A{v345}" │
00:10:52 #25387 [verbose] > │ System.Console.WriteLine v355 │
00:10:52 #25388 [verbose] > │ let v356 : bool = v345 >= v349 │
00:10:52 #25389 [verbose] > │ let v358 : bool = │
00:10:52 #25390 [verbose] > │ if v356 then │
00:10:52 #25391 [verbose] > │ true │
00:10:52 #25392 [verbose] > │ else │
00:10:52 #25393 [verbose] > │ method11(v356) │
00:10:52 #25394 [verbose] > │ let v359 : string = $"__expect / actual: %A{v345} / expected: │
00:10:52 #25395 [verbose] > │ %A{v349}" │
00:10:52 #25396 [verbose] > │ let v360 : bool = v358 = false │
00:10:52 #25397 [verbose] > │ if v360 then │
00:10:52 #25398 [verbose] > │ failwith<unit> v359 │
00:10:52 #25399 [verbose] > │ let v361 : string = $"%A{v345}" │
00:10:52 #25400 [verbose] > │ System.Console.WriteLine v361 │
00:10:52 #25401 [verbose] > │ let v362 : bool = v345 <= v353 │
00:10:52 #25402 [verbose] > │ let v364 : bool = │
00:10:52 #25403 [verbose] > │ if v362 then │
00:10:52 #25404 [verbose] > │ true │
00:10:52 #25405 [verbose] > │ else │
00:10:52 #25406 [verbose] > │ method11(v362) │
00:10:52 #25407 [verbose] > │ let v365 : string = $"__expect / actual: %A{v345} / expected: │
00:10:52 #25408 [verbose] > │ %A{v353}" │
00:10:52 #25409 [verbose] > │ let v366 : bool = v364 = false │
00:10:52 #25410 [verbose] > │ if v366 then │
00:10:52 #25411 [verbose] > │ failwith<unit> v365 │
00:10:52 #25412 [verbose] > │ let v367 : string = $"__expect / actual: %A{v345} / expected: │
00:10:52 #25413 [verbose] > │ %A{struct (v349, v353)}" │
00:10:52 #25414 [verbose] > │ true │
00:10:52 #25415 [verbose] > │ | _ -> │
00:10:52 #25416 [verbose] > │ false │
00:10:52 #25417 [verbose] > │ let v369 : string = $"%A{v368}" │
00:10:52 #25418 [verbose] > │ System.Console.WriteLine v369 │
00:10:52 #25419 [verbose] > │ let v371 : bool = │
00:10:52 #25420 [verbose] > │ if v368 then │
00:10:52 #25421 [verbose] > │ true │
00:10:52 #25422 [verbose] > │ else │
00:10:52 #25423 [verbose] > │ method11(v368) │
00:10:52 #25424 [verbose] > │ let v372 : string = $"__expect / actual: %A{v368} / expected: %A{true}" │
00:10:52 #25425 [verbose] > │ let v373 : bool = v371 = false │
00:10:52 #25426 [verbose] > │ if v373 then │
00:10:52 #25427 [verbose] > │ failwith<unit> v372 │
00:10:52 #25428 [verbose] > │ method0() │
00:10:52 #25429 [verbose] > │ │
00:10:52 #25430 [verbose] > │ 00:00:00 #1 [debug] 1 │
00:10:52 #25431 [verbose] > │ 00:00:00 #2 [debug] 2 │
00:10:52 #25432 [verbose] > │ 00:00:00 #3 [debug] 3 │
00:10:52 #25433 [verbose] > │ 00:00:00 #4 [debug] _1 │
00:10:52 #25434 [verbose] > │ 00:00:00 #5 [debug] _2 │
00:10:52 #25435 [verbose] > │ 00:00:00 #6 [debug] 4 │
00:10:52 #25436 [verbose] > │ 00:00:00 #7 [warning] delete_file_async │
00:10:52 #25437 [verbose] > │ 00:00:01 #8 [warning] delete_file_async │
00:10:52 #25438 [verbose] > │ 00:00:01 #9 [debug] _3 │
00:10:52 #25439 [verbose] > │ 00:00:02 #10 [debug] 5 │
00:10:52 #25440 [verbose] > │ 00:00:02 #11 [debug] 6 │
00:10:52 #25441 [verbose] > │ 128L │
00:10:52 #25442 [verbose] > │ 128L │
00:10:52 #25443 [verbose] > │ 128L │
00:10:52 #25444 [verbose] > │ true │
00:10:52 #25445 [verbose] > │ │
00:10:52 #25446 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:52 #25447 [verbose] >
00:10:52 #25448 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:52 #25449 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:52 #25450 [verbose] > │ ## move_file_async │
00:10:52 #25451 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:52 #25452 [verbose] >
00:10:52 #25453 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:52 #25454 [verbose] > inl move_file_async new_path old_path : _ i64 =
00:10:52 #25455 [verbose] > run_target function
00:10:52 #25456 [verbose] > | Fsharp (Native) => fun () =>
00:10:52 #25457 [verbose] > let rec loop (retry : i64) =
00:10:52 #25458 [verbose] > fun () =>
00:10:52 #25459 [verbose] > try_unit
00:10:52 #25460 [verbose] > fun () =>
00:10:52 #25461 [verbose] > file_move old_path new_path
00:10:52 #25462 [verbose] > return retry
00:10:52 #25463 [verbose] > fun ex =>
00:10:52 #25464 [verbose] > if retry % 100 = 0 then
00:10:52 #25465 [verbose] > let get_locals () =
00:10:52 #25466 [verbose] > inl ex = ex |> sm'.format_exception
00:10:52 #25467 [verbose] > $'$"old_path: {!old_path |> !get_file_name}
00:10:52 #25468 [verbose] > / new_path: {!new_path |> !get_file_name} / ex: {!ex} / {!get_locals ()}"' :
00:10:52 #25469 [verbose] > string
00:10:52 #25470 [verbose] > trace Warning (fun () => "move_file_async")
00:10:52 #25471 [verbose] > get_locals
00:10:52 #25472 [verbose] > async.sleep 10 |> async.do
00:10:52 #25473 [verbose] > loop (retry + 1) |> async.return_await
00:10:52 #25474 [verbose] > |> async.new_async_unit
00:10:52 #25475 [verbose] > loop 0
00:10:52 #25476 [verbose] > | _ => fun () => null ()
00:10:52 #25477 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\6bd99c73bf581c1cc952902c201913354fd4ed114bc51499734e65026d75088a\main.spi
00:10:52 #25478 [verbose] >
00:10:52 #25479 [verbose] > ╭─[ 253.42ms - stdout ]────────────────────────────────────────────────────────╮
00:10:52 #25480 [verbose] > │ () │
00:10:52 #25481 [verbose] > │ │
00:10:52 #25482 [verbose] > │ │
00:10:52 #25483 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:52 #25484 [verbose] >
00:10:52 #25485 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:52 #25486 [verbose] > // // test
00:10:52 #25487 [verbose] >
00:10:52 #25488 [verbose] > inl lock_file path =
00:10:52 #25489 [verbose] > fun () =>
00:10:52 #25490 [verbose] > trace Debug (fun () => "_1") get_locals
00:10:52 #25491 [verbose] > file_stream
00:10:52 #25492 [verbose] > path
00:10:52 #25493 [verbose] > ModeOpen
00:10:52 #25494 [verbose] > AccessReadWrite
00:10:52 #25495 [verbose] > ShareNone
00:10:52 #25496 [verbose] > |> use
00:10:52 #25497 [verbose] > |> ignore
00:10:52 #25498 [verbose] > trace Debug (fun () => "_2") get_locals
00:10:52 #25499 [verbose] > async.sleep 2000 |> async.do
00:10:52 #25500 [verbose] > trace Debug (fun () => "_3") get_locals
00:10:52 #25501 [verbose] > |> async.new_async
00:10:52 #25502 [verbose] >
00:10:52 #25503 [verbose] > inl temp_dir, disposable = create_temp_directory ()
00:10:52 #25504 [verbose] > disposable |> use |> ignore
00:10:52 #25505 [verbose] > let path = temp_dir </> "test.txt"
00:10:52 #25506 [verbose] > let new_path = temp_dir </> "test2.txt"
00:10:52 #25507 [verbose] >
00:10:52 #25508 [verbose] > fun () =>
00:10:52 #25509 [verbose] > trace Debug (fun () => "1") get_locals
00:10:52 #25510 [verbose] > "0" |> write_all_text_async path |> async.do
00:10:52 #25511 [verbose] > trace Debug (fun () => "2") get_locals
00:10:52 #25512 [verbose] > inl child = lock_file path |> async.start_child |> async.let'
00:10:52 #25513 [verbose] > trace Debug (fun () => "3") get_locals
00:10:52 #25514 [verbose] > async.sleep 1 |> async.do
00:10:52 #25515 [verbose] > trace Debug (fun () => "4") get_locals
00:10:52 #25516 [verbose] > inl retries1 = path |> move_file_async new_path |> async.let'
00:10:52 #25517 [verbose] > trace Debug (fun () => "5") get_locals
00:10:52 #25518 [verbose] > inl retries2 = new_path |> wait_for_file_access None |> async.let'
00:10:52 #25519 [verbose] > trace Debug (fun () => "6") get_locals
00:10:52 #25520 [verbose] > inl text = new_path |> read_all_text_async |> async.let'
00:10:52 #25521 [verbose] > trace Debug (fun () => "7") get_locals
00:10:52 #25522 [verbose] > child |> async.do
00:10:52 #25523 [verbose] > trace Debug (fun () => "8") get_locals
00:10:52 #25524 [verbose] > (retries1, retries2, text) |> return
00:10:52 #25525 [verbose] > |> async.new_async_unit
00:10:52 #25526 [verbose] > |> async.run_with_timeout 3000
00:10:52 #25527 [verbose] > |> function
00:10:52 #25528 [verbose] > | Some (retries1, retries2, text) =>
00:10:52 #25529 [verbose] > retries1
00:10:52 #25530 [verbose] > |> _assert_between
00:10:52 #25531 [verbose] > (if runtime.is_windows () then 50i64 else 0)
00:10:52 #25532 [verbose] > (if runtime.is_windows () then 150 else 0)
00:10:52 #25533 [verbose] >
00:10:52 #25534 [verbose] > retries2
00:10:52 #25535 [verbose] > |> _assert_between
00:10:52 #25536 [verbose] > (if runtime.is_windows () then 0i64 else 100)
00:10:52 #25537 [verbose] > (if runtime.is_windows () then 0 else 200)
00:10:52 #25538 [verbose] >
00:10:52 #25539 [verbose] > text |> _assert_eq (join "0")
00:10:52 #25540 [verbose] >
00:10:52 #25541 [verbose] > true
00:10:52 #25542 [verbose] > | _ => false
00:10:52 #25543 [verbose] > |> _assert_eq true
00:10:53 #25544 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\76b8deba2ac80a4c78206bb81d4b43ad2ecee0caf7e417db663ef40b72da7ef8\main.spi
00:10:56 #25545 [verbose] >
00:10:56 #25546 [verbose] > ╭─[ 3.10s - stdout ]───────────────────────────────────────────────────────────╮
00:10:56 #25547 [verbose] > │ type IPathJoin = abstract join: [<System.ParamArray>] paths: string[] -> │
00:10:56 #25548 [verbose] > │ string │
00:10:56 #25549 [verbose] > │ module State = let mutable trace_state = None │
00:10:56 #25550 [verbose] > │ type [<Struct>] US0 = │
00:10:56 #25551 [verbose] > │ | US0_0 │
00:10:56 #25552 [verbose] > │ | US0_1 │
00:10:56 #25553 [verbose] > │ | US0_2 │
00:10:56 #25554 [verbose] > │ | US0_3 │
00:10:56 #25555 [verbose] > │ | US0_4 │
00:10:56 #25556 [verbose] > │ and Mut0 = {mutable l0 : int64} │
00:10:56 #25557 [verbose] > │ and Mut1 = {mutable l0 : bool} │
00:10:56 #25558 [verbose] > │ and Mut2 = {mutable l0 : US0} │
00:10:56 #25559 [verbose] > │ and [<Struct>] US1 = │
00:10:56 #25560 [verbose] > │ | US1_0 of f0_0 : int64 │
00:10:56 #25561 [verbose] > │ | US1_1 │
00:10:56 #25562 [verbose] > │ and [<Struct>] US2 = │
00:10:56 #25563 [verbose] > │ | US2_0 of f0_0 : int64 │
00:10:56 #25564 [verbose] > │ | US2_1 │
00:10:56 #25565 [verbose] > │ and [<Struct>] US3 = │
00:10:56 #25566 [verbose] > │ | US3_0 of f0_0 : int64 * f0_1 : int64 * f0_2 : string │
00:10:56 #25567 [verbose] > │ | US3_1 │
00:10:56 #25568 [verbose] > │ and [<Struct>] US4 = │
00:10:56 #25569 [verbose] > │ | US4_0 of f0_0 : int64 * f0_1 : int64 * f0_2 : string │
00:10:56 #25570 [verbose] > │ | US4_1 of f1_0 : exn │
00:10:56 #25571 [verbose] > │ and [<Struct>] US5 = │
00:10:56 #25572 [verbose] > │ | US5_0 of f0_0 : int64 * f0_1 : int64 * f0_2 : string │
00:10:56 #25573 [verbose] > │ | US5_1 of f1_0 : exn │
00:10:56 #25574 [verbose] > │ let rec closure0 () () : string = │
00:10:56 #25575 [verbose] > │ let v0 : string option = None │
00:10:56 #25576 [verbose] > │ let mutable _v0 = v0 │
00:10:56 #25577 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #25578 [verbose] > │ let v1 : string = null |> unbox<string> │
00:10:56 #25579 [verbose] > │ v1 │
00:10:56 #25580 [verbose] > │ #endif │
00:10:56 #25581 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #25582 [verbose] > │ let v2 : string = null |> unbox<string> │
00:10:56 #25583 [verbose] > │ v2 │
00:10:56 #25584 [verbose] > │ #endif │
00:10:56 #25585 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #25586 [verbose] > │ let v3 : string = null |> unbox<string> │
00:10:56 #25587 [verbose] > │ v3 │
00:10:56 #25588 [verbose] > │ #endif │
00:10:56 #25589 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #25590 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #25591 [verbose] > │ let v4 : string = │
00:10:56 #25592 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:10:56 #25593 [verbose] > │ v4 │
00:10:56 #25594 [verbose] > │ #endif │
00:10:56 #25595 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #25596 [verbose] > │ let v5 : string = null |> unbox<string> │
00:10:56 #25597 [verbose] > │ v5 │
00:10:56 #25598 [verbose] > │ #endif │
00:10:56 #25599 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #25600 [verbose] > │ Unchecked.defaultof<string> │
00:10:56 #25601 [verbose] > │ #endif │
00:10:56 #25602 [verbose] > │ |> fun x -> _v0 <- Some x │
00:10:56 #25603 [verbose] > │ let v6 : string = _v0.Value │
00:10:56 #25604 [verbose] > │ v6 │
00:10:56 #25605 [verbose] > │ and method1 (v0 : string) : string = │
00:10:56 #25606 [verbose] > │ v0 │
00:10:56 #25607 [verbose] > │ and closure2 () () : string = │
00:10:56 #25608 [verbose] > │ let v0 : string = "" │
00:10:56 #25609 [verbose] > │ v0 │
00:10:56 #25610 [verbose] > │ and closure1 (v0 : string, v1 : string) () : string = │
00:10:56 #25611 [verbose] > │ let v2 : (unit -> string) = closure2() │
00:10:56 #25612 [verbose] > │ let v3 : string = $"temp_folder: {v0} / result: {v1} {v2 ()}" │
00:10:56 #25613 [verbose] > │ v3 │
00:10:56 #25614 [verbose] > │ and closure5 () (v0 : string) : string = │
00:10:56 #25615 [verbose] > │ let v1 : string option = None │
00:10:56 #25616 [verbose] > │ let mutable _v1 = v1 │
00:10:56 #25617 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #25618 [verbose] > │ let v2 : string = null |> unbox<string> │
00:10:56 #25619 [verbose] > │ v2 │
00:10:56 #25620 [verbose] > │ #endif │
00:10:56 #25621 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #25622 [verbose] > │ let v3 : string = null |> unbox<string> │
00:10:56 #25623 [verbose] > │ v3 │
00:10:56 #25624 [verbose] > │ #endif │
00:10:56 #25625 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #25626 [verbose] > │ let v4 : string = null |> unbox<string> │
00:10:56 #25627 [verbose] > │ v4 │
00:10:56 #25628 [verbose] > │ #endif │
00:10:56 #25629 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #25630 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #25631 [verbose] > │ let v5 : (string -> string) = System.IO.Path.GetFileName │
00:10:56 #25632 [verbose] > │ let v6 : string = v5 v0 │
00:10:56 #25633 [verbose] > │ v6 │
00:10:56 #25634 [verbose] > │ #endif │
00:10:56 #25635 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #25636 [verbose] > │ let v7 : string = null |> unbox<string> │
00:10:56 #25637 [verbose] > │ v7 │
00:10:56 #25638 [verbose] > │ #endif │
00:10:56 #25639 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #25640 [verbose] > │ Unchecked.defaultof<string> │
00:10:56 #25641 [verbose] > │ #endif │
00:10:56 #25642 [verbose] > │ |> fun x -> _v1 <- Some x │
00:10:56 #25643 [verbose] > │ let v8 : string = _v1.Value │
00:10:56 #25644 [verbose] > │ v8 │
00:10:56 #25645 [verbose] > │ and method3 (v0 : string, v1 : string) : string = │
00:10:56 #25646 [verbose] > │ let v2 : (string -> string) = closure5() │
00:10:56 #25647 [verbose] > │ let v3 : (unit -> string) = closure2() │
00:10:56 #25648 [verbose] > │ let v4 : string = $"path: {v0 |> v2} / ex: {v1} / {v3 ()}" │
00:10:56 #25649 [verbose] > │ v4 │
00:10:56 #25650 [verbose] > │ and closure4 (v0 : string, v1 : string) () : string = │
00:10:56 #25651 [verbose] > │ method3(v0, v1) │
00:10:56 #25652 [verbose] > │ and method2 (v0 : string, v1 : int64) : Async<int64> = │
00:10:56 #25653 [verbose] > │ let v2 : Async<int64> option = None │
00:10:56 #25654 [verbose] > │ let mutable _v2 = v2 │
00:10:56 #25655 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #25656 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #25657 [verbose] > │ v3 │
00:10:56 #25658 [verbose] > │ #endif │
00:10:56 #25659 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #25660 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #25661 [verbose] > │ v4 │
00:10:56 #25662 [verbose] > │ #endif │
00:10:56 #25663 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #25664 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #25665 [verbose] > │ v5 │
00:10:56 #25666 [verbose] > │ #endif │
00:10:56 #25667 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #25668 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #25669 [verbose] > │ let v6 : Async<int64> option = None │
00:10:56 #25670 [verbose] > │ let mutable _v6 = v6 │
00:10:56 #25671 [verbose] > │ async { │
00:10:56 #25672 [verbose] > │ try │
00:10:56 #25673 [verbose] > │ let v7 : unit option = None │
00:10:56 #25674 [verbose] > │ let mutable _v7 = v7 │
00:10:56 #25675 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #25676 [verbose] > │ null |> unbox<unit> │
00:10:56 #25677 [verbose] > │ () │
00:10:56 #25678 [verbose] > │ #endif │
00:10:56 #25679 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #25680 [verbose] > │ null |> unbox<unit> │
00:10:56 #25681 [verbose] > │ () │
00:10:56 #25682 [verbose] > │ #endif │
00:10:56 #25683 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #25684 [verbose] > │ null |> unbox<unit> │
00:10:56 #25685 [verbose] > │ () │
00:10:56 #25686 [verbose] > │ #endif │
00:10:56 #25687 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #25688 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #25689 [verbose] > │ System.IO.Directory.Delete (v0, true) │
00:10:56 #25690 [verbose] > │ () │
00:10:56 #25691 [verbose] > │ #endif │
00:10:56 #25692 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #25693 [verbose] > │ null |> unbox<unit> │
00:10:56 #25694 [verbose] > │ () │
00:10:56 #25695 [verbose] > │ #endif │
00:10:56 #25696 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #25697 [verbose] > │ Unchecked.defaultof<unit> │
00:10:56 #25698 [verbose] > │ #endif │
00:10:56 #25699 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:56 #25700 [verbose] > │ _v7.Value │
00:10:56 #25701 [verbose] > │ return v1 │
00:10:56 #25702 [verbose] > │ with ex -> │
00:10:56 #25703 [verbose] > │ let v8 : exn = ex │
00:10:56 #25704 [verbose] > │ let v9 : int64 = v1 % 100L │
00:10:56 #25705 [verbose] > │ let v10 : bool = v9 = 0L │
00:10:56 #25706 [verbose] > │ if v10 then │
00:10:56 #25707 [verbose] > │ let v11 : string option = None │
00:10:56 #25708 [verbose] > │ let mutable _v11 = v11 │
00:10:56 #25709 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #25710 [verbose] > │ let v12 : string = $"%A{v8}" │
00:10:56 #25711 [verbose] > │ v12 │
00:10:56 #25712 [verbose] > │ #endif │
00:10:56 #25713 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #25714 [verbose] > │ let v13 : string = $"%A{v8}" │
00:10:56 #25715 [verbose] > │ v13 │
00:10:56 #25716 [verbose] > │ #endif │
00:10:56 #25717 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #25718 [verbose] > │ let v14 : string = $"%A{v8}" │
00:10:56 #25719 [verbose] > │ v14 │
00:10:56 #25720 [verbose] > │ #endif │
00:10:56 #25721 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #25722 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #25723 [verbose] > │ let v15 : string = $"{v8.GetType ()}: {v8.Message}" │
00:10:56 #25724 [verbose] > │ v15 │
00:10:56 #25725 [verbose] > │ #endif │
00:10:56 #25726 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #25727 [verbose] > │ let v16 : string = $"%A{v8}" │
00:10:56 #25728 [verbose] > │ v16 │
00:10:56 #25729 [verbose] > │ #endif │
00:10:56 #25730 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:56 #25731 [verbose] > │ FABLE_COMPILER_DART │
00:10:56 #25732 [verbose] > │ Unchecked.defaultof<string> │
00:10:56 #25733 [verbose] > │ #endif │
00:10:56 #25734 [verbose] > │ |> fun x -> _v11 <- Some x │
00:10:56 #25735 [verbose] > │ let v17 : string = _v11.Value │
00:10:56 #25736 [verbose] > │ let v18 : (unit -> string) = closure4(v0, v17) │
00:10:56 #25737 [verbose] > │ let v19 : string = $"delete_directory_async / {v18 ()}" │
00:10:56 #25738 [verbose] > │ System.Console.WriteLine v19 │
00:10:56 #25739 [verbose] > │ () │
00:10:56 #25740 [verbose] > │ let v20 : Async<unit> option = None │
00:10:56 #25741 [verbose] > │ let mutable _v20 = v20 │
00:10:56 #25742 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #25743 [verbose] > │ let v21 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #25744 [verbose] > │ v21 │
00:10:56 #25745 [verbose] > │ #endif │
00:10:56 #25746 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #25747 [verbose] > │ let v22 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #25748 [verbose] > │ v22 │
00:10:56 #25749 [verbose] > │ #endif │
00:10:56 #25750 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #25751 [verbose] > │ let v23 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #25752 [verbose] > │ v23 │
00:10:56 #25753 [verbose] > │ #endif │
00:10:56 #25754 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #25755 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #25756 [verbose] > │ let v24 : (int32 -> Async<unit>) = Async.Sleep │
00:10:56 #25757 [verbose] > │ let v25 : Async<unit> = v24 10 │
00:10:56 #25758 [verbose] > │ v25 │
00:10:56 #25759 [verbose] > │ #endif │
00:10:56 #25760 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #25761 [verbose] > │ let v26 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #25762 [verbose] > │ v26 │
00:10:56 #25763 [verbose] > │ #endif │
00:10:56 #25764 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #25765 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:56 #25766 [verbose] > │ #endif │
00:10:56 #25767 [verbose] > │ |> fun x -> _v20 <- Some x │
00:10:56 #25768 [verbose] > │ let v27 : Async<unit> = _v20.Value │
00:10:56 #25769 [verbose] > │ do! v27 │
00:10:56 #25770 [verbose] > │ let v28 : int64 = v1 + 1L │
00:10:56 #25771 [verbose] > │ let v29 : Async<int64> = method2(v0, v28) │
00:10:56 #25772 [verbose] > │ return! v29 │
00:10:56 #25773 [verbose] > │ (* │
00:10:56 #25774 [verbose] > │ let v30 : int64 = *) │
00:10:56 #25775 [verbose] > │ } │
00:10:56 #25776 [verbose] > │ |> fun x -> _v6 <- Some x │
00:10:56 #25777 [verbose] > │ let v31 : Async<int64> = _v6 |> Option.get │
00:10:56 #25778 [verbose] > │ v31 │
00:10:56 #25779 [verbose] > │ #endif │
00:10:56 #25780 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #25781 [verbose] > │ let v32 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #25782 [verbose] > │ v32 │
00:10:56 #25783 [verbose] > │ #endif │
00:10:56 #25784 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #25785 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:56 #25786 [verbose] > │ #endif │
00:10:56 #25787 [verbose] > │ |> fun x -> _v2 <- Some x │
00:10:56 #25788 [verbose] > │ let v33 : Async<int64> = _v2.Value │
00:10:56 #25789 [verbose] > │ v33 │
00:10:56 #25790 [verbose] > │ and closure3 (v0 : string) () : unit = │
00:10:56 #25791 [verbose] > │ let v1 : Async<int64> option = None │
00:10:56 #25792 [verbose] > │ let mutable _v1 = v1 │
00:10:56 #25793 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #25794 [verbose] > │ let v2 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #25795 [verbose] > │ v2 │
00:10:56 #25796 [verbose] > │ #endif │
00:10:56 #25797 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #25798 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #25799 [verbose] > │ v3 │
00:10:56 #25800 [verbose] > │ #endif │
00:10:56 #25801 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #25802 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #25803 [verbose] > │ v4 │
00:10:56 #25804 [verbose] > │ #endif │
00:10:56 #25805 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #25806 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #25807 [verbose] > │ let v5 : int64 = 0L │
00:10:56 #25808 [verbose] > │ let v6 : Async<int64> = method2(v0, v5) │
00:10:56 #25809 [verbose] > │ v6 │
00:10:56 #25810 [verbose] > │ #endif │
00:10:56 #25811 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #25812 [verbose] > │ let v7 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #25813 [verbose] > │ v7 │
00:10:56 #25814 [verbose] > │ #endif │
00:10:56 #25815 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #25816 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:56 #25817 [verbose] > │ #endif │
00:10:56 #25818 [verbose] > │ |> fun x -> _v1 <- Some x │
00:10:56 #25819 [verbose] > │ let v8 : Async<int64> = _v1.Value │
00:10:56 #25820 [verbose] > │ let v9 : Async<unit> option = None │
00:10:56 #25821 [verbose] > │ let mutable _v9 = v9 │
00:10:56 #25822 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #25823 [verbose] > │ let v10 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #25824 [verbose] > │ v10 │
00:10:56 #25825 [verbose] > │ #endif │
00:10:56 #25826 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #25827 [verbose] > │ let v11 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #25828 [verbose] > │ v11 │
00:10:56 #25829 [verbose] > │ #endif │
00:10:56 #25830 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #25831 [verbose] > │ let v12 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #25832 [verbose] > │ v12 │
00:10:56 #25833 [verbose] > │ #endif │
00:10:56 #25834 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #25835 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #25836 [verbose] > │ let v13 : (Async<int64> -> Async<unit>) = Async.Ignore │
00:10:56 #25837 [verbose] > │ let v14 : Async<unit> = v13 v8 │
00:10:56 #25838 [verbose] > │ v14 │
00:10:56 #25839 [verbose] > │ #endif │
00:10:56 #25840 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #25841 [verbose] > │ let v15 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #25842 [verbose] > │ v15 │
00:10:56 #25843 [verbose] > │ #endif │
00:10:56 #25844 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #25845 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:56 #25846 [verbose] > │ #endif │
00:10:56 #25847 [verbose] > │ |> fun x -> _v9 <- Some x │
00:10:56 #25848 [verbose] > │ let v16 : Async<unit> = _v9.Value │
00:10:56 #25849 [verbose] > │ let v17 : unit option = None │
00:10:56 #25850 [verbose] > │ let mutable _v17 = v17 │
00:10:56 #25851 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #25852 [verbose] > │ null |> unbox<unit> │
00:10:56 #25853 [verbose] > │ () │
00:10:56 #25854 [verbose] > │ #endif │
00:10:56 #25855 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #25856 [verbose] > │ null |> unbox<unit> │
00:10:56 #25857 [verbose] > │ () │
00:10:56 #25858 [verbose] > │ #endif │
00:10:56 #25859 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #25860 [verbose] > │ null |> unbox<unit> │
00:10:56 #25861 [verbose] > │ () │
00:10:56 #25862 [verbose] > │ #endif │
00:10:56 #25863 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #25864 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #25865 [verbose] > │ let v18 : (Async<unit> -> unit) = Async.RunSynchronously │
00:10:56 #25866 [verbose] > │ v18 v16 │
00:10:56 #25867 [verbose] > │ () │
00:10:56 #25868 [verbose] > │ #endif │
00:10:56 #25869 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #25870 [verbose] > │ null |> unbox<unit> │
00:10:56 #25871 [verbose] > │ () │
00:10:56 #25872 [verbose] > │ #endif │
00:10:56 #25873 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #25874 [verbose] > │ Unchecked.defaultof<unit> │
00:10:56 #25875 [verbose] > │ #endif │
00:10:56 #25876 [verbose] > │ |> fun x -> _v17 <- Some x │
00:10:56 #25877 [verbose] > │ _v17.Value │
00:10:56 #25878 [verbose] > │ () │
00:10:56 #25879 [verbose] > │ and method4 () : string = │
00:10:56 #25880 [verbose] > │ let v0 : string = "test.txt" │
00:10:56 #25881 [verbose] > │ v0 │
00:10:56 #25882 [verbose] > │ and method5 () : string = │
00:10:56 #25883 [verbose] > │ let v0 : string = "test2.txt" │
00:10:56 #25884 [verbose] > │ v0 │
00:10:56 #25885 [verbose] > │ and closure6 () () : string = │
00:10:56 #25886 [verbose] > │ let v0 : string = "1" │
00:10:56 #25887 [verbose] > │ v0 │
00:10:56 #25888 [verbose] > │ and method7 (v0 : int64 option) : int64 option = │
00:10:56 #25889 [verbose] > │ v0 │
00:10:56 #25890 [verbose] > │ and method8 (v0 : int64 option) : int64 option = │
00:10:56 #25891 [verbose] > │ v0 │
00:10:56 #25892 [verbose] > │ and closure7 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) = │
00:10:56 #25893 [verbose] > │ let v0 : Mut1 = {l0 = true} : Mut1 │
00:10:56 #25894 [verbose] > │ let v1 : Mut0 = {l0 = 0L} : Mut0 │
00:10:56 #25895 [verbose] > │ let v2 : US0 = US0_0 │
00:10:56 #25896 [verbose] > │ let v3 : Mut2 = {l0 = v2} : Mut2 │
00:10:56 #25897 [verbose] > │ let v4 : Mut1 = {l0 = false} : Mut1 │
00:10:56 #25898 [verbose] > │ let v5 : int64 option option = None │
00:10:56 #25899 [verbose] > │ let mutable _v5 = v5 │
00:10:56 #25900 [verbose] > │ #if INTERACTIVE || !FABLE_COMPILER │
00:10:56 #25901 [verbose] > │ let v6 : string option = None │
00:10:56 #25902 [verbose] > │ let mutable _v6 = v6 │
00:10:56 #25903 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #25904 [verbose] > │ let v7 : string = null |> unbox<string> │
00:10:56 #25905 [verbose] > │ v7 │
00:10:56 #25906 [verbose] > │ #endif │
00:10:56 #25907 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #25908 [verbose] > │ let v8 : string = null |> unbox<string> │
00:10:56 #25909 [verbose] > │ v8 │
00:10:56 #25910 [verbose] > │ #endif │
00:10:56 #25911 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #25912 [verbose] > │ let v9 : string = null |> unbox<string> │
00:10:56 #25913 [verbose] > │ v9 │
00:10:56 #25914 [verbose] > │ #endif │
00:10:56 #25915 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #25916 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #25917 [verbose] > │ let v10 : string = │
00:10:56 #25918 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:10:56 #25919 [verbose] > │ v10 │
00:10:56 #25920 [verbose] > │ #endif │
00:10:56 #25921 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #25922 [verbose] > │ let v11 : string = null |> unbox<string> │
00:10:56 #25923 [verbose] > │ v11 │
00:10:56 #25924 [verbose] > │ #endif │
00:10:56 #25925 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #25926 [verbose] > │ Unchecked.defaultof<string> │
00:10:56 #25927 [verbose] > │ #endif │
00:10:56 #25928 [verbose] > │ |> fun x -> _v6 <- Some x │
00:10:56 #25929 [verbose] > │ let v12 : string = _v6.Value │
00:10:56 #25930 [verbose] > │ let v14 : bool = v12 = "Microsoft.DotNet.Interactive.App" │
00:10:56 #25931 [verbose] > │ let v15 : bool = v14 <> true │
00:10:56 #25932 [verbose] > │ let v21 : US1 = │
00:10:56 #25933 [verbose] > │ if v15 then │
00:10:56 #25934 [verbose] > │ let v16 : System.DateTime = System.DateTime.Now │
00:10:56 #25935 [verbose] > │ let v17 : (System.DateTime -> int64) = _.Ticks │
00:10:56 #25936 [verbose] > │ let v18 : int64 = v17 v16 │
00:10:56 #25937 [verbose] > │ US1_0(v18) │
00:10:56 #25938 [verbose] > │ else │
00:10:56 #25939 [verbose] > │ US1_1 │
00:10:56 #25940 [verbose] > │ let v26 : int64 option = │
00:10:56 #25941 [verbose] > │ match v21 with │
00:10:56 #25942 [verbose] > │ | US1_1 -> (* None *) │
00:10:56 #25943 [verbose] > │ let v24 : int64 option = None │
00:10:56 #25944 [verbose] > │ v24 │
00:10:56 #25945 [verbose] > │ | US1_0(v22) -> (* Some *) │
00:10:56 #25946 [verbose] > │ let v23 : int64 option = Some v22 │
00:10:56 #25947 [verbose] > │ v23 │
00:10:56 #25948 [verbose] > │ let v27 : int64 option = method7(v26) │
00:10:56 #25949 [verbose] > │ v27 │
00:10:56 #25950 [verbose] > │ #else │
00:10:56 #25951 [verbose] > │ let v28 : int64 option = None │
00:10:56 #25952 [verbose] > │ let v29 : int64 option = method8(v28) │
00:10:56 #25953 [verbose] > │ v29 │
00:10:56 #25954 [verbose] > │ #endif │
00:10:56 #25955 [verbose] > │ |> fun x -> _v5 <- Some x │
00:10:56 #25956 [verbose] > │ let v30 : int64 option = _v5.Value │
00:10:56 #25957 [verbose] > │ struct (v1, v4, v0, v3, v30) │
00:10:56 #25958 [verbose] > │ and closure9 () (v0 : int64) : US2 = │
00:10:56 #25959 [verbose] > │ US2_0(v0) │
00:10:56 #25960 [verbose] > │ and method9 () : (int64 -> US2) = │
00:10:56 #25961 [verbose] > │ closure9() │
00:10:56 #25962 [verbose] > │ and method10 () : string = │
00:10:56 #25963 [verbose] > │ let v0 : string = "" │
00:10:56 #25964 [verbose] > │ v0 │
00:10:56 #25965 [verbose] > │ and closure8 (v0 : US0, v1 : (unit -> string), v2 : (unit -> string)) () : │
00:10:56 #25966 [verbose] > │ string = │
00:10:56 #25967 [verbose] > │ let v3 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:10:56 #25968 [verbose] > │ closure7() │
00:10:56 #25969 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:10:56 #25970 [verbose] > │ let struct (v4 : Mut0, v5 : Mut1, v6 : Mut1, v7 : Mut2, v8 : int64 │
00:10:56 #25971 [verbose] > │ option) = State.trace_state.Value │
00:10:56 #25972 [verbose] > │ let v9 : string option = None │
00:10:56 #25973 [verbose] > │ let mutable _v9 = v9 │
00:10:56 #25974 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #25975 [verbose] > │ let v10 : (int64 -> US2) = method9() │
00:10:56 #25976 [verbose] > │ let v11 : US2 = US2_1 │
00:10:56 #25977 [verbose] > │ let v12 : US2 = v8 |> Option.map v10 |> Option.defaultValue v11 │
00:10:56 #25978 [verbose] > │ let v30 : System.DateTime = │
00:10:56 #25979 [verbose] > │ match v12 with │
00:10:56 #25980 [verbose] > │ | US2_1 -> (* None *) │
00:10:56 #25981 [verbose] > │ let v28 : System.DateTime = System.DateTime.Now │
00:10:56 #25982 [verbose] > │ v28 │
00:10:56 #25983 [verbose] > │ | US2_0(v13) -> (* Some *) │
00:10:56 #25984 [verbose] > │ let v14 : System.DateTime = System.DateTime.Now │
00:10:56 #25985 [verbose] > │ let v15 : (System.DateTime -> int64) = _.Ticks │
00:10:56 #25986 [verbose] > │ let v16 : int64 = v15 v14 │
00:10:56 #25987 [verbose] > │ let v17 : int64 = v16 - v13 │
00:10:56 #25988 [verbose] > │ let v18 : System.TimeSpan = System.TimeSpan v17 │
00:10:56 #25989 [verbose] > │ let v19 : (System.TimeSpan -> int32) = _.Hours │
00:10:56 #25990 [verbose] > │ let v20 : int32 = v19 v18 │
00:10:56 #25991 [verbose] > │ let v21 : (System.TimeSpan -> int32) = _.Minutes │
00:10:56 #25992 [verbose] > │ let v22 : int32 = v21 v18 │
00:10:56 #25993 [verbose] > │ let v23 : (System.TimeSpan -> int32) = _.Seconds │
00:10:56 #25994 [verbose] > │ let v24 : int32 = v23 v18 │
00:10:56 #25995 [verbose] > │ let v25 : (System.TimeSpan -> int32) = _.Milliseconds │
00:10:56 #25996 [verbose] > │ let v26 : int32 = v25 v18 │
00:10:56 #25997 [verbose] > │ let v27 : System.DateTime = System.DateTime (1, 1, 1, v20, v22, │
00:10:56 #25998 [verbose] > │ v24, v26) │
00:10:56 #25999 [verbose] > │ v27 │
00:10:56 #26000 [verbose] > │ let v31 : string = "hh:mm:ss" │
00:10:56 #26001 [verbose] > │ let v32 : string = v30.ToString v31 │
00:10:56 #26002 [verbose] > │ v32 │
00:10:56 #26003 [verbose] > │ #endif │
00:10:56 #26004 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26005 [verbose] > │ let v33 : string = method10() │
00:10:56 #26006 [verbose] > │ v33 │
00:10:56 #26007 [verbose] > │ #endif │
00:10:56 #26008 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26009 [verbose] > │ let v34 : string = method10() │
00:10:56 #26010 [verbose] > │ v34 │
00:10:56 #26011 [verbose] > │ #endif │
00:10:56 #26012 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26013 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26014 [verbose] > │ let v35 : (int64 -> US2) = method9() │
00:10:56 #26015 [verbose] > │ let v36 : US2 = US2_1 │
00:10:56 #26016 [verbose] > │ let v37 : US2 = v8 |> Option.map v35 |> Option.defaultValue v36 │
00:10:56 #26017 [verbose] > │ let v55 : System.DateTime = │
00:10:56 #26018 [verbose] > │ match v37 with │
00:10:56 #26019 [verbose] > │ | US2_1 -> (* None *) │
00:10:56 #26020 [verbose] > │ let v53 : System.DateTime = System.DateTime.Now │
00:10:56 #26021 [verbose] > │ v53 │
00:10:56 #26022 [verbose] > │ | US2_0(v38) -> (* Some *) │
00:10:56 #26023 [verbose] > │ let v39 : System.DateTime = System.DateTime.Now │
00:10:56 #26024 [verbose] > │ let v40 : (System.DateTime -> int64) = _.Ticks │
00:10:56 #26025 [verbose] > │ let v41 : int64 = v40 v39 │
00:10:56 #26026 [verbose] > │ let v42 : int64 = v41 - v38 │
00:10:56 #26027 [verbose] > │ let v43 : System.TimeSpan = System.TimeSpan v42 │
00:10:56 #26028 [verbose] > │ let v44 : (System.TimeSpan -> int32) = _.Hours │
00:10:56 #26029 [verbose] > │ let v45 : int32 = v44 v43 │
00:10:56 #26030 [verbose] > │ let v46 : (System.TimeSpan -> int32) = _.Minutes │
00:10:56 #26031 [verbose] > │ let v47 : int32 = v46 v43 │
00:10:56 #26032 [verbose] > │ let v48 : (System.TimeSpan -> int32) = _.Seconds │
00:10:56 #26033 [verbose] > │ let v49 : int32 = v48 v43 │
00:10:56 #26034 [verbose] > │ let v50 : (System.TimeSpan -> int32) = _.Milliseconds │
00:10:56 #26035 [verbose] > │ let v51 : int32 = v50 v43 │
00:10:56 #26036 [verbose] > │ let v52 : System.DateTime = System.DateTime (1, 1, 1, v45, v47, │
00:10:56 #26037 [verbose] > │ v49, v51) │
00:10:56 #26038 [verbose] > │ v52 │
00:10:56 #26039 [verbose] > │ let v56 : string = "HH:mm:ss" │
00:10:56 #26040 [verbose] > │ let v57 : string = v55.ToString v56 │
00:10:56 #26041 [verbose] > │ v57 │
00:10:56 #26042 [verbose] > │ #endif │
00:10:56 #26043 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26044 [verbose] > │ let v58 : string = method10() │
00:10:56 #26045 [verbose] > │ v58 │
00:10:56 #26046 [verbose] > │ #endif │
00:10:56 #26047 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26048 [verbose] > │ Unchecked.defaultof<string> │
00:10:56 #26049 [verbose] > │ #endif │
00:10:56 #26050 [verbose] > │ |> fun x -> _v9 <- Some x │
00:10:56 #26051 [verbose] > │ let v59 : string = _v9.Value │
00:10:56 #26052 [verbose] > │ let v60 : int64 = v4.l0 │
00:10:56 #26053 [verbose] > │ let v70 : string = │
00:10:56 #26054 [verbose] > │ match v0 with │
00:10:56 #26055 [verbose] > │ | US0_4 -> (* Critical *) │
00:10:56 #26056 [verbose] > │ let v65 : string = "Critical" │
00:10:56 #26057 [verbose] > │ v65 │
00:10:56 #26058 [verbose] > │ | US0_1 -> (* Debug *) │
00:10:56 #26059 [verbose] > │ let v62 : string = "Debug" │
00:10:56 #26060 [verbose] > │ v62 │
00:10:56 #26061 [verbose] > │ | US0_2 -> (* Info *) │
00:10:56 #26062 [verbose] > │ let v63 : string = "Info" │
00:10:56 #26063 [verbose] > │ v63 │
00:10:56 #26064 [verbose] > │ | US0_0 -> (* Verbose *) │
00:10:56 #26065 [verbose] > │ let v61 : string = "Verbose" │
00:10:56 #26066 [verbose] > │ v61 │
00:10:56 #26067 [verbose] > │ | US0_3 -> (* Warning *) │
00:10:56 #26068 [verbose] > │ let v64 : string = "Warning" │
00:10:56 #26069 [verbose] > │ v64 │
00:10:56 #26070 [verbose] > │ let v71 : string = v70.ToLower () │
00:10:56 #26071 [verbose] > │ let v72 : string = $"{v59} #{v60} [{v71}] %s{v1 ()} / %s{v2 ()}" │
00:10:56 #26072 [verbose] > │ let v73 : (char []) = [||] │
00:10:56 #26073 [verbose] > │ let v74 : string = v72.TrimStart v73 │
00:10:56 #26074 [verbose] > │ let v75 : (char []) = [|' '; '/'|] │
00:10:56 #26075 [verbose] > │ let v76 : string = v74.TrimEnd v75 │
00:10:56 #26076 [verbose] > │ v76 │
00:10:56 #26077 [verbose] > │ and method6 (v0 : US0, v1 : (unit -> string), v2 : (unit -> string)) : unit │
00:10:56 #26078 [verbose] > │ = │
00:10:56 #26079 [verbose] > │ let v3 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:10:56 #26080 [verbose] > │ closure7() │
00:10:56 #26081 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:10:56 #26082 [verbose] > │ let struct (v4 : Mut0, v5 : Mut1, v6 : Mut1, v7 : Mut2, v8 : int64 │
00:10:56 #26083 [verbose] > │ option) = State.trace_state.Value │
00:10:56 #26084 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:10:56 #26085 [verbose] > │ let struct (v9 : Mut0, v10 : Mut1, v11 : Mut1, v12 : Mut2, v13 : int64 │
00:10:56 #26086 [verbose] > │ option) = State.trace_state.Value │
00:10:56 #26087 [verbose] > │ let v14 : US0 = v12.l0 │
00:10:56 #26088 [verbose] > │ let v15 : bool = v11.l0 │
00:10:56 #26089 [verbose] > │ let v17 : bool = │
00:10:56 #26090 [verbose] > │ if v15 then │
00:10:56 #26091 [verbose] > │ let v16 : bool = v0 >= v14 │
00:10:56 #26092 [verbose] > │ v16 │
00:10:56 #26093 [verbose] > │ else │
00:10:56 #26094 [verbose] > │ false │
00:10:56 #26095 [verbose] > │ if v17 then │
00:10:56 #26096 [verbose] > │ let v18 : int64 = v4.l0 │
00:10:56 #26097 [verbose] > │ let v19 : int64 = v18 + 1L │
00:10:56 #26098 [verbose] > │ v4.l0 <- v19 │
00:10:56 #26099 [verbose] > │ let v20 : (unit -> string) = closure8(v0, v1, v2) │
00:10:56 #26100 [verbose] > │ let v21 : string = $"%s{v20 ()}" │
00:10:56 #26101 [verbose] > │ let v22 : unit option = None │
00:10:56 #26102 [verbose] > │ let mutable _v22 = v22 │
00:10:56 #26103 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26104 [verbose] > │ let v23 : string = @"println!(""{}"", $0)" │
00:10:56 #26105 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v23 │
00:10:56 #26106 [verbose] > │ () │
00:10:56 #26107 [verbose] > │ #endif │
00:10:56 #26108 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26109 [verbose] > │ let v24 : string = @"println!(""{}"", $0)" │
00:10:56 #26110 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v24 │
00:10:56 #26111 [verbose] > │ () │
00:10:56 #26112 [verbose] > │ #endif │
00:10:56 #26113 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26114 [verbose] > │ let v25 : string = @"println!(""{}"", $0)" │
00:10:56 #26115 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v25 │
00:10:56 #26116 [verbose] > │ () │
00:10:56 #26117 [verbose] > │ #endif │
00:10:56 #26118 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26119 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26120 [verbose] > │ System.Console.WriteLine v21 │
00:10:56 #26121 [verbose] > │ () │
00:10:56 #26122 [verbose] > │ #endif │
00:10:56 #26123 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26124 [verbose] > │ System.Console.WriteLine v21 │
00:10:56 #26125 [verbose] > │ () │
00:10:56 #26126 [verbose] > │ #endif │
00:10:56 #26127 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:56 #26128 [verbose] > │ FABLE_COMPILER_DART │
00:10:56 #26129 [verbose] > │ Unchecked.defaultof<unit> │
00:10:56 #26130 [verbose] > │ #endif │
00:10:56 #26131 [verbose] > │ |> fun x -> _v22 <- Some x │
00:10:56 #26132 [verbose] > │ _v22.Value │
00:10:56 #26133 [verbose] > │ () │
00:10:56 #26134 [verbose] > │ and closure10 () () : string = │
00:10:56 #26135 [verbose] > │ let v0 : string = "2" │
00:10:56 #26136 [verbose] > │ v0 │
00:10:56 #26137 [verbose] > │ and closure11 () () : string = │
00:10:56 #26138 [verbose] > │ let v0 : string = "_1" │
00:10:56 #26139 [verbose] > │ v0 │
00:10:56 #26140 [verbose] > │ and closure12 () () : string = │
00:10:56 #26141 [verbose] > │ let v0 : string = "_2" │
00:10:56 #26142 [verbose] > │ v0 │
00:10:56 #26143 [verbose] > │ and closure13 () () : string = │
00:10:56 #26144 [verbose] > │ let v0 : string = "_3" │
00:10:56 #26145 [verbose] > │ v0 │
00:10:56 #26146 [verbose] > │ and closure14 () () : string = │
00:10:56 #26147 [verbose] > │ let v0 : string = "3" │
00:10:56 #26148 [verbose] > │ v0 │
00:10:56 #26149 [verbose] > │ and closure15 () () : string = │
00:10:56 #26150 [verbose] > │ let v0 : string = "4" │
00:10:56 #26151 [verbose] > │ v0 │
00:10:56 #26152 [verbose] > │ and closure16 () () : string = │
00:10:56 #26153 [verbose] > │ let v0 : string = "move_file_async" │
00:10:56 #26154 [verbose] > │ v0 │
00:10:56 #26155 [verbose] > │ and method12 (v0 : string, v1 : string, v2 : exn) : string = │
00:10:56 #26156 [verbose] > │ let v3 : string option = None │
00:10:56 #26157 [verbose] > │ let mutable _v3 = v3 │
00:10:56 #26158 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26159 [verbose] > │ let v4 : string = $"%A{v2}" │
00:10:56 #26160 [verbose] > │ v4 │
00:10:56 #26161 [verbose] > │ #endif │
00:10:56 #26162 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26163 [verbose] > │ let v5 : string = $"%A{v2}" │
00:10:56 #26164 [verbose] > │ v5 │
00:10:56 #26165 [verbose] > │ #endif │
00:10:56 #26166 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26167 [verbose] > │ let v6 : string = $"%A{v2}" │
00:10:56 #26168 [verbose] > │ v6 │
00:10:56 #26169 [verbose] > │ #endif │
00:10:56 #26170 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26171 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26172 [verbose] > │ let v7 : string = $"{v2.GetType ()}: {v2.Message}" │
00:10:56 #26173 [verbose] > │ v7 │
00:10:56 #26174 [verbose] > │ #endif │
00:10:56 #26175 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26176 [verbose] > │ let v8 : string = $"%A{v2}" │
00:10:56 #26177 [verbose] > │ v8 │
00:10:56 #26178 [verbose] > │ #endif │
00:10:56 #26179 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26180 [verbose] > │ Unchecked.defaultof<string> │
00:10:56 #26181 [verbose] > │ #endif │
00:10:56 #26182 [verbose] > │ |> fun x -> _v3 <- Some x │
00:10:56 #26183 [verbose] > │ let v9 : string = _v3.Value │
00:10:56 #26184 [verbose] > │ let v10 : (string -> string) = closure5() │
00:10:56 #26185 [verbose] > │ let v11 : (unit -> string) = closure2() │
00:10:56 #26186 [verbose] > │ let v12 : string = $"old_path: {v1 |> v10} / new_path: {v0 |> v10} / ex: │
00:10:56 #26187 [verbose] > │ {v9} / {v11 ()}" │
00:10:56 #26188 [verbose] > │ v12 │
00:10:56 #26189 [verbose] > │ and closure17 (v0 : string, v1 : string, v2 : exn) () : string = │
00:10:56 #26190 [verbose] > │ method12(v0, v1, v2) │
00:10:56 #26191 [verbose] > │ and method11 (v0 : string, v1 : string, v2 : int64) : Async<int64> = │
00:10:56 #26192 [verbose] > │ let v3 : Async<int64> option = None │
00:10:56 #26193 [verbose] > │ let mutable _v3 = v3 │
00:10:56 #26194 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26195 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #26196 [verbose] > │ v4 │
00:10:56 #26197 [verbose] > │ #endif │
00:10:56 #26198 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26199 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #26200 [verbose] > │ v5 │
00:10:56 #26201 [verbose] > │ #endif │
00:10:56 #26202 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26203 [verbose] > │ let v6 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #26204 [verbose] > │ v6 │
00:10:56 #26205 [verbose] > │ #endif │
00:10:56 #26206 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26207 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26208 [verbose] > │ let v7 : Async<int64> option = None │
00:10:56 #26209 [verbose] > │ let mutable _v7 = v7 │
00:10:56 #26210 [verbose] > │ async { │
00:10:56 #26211 [verbose] > │ try │
00:10:56 #26212 [verbose] > │ let v8 : unit option = None │
00:10:56 #26213 [verbose] > │ let mutable _v8 = v8 │
00:10:56 #26214 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26215 [verbose] > │ null |> unbox<unit> │
00:10:56 #26216 [verbose] > │ () │
00:10:56 #26217 [verbose] > │ #endif │
00:10:56 #26218 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26219 [verbose] > │ null |> unbox<unit> │
00:10:56 #26220 [verbose] > │ () │
00:10:56 #26221 [verbose] > │ #endif │
00:10:56 #26222 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26223 [verbose] > │ null |> unbox<unit> │
00:10:56 #26224 [verbose] > │ () │
00:10:56 #26225 [verbose] > │ #endif │
00:10:56 #26226 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26227 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26228 [verbose] > │ System.IO.File.Move (v1, v0) │
00:10:56 #26229 [verbose] > │ () │
00:10:56 #26230 [verbose] > │ #endif │
00:10:56 #26231 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26232 [verbose] > │ null |> unbox<unit> │
00:10:56 #26233 [verbose] > │ () │
00:10:56 #26234 [verbose] > │ #endif │
00:10:56 #26235 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26236 [verbose] > │ Unchecked.defaultof<unit> │
00:10:56 #26237 [verbose] > │ #endif │
00:10:56 #26238 [verbose] > │ |> fun x -> _v8 <- Some x │
00:10:56 #26239 [verbose] > │ _v8.Value │
00:10:56 #26240 [verbose] > │ return v2 │
00:10:56 #26241 [verbose] > │ with ex -> │
00:10:56 #26242 [verbose] > │ let v9 : exn = ex │
00:10:56 #26243 [verbose] > │ let v10 : int64 = v2 % 100L │
00:10:56 #26244 [verbose] > │ let v11 : bool = v10 = 0L │
00:10:56 #26245 [verbose] > │ if v11 then │
00:10:56 #26246 [verbose] > │ let v12 : US0 = US0_3 │
00:10:56 #26247 [verbose] > │ let v13 : (unit -> string) = closure16() │
00:10:56 #26248 [verbose] > │ let v14 : (unit -> string) = closure17(v0, v1, v9) │
00:10:56 #26249 [verbose] > │ method6(v12, v13, v14) │
00:10:56 #26250 [verbose] > │ let v15 : Async<unit> option = None │
00:10:56 #26251 [verbose] > │ let mutable _v15 = v15 │
00:10:56 #26252 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26253 [verbose] > │ let v16 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26254 [verbose] > │ v16 │
00:10:56 #26255 [verbose] > │ #endif │
00:10:56 #26256 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26257 [verbose] > │ let v17 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26258 [verbose] > │ v17 │
00:10:56 #26259 [verbose] > │ #endif │
00:10:56 #26260 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26261 [verbose] > │ let v18 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26262 [verbose] > │ v18 │
00:10:56 #26263 [verbose] > │ #endif │
00:10:56 #26264 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26265 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26266 [verbose] > │ let v19 : (int32 -> Async<unit>) = Async.Sleep │
00:10:56 #26267 [verbose] > │ let v20 : Async<unit> = v19 10 │
00:10:56 #26268 [verbose] > │ v20 │
00:10:56 #26269 [verbose] > │ #endif │
00:10:56 #26270 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26271 [verbose] > │ let v21 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26272 [verbose] > │ v21 │
00:10:56 #26273 [verbose] > │ #endif │
00:10:56 #26274 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26275 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:56 #26276 [verbose] > │ #endif │
00:10:56 #26277 [verbose] > │ |> fun x -> _v15 <- Some x │
00:10:56 #26278 [verbose] > │ let v22 : Async<unit> = _v15.Value │
00:10:56 #26279 [verbose] > │ do! v22 │
00:10:56 #26280 [verbose] > │ let v23 : int64 = v2 + 1L │
00:10:56 #26281 [verbose] > │ let v24 : Async<int64> = method11(v0, v1, v23) │
00:10:56 #26282 [verbose] > │ return! v24 │
00:10:56 #26283 [verbose] > │ (* │
00:10:56 #26284 [verbose] > │ *) │
00:10:56 #26285 [verbose] > │ } │
00:10:56 #26286 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:56 #26287 [verbose] > │ let v25 : Async<int64> = _v7 |> Option.get │
00:10:56 #26288 [verbose] > │ v25 │
00:10:56 #26289 [verbose] > │ #endif │
00:10:56 #26290 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26291 [verbose] > │ let v26 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #26292 [verbose] > │ v26 │
00:10:56 #26293 [verbose] > │ #endif │
00:10:56 #26294 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26295 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:56 #26296 [verbose] > │ #endif │
00:10:56 #26297 [verbose] > │ |> fun x -> _v3 <- Some x │
00:10:56 #26298 [verbose] > │ let v27 : Async<int64> = _v3.Value │
00:10:56 #26299 [verbose] > │ v27 │
00:10:56 #26300 [verbose] > │ and closure18 () () : string = │
00:10:56 #26301 [verbose] > │ let v0 : string = "5" │
00:10:56 #26302 [verbose] > │ v0 │
00:10:56 #26303 [verbose] > │ and method14 (v0 : string, v1 : int64, v2 : string) : string = │
00:10:56 #26304 [verbose] > │ let v3 : (string -> string) = closure5() │
00:10:56 #26305 [verbose] > │ let v4 : (unit -> string) = closure2() │
00:10:56 #26306 [verbose] > │ let v5 : string = $"path: {v0 |> v3} / retry: {v1} / ex: {v2} / {v4 ()}" │
00:10:56 #26307 [verbose] > │ v5 │
00:10:56 #26308 [verbose] > │ and closure19 (v0 : string, v1 : int64, v2 : string) () : string = │
00:10:56 #26309 [verbose] > │ method14(v0, v1, v2) │
00:10:56 #26310 [verbose] > │ and method13 (v0 : string, v1 : int64) : Async<int64> = │
00:10:56 #26311 [verbose] > │ let v2 : Async<int64> option = None │
00:10:56 #26312 [verbose] > │ let mutable _v2 = v2 │
00:10:56 #26313 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26314 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #26315 [verbose] > │ v3 │
00:10:56 #26316 [verbose] > │ #endif │
00:10:56 #26317 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26318 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #26319 [verbose] > │ v4 │
00:10:56 #26320 [verbose] > │ #endif │
00:10:56 #26321 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26322 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #26323 [verbose] > │ v5 │
00:10:56 #26324 [verbose] > │ #endif │
00:10:56 #26325 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26326 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26327 [verbose] > │ let v6 : Async<int64> option = None │
00:10:56 #26328 [verbose] > │ let mutable _v6 = v6 │
00:10:56 #26329 [verbose] > │ async { │
00:10:56 #26330 [verbose] > │ try │
00:10:56 #26331 [verbose] > │ let v7 : System.IO.FileStream option = None │
00:10:56 #26332 [verbose] > │ let mutable _v7 = v7 │
00:10:56 #26333 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26334 [verbose] > │ let v8 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:56 #26335 [verbose] > │ v8 │
00:10:56 #26336 [verbose] > │ #endif │
00:10:56 #26337 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26338 [verbose] > │ let v9 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:56 #26339 [verbose] > │ v9 │
00:10:56 #26340 [verbose] > │ #endif │
00:10:56 #26341 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26342 [verbose] > │ let v10 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:56 #26343 [verbose] > │ v10 │
00:10:56 #26344 [verbose] > │ #endif │
00:10:56 #26345 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26346 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26347 [verbose] > │ let v11 : System.IO.FileMode = System.IO.FileMode.Open │
00:10:56 #26348 [verbose] > │ let v12 : System.IO.FileAccess = System.IO.FileAccess.ReadWrite │
00:10:56 #26349 [verbose] > │ let v13 : System.IO.FileShare = System.IO.FileShare.Read │
00:10:56 #26350 [verbose] > │ let v14 : System.IO.FileStream = new System.IO.FileStream (v0, v11, v12, │
00:10:56 #26351 [verbose] > │ v13) │
00:10:56 #26352 [verbose] > │ v14 │
00:10:56 #26353 [verbose] > │ #endif │
00:10:56 #26354 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26355 [verbose] > │ let v15 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:56 #26356 [verbose] > │ v15 │
00:10:56 #26357 [verbose] > │ #endif │
00:10:56 #26358 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26359 [verbose] > │ Unchecked.defaultof<System.IO.FileStream> │
00:10:56 #26360 [verbose] > │ #endif │
00:10:56 #26361 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:56 #26362 [verbose] > │ let v16 : System.IO.FileStream = _v7.Value │
00:10:56 #26363 [verbose] > │ use v16 = v16 │
00:10:56 #26364 [verbose] > │ let v17 : System.IO.FileStream = v16 │
00:10:56 #26365 [verbose] > │ return v1 │
00:10:56 #26366 [verbose] > │ with ex -> │
00:10:56 #26367 [verbose] > │ let v18 : exn = ex │
00:10:56 #26368 [verbose] > │ let v19 : bool = v1 > 0L │
00:10:56 #26369 [verbose] > │ let v22 : bool = │
00:10:56 #26370 [verbose] > │ if v19 then │
00:10:56 #26371 [verbose] > │ let v20 : int64 = v1 % 100L │
00:10:56 #26372 [verbose] > │ let v21 : bool = v20 = 0L │
00:10:56 #26373 [verbose] > │ v21 │
00:10:56 #26374 [verbose] > │ else │
00:10:56 #26375 [verbose] > │ false │
00:10:56 #26376 [verbose] > │ if v22 then │
00:10:56 #26377 [verbose] > │ let v23 : string option = None │
00:10:56 #26378 [verbose] > │ let mutable _v23 = v23 │
00:10:56 #26379 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26380 [verbose] > │ let v24 : string = $"%A{v18}" │
00:10:56 #26381 [verbose] > │ v24 │
00:10:56 #26382 [verbose] > │ #endif │
00:10:56 #26383 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26384 [verbose] > │ let v25 : string = $"%A{v18}" │
00:10:56 #26385 [verbose] > │ v25 │
00:10:56 #26386 [verbose] > │ #endif │
00:10:56 #26387 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26388 [verbose] > │ let v26 : string = $"%A{v18}" │
00:10:56 #26389 [verbose] > │ v26 │
00:10:56 #26390 [verbose] > │ #endif │
00:10:56 #26391 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26392 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26393 [verbose] > │ let v27 : string = $"{v18.GetType ()}: {v18.Message}" │
00:10:56 #26394 [verbose] > │ v27 │
00:10:56 #26395 [verbose] > │ #endif │
00:10:56 #26396 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26397 [verbose] > │ let v28 : string = $"%A{v18}" │
00:10:56 #26398 [verbose] > │ v28 │
00:10:56 #26399 [verbose] > │ #endif │
00:10:56 #26400 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:56 #26401 [verbose] > │ FABLE_COMPILER_DART │
00:10:56 #26402 [verbose] > │ Unchecked.defaultof<string> │
00:10:56 #26403 [verbose] > │ #endif │
00:10:56 #26404 [verbose] > │ |> fun x -> _v23 <- Some x │
00:10:56 #26405 [verbose] > │ let v29 : string = _v23.Value │
00:10:56 #26406 [verbose] > │ let v30 : (unit -> string) = closure19(v0, v1, v29) │
00:10:56 #26407 [verbose] > │ let v31 : string = $"wait_for_file_access / {v30 ()}" │
00:10:56 #26408 [verbose] > │ System.Console.WriteLine v31 │
00:10:56 #26409 [verbose] > │ () │
00:10:56 #26410 [verbose] > │ let v32 : Async<unit> option = None │
00:10:56 #26411 [verbose] > │ let mutable _v32 = v32 │
00:10:56 #26412 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26413 [verbose] > │ let v33 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26414 [verbose] > │ v33 │
00:10:56 #26415 [verbose] > │ #endif │
00:10:56 #26416 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26417 [verbose] > │ let v34 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26418 [verbose] > │ v34 │
00:10:56 #26419 [verbose] > │ #endif │
00:10:56 #26420 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26421 [verbose] > │ let v35 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26422 [verbose] > │ v35 │
00:10:56 #26423 [verbose] > │ #endif │
00:10:56 #26424 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26425 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26426 [verbose] > │ let v36 : (int32 -> Async<unit>) = Async.Sleep │
00:10:56 #26427 [verbose] > │ let v37 : Async<unit> = v36 10 │
00:10:56 #26428 [verbose] > │ v37 │
00:10:56 #26429 [verbose] > │ #endif │
00:10:56 #26430 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26431 [verbose] > │ let v38 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26432 [verbose] > │ v38 │
00:10:56 #26433 [verbose] > │ #endif │
00:10:56 #26434 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26435 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:56 #26436 [verbose] > │ #endif │
00:10:56 #26437 [verbose] > │ |> fun x -> _v32 <- Some x │
00:10:56 #26438 [verbose] > │ let v39 : Async<unit> = _v32.Value │
00:10:56 #26439 [verbose] > │ do! v39 │
00:10:56 #26440 [verbose] > │ let v40 : int64 = v1 + 1L │
00:10:56 #26441 [verbose] > │ let v41 : Async<int64> = method13(v0, v40) │
00:10:56 #26442 [verbose] > │ return! v41 │
00:10:56 #26443 [verbose] > │ (* │
00:10:56 #26444 [verbose] > │ let v42 : int64 = *) │
00:10:56 #26445 [verbose] > │ } │
00:10:56 #26446 [verbose] > │ |> fun x -> _v6 <- Some x │
00:10:56 #26447 [verbose] > │ let v43 : Async<int64> = _v6 |> Option.get │
00:10:56 #26448 [verbose] > │ v43 │
00:10:56 #26449 [verbose] > │ #endif │
00:10:56 #26450 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26451 [verbose] > │ let v44 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #26452 [verbose] > │ v44 │
00:10:56 #26453 [verbose] > │ #endif │
00:10:56 #26454 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26455 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:56 #26456 [verbose] > │ #endif │
00:10:56 #26457 [verbose] > │ |> fun x -> _v2 <- Some x │
00:10:56 #26458 [verbose] > │ let v45 : Async<int64> = _v2.Value │
00:10:56 #26459 [verbose] > │ v45 │
00:10:56 #26460 [verbose] > │ and closure20 () () : string = │
00:10:56 #26461 [verbose] > │ let v0 : string = "6" │
00:10:56 #26462 [verbose] > │ v0 │
00:10:56 #26463 [verbose] > │ and closure21 () () : string = │
00:10:56 #26464 [verbose] > │ let v0 : string = "7" │
00:10:56 #26465 [verbose] > │ v0 │
00:10:56 #26466 [verbose] > │ and closure22 () () : string = │
00:10:56 #26467 [verbose] > │ let v0 : string = "8" │
00:10:56 #26468 [verbose] > │ v0 │
00:10:56 #26469 [verbose] > │ and closure23 () struct (v0 : int64, v1 : int64, v2 : string) : US4 = │
00:10:56 #26470 [verbose] > │ US4_0(v0, v1, v2) │
00:10:56 #26471 [verbose] > │ and closure24 () (v0 : exn) : US4 = │
00:10:56 #26472 [verbose] > │ US4_1(v0) │
00:10:56 #26473 [verbose] > │ and closure25 () () : string = │
00:10:56 #26474 [verbose] > │ let v0 : string = "run_with_timeout_async" │
00:10:56 #26475 [verbose] > │ v0 │
00:10:56 #26476 [verbose] > │ and closure26 () () : string = │
00:10:56 #26477 [verbose] > │ let v0 : (unit -> string) = closure2() │
00:10:56 #26478 [verbose] > │ let v1 : string = $"timeout: {3000} / {v0 ()}" │
00:10:56 #26479 [verbose] > │ v1 │
00:10:56 #26480 [verbose] > │ and closure27 (v0 : string) () : string = │
00:10:56 #26481 [verbose] > │ let v1 : string = $"run_with_timeout_async** / ex: {v0}" │
00:10:56 #26482 [verbose] > │ v1 │
00:10:56 #26483 [verbose] > │ and method15 (v0 : bool) : bool = │
00:10:56 #26484 [verbose] > │ v0 │
00:10:56 #26485 [verbose] > │ and method16 () : string = │
00:10:56 #26486 [verbose] > │ let v0 : string = "0" │
00:10:56 #26487 [verbose] > │ v0 │
00:10:56 #26488 [verbose] > │ and method0 () : unit = │
00:10:56 #26489 [verbose] > │ let v0 : struct (string * System.IDisposable) option = None │
00:10:56 #26490 [verbose] > │ let mutable _v0 = v0 │
00:10:56 #26491 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26492 [verbose] > │ let struct (v1 : string, v2 : System.IDisposable) = null |> unbox<struct │
00:10:56 #26493 [verbose] > │ (string * System.IDisposable)> │
00:10:56 #26494 [verbose] > │ struct (v1, v2) │
00:10:56 #26495 [verbose] > │ #endif │
00:10:56 #26496 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26497 [verbose] > │ let struct (v3 : string, v4 : System.IDisposable) = null |> unbox<struct │
00:10:56 #26498 [verbose] > │ (string * System.IDisposable)> │
00:10:56 #26499 [verbose] > │ struct (v3, v4) │
00:10:56 #26500 [verbose] > │ #endif │
00:10:56 #26501 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26502 [verbose] > │ let struct (v5 : string, v6 : System.IDisposable) = null |> unbox<struct │
00:10:56 #26503 [verbose] > │ (string * System.IDisposable)> │
00:10:56 #26504 [verbose] > │ struct (v5, v6) │
00:10:56 #26505 [verbose] > │ #endif │
00:10:56 #26506 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26507 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26508 [verbose] > │ let v7 : string option = None │
00:10:56 #26509 [verbose] > │ let mutable _v7 = v7 │
00:10:56 #26510 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26511 [verbose] > │ let v8 : string = null |> unbox<string> │
00:10:56 #26512 [verbose] > │ v8 │
00:10:56 #26513 [verbose] > │ #endif │
00:10:56 #26514 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26515 [verbose] > │ let v9 : string = null |> unbox<string> │
00:10:56 #26516 [verbose] > │ v9 │
00:10:56 #26517 [verbose] > │ #endif │
00:10:56 #26518 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26519 [verbose] > │ let v10 : string = null |> unbox<string> │
00:10:56 #26520 [verbose] > │ v10 │
00:10:56 #26521 [verbose] > │ #endif │
00:10:56 #26522 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26523 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26524 [verbose] > │ let v11 : (unit -> string) = System.IO.Path.GetTempPath │
00:10:56 #26525 [verbose] > │ let v12 : string = v11 () │
00:10:56 #26526 [verbose] > │ let v13 : (unit -> string) = closure0() │
00:10:56 #26527 [verbose] > │ let v14 : string = $"!{v13 ()}" │
00:10:56 #26528 [verbose] > │ let v15 : string option = None │
00:10:56 #26529 [verbose] > │ let mutable _v15 = v15 │
00:10:56 #26530 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26531 [verbose] > │ let v16 : string = method1(v12) │
00:10:56 #26532 [verbose] > │ let v17 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:56 #26533 [verbose] > │ let v18 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v16 v17 │
00:10:56 #26534 [verbose] > │ let v19 : string = "String::from($0)" │
00:10:56 #26535 [verbose] > │ let v20 : std_string_String = Fable.Core.RustInterop.emitRustExpr v18 │
00:10:56 #26536 [verbose] > │ v19 │
00:10:56 #26537 [verbose] > │ let v21 : string = "std::path::PathBuf::from($0)" │
00:10:56 #26538 [verbose] > │ let v22 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v20 v21 │
00:10:56 #26539 [verbose] > │ let v23 : string = method1(v14) │
00:10:56 #26540 [verbose] > │ let v24 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:56 #26541 [verbose] > │ let v25 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v23 v24 │
00:10:56 #26542 [verbose] > │ let v26 : string = "String::from($0)" │
00:10:56 #26543 [verbose] > │ let v27 : std_string_String = Fable.Core.RustInterop.emitRustExpr v25 │
00:10:56 #26544 [verbose] > │ v26 │
00:10:56 #26545 [verbose] > │ let v28 : string = "$0.join($1)" │
00:10:56 #26546 [verbose] > │ let v29 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:56 #26547 [verbose] > │ (v22, v27) v28 │
00:10:56 #26548 [verbose] > │ let v30 : string = "$0.display().to_string()" │
00:10:56 #26549 [verbose] > │ let v31 : std_string_String = Fable.Core.RustInterop.emitRustExpr v29 │
00:10:56 #26550 [verbose] > │ v30 │
00:10:56 #26551 [verbose] > │ let v32 : string = "fable_library_rust::String_::fromString($0)" │
00:10:56 #26552 [verbose] > │ let v33 : string = Fable.Core.RustInterop.emitRustExpr v31 v32 │
00:10:56 #26553 [verbose] > │ v33 │
00:10:56 #26554 [verbose] > │ #endif │
00:10:56 #26555 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26556 [verbose] > │ let v34 : string = null |> unbox<string> │
00:10:56 #26557 [verbose] > │ v34 │
00:10:56 #26558 [verbose] > │ #endif │
00:10:56 #26559 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26560 [verbose] > │ let v35 : string = null |> unbox<string> │
00:10:56 #26561 [verbose] > │ v35 │
00:10:56 #26562 [verbose] > │ #endif │
00:10:56 #26563 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26564 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26565 [verbose] > │ let v36 : string = System.IO.Path.Combine (v12, v14) │
00:10:56 #26566 [verbose] > │ v36 │
00:10:56 #26567 [verbose] > │ #endif │
00:10:56 #26568 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26569 [verbose] > │ let v37 : string = "path" │
00:10:56 #26570 [verbose] > │ let v38 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:56 #26571 [verbose] > │ let v39 : string = "v38.join($0, $1)" │
00:10:56 #26572 [verbose] > │ let v40 : string = Fable.Core.JsInterop.emitJsExpr struct (v12, v14) v39 │
00:10:56 #26573 [verbose] > │ v40 │
00:10:56 #26574 [verbose] > │ #endif │
00:10:56 #26575 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26576 [verbose] > │ Unchecked.defaultof<string> │
00:10:56 #26577 [verbose] > │ #endif │
00:10:56 #26578 [verbose] > │ |> fun x -> _v15 <- Some x │
00:10:56 #26579 [verbose] > │ let v41 : string = _v15.Value │
00:10:56 #26580 [verbose] > │ let v42 : System.DateTime = System.DateTime.Now │
00:10:56 #26581 [verbose] > │ let v43 : System.Guid = System.Guid.NewGuid () │
00:10:56 #26582 [verbose] > │ let v44 : (System.Guid -> string) = _.ToString() │
00:10:56 #26583 [verbose] > │ let v45 : string = v44 v43 │
00:10:56 #26584 [verbose] > │ let v46 : string = v42.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:10:56 #26585 [verbose] > │ let v47 : System.Guid = System.Guid $"{v46}{v45.[v46.Length..]}" │
00:10:56 #26586 [verbose] > │ let v48 : (System.Guid -> string) = _.ToString() │
00:10:56 #26587 [verbose] > │ let v49 : string = v48 v47 │
00:10:56 #26588 [verbose] > │ let v50 : string option = None │
00:10:56 #26589 [verbose] > │ let mutable _v50 = v50 │
00:10:56 #26590 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26591 [verbose] > │ let v51 : string = method1(v41) │
00:10:56 #26592 [verbose] > │ let v52 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:56 #26593 [verbose] > │ let v53 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v51 v52 │
00:10:56 #26594 [verbose] > │ let v54 : string = "String::from($0)" │
00:10:56 #26595 [verbose] > │ let v55 : std_string_String = Fable.Core.RustInterop.emitRustExpr v53 │
00:10:56 #26596 [verbose] > │ v54 │
00:10:56 #26597 [verbose] > │ let v56 : string = "std::path::PathBuf::from($0)" │
00:10:56 #26598 [verbose] > │ let v57 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v55 v56 │
00:10:56 #26599 [verbose] > │ let v58 : string = method1(v49) │
00:10:56 #26600 [verbose] > │ let v59 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:56 #26601 [verbose] > │ let v60 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v58 v59 │
00:10:56 #26602 [verbose] > │ let v61 : string = "String::from($0)" │
00:10:56 #26603 [verbose] > │ let v62 : std_string_String = Fable.Core.RustInterop.emitRustExpr v60 │
00:10:56 #26604 [verbose] > │ v61 │
00:10:56 #26605 [verbose] > │ let v63 : string = "$0.join($1)" │
00:10:56 #26606 [verbose] > │ let v64 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:56 #26607 [verbose] > │ (v57, v62) v63 │
00:10:56 #26608 [verbose] > │ let v65 : string = "$0.display().to_string()" │
00:10:56 #26609 [verbose] > │ let v66 : std_string_String = Fable.Core.RustInterop.emitRustExpr v64 │
00:10:56 #26610 [verbose] > │ v65 │
00:10:56 #26611 [verbose] > │ let v67 : string = "fable_library_rust::String_::fromString($0)" │
00:10:56 #26612 [verbose] > │ let v68 : string = Fable.Core.RustInterop.emitRustExpr v66 v67 │
00:10:56 #26613 [verbose] > │ v68 │
00:10:56 #26614 [verbose] > │ #endif │
00:10:56 #26615 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26616 [verbose] > │ let v69 : string = null |> unbox<string> │
00:10:56 #26617 [verbose] > │ v69 │
00:10:56 #26618 [verbose] > │ #endif │
00:10:56 #26619 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26620 [verbose] > │ let v70 : string = null |> unbox<string> │
00:10:56 #26621 [verbose] > │ v70 │
00:10:56 #26622 [verbose] > │ #endif │
00:10:56 #26623 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26624 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26625 [verbose] > │ let v71 : string = System.IO.Path.Combine (v41, v49) │
00:10:56 #26626 [verbose] > │ v71 │
00:10:56 #26627 [verbose] > │ #endif │
00:10:56 #26628 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26629 [verbose] > │ let v72 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:56 #26630 [verbose] > │ let v73 : string = "v72.join($0, $1)" │
00:10:56 #26631 [verbose] > │ let v74 : string = Fable.Core.JsInterop.emitJsExpr struct (v41, v49) v73 │
00:10:56 #26632 [verbose] > │ v74 │
00:10:56 #26633 [verbose] > │ #endif │
00:10:56 #26634 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26635 [verbose] > │ Unchecked.defaultof<string> │
00:10:56 #26636 [verbose] > │ #endif │
00:10:56 #26637 [verbose] > │ |> fun x -> _v50 <- Some x │
00:10:56 #26638 [verbose] > │ let v75 : string = _v50.Value │
00:10:56 #26639 [verbose] > │ v75 │
00:10:56 #26640 [verbose] > │ #endif │
00:10:56 #26641 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26642 [verbose] > │ let v76 : string = null |> unbox<string> │
00:10:56 #26643 [verbose] > │ v76 │
00:10:56 #26644 [verbose] > │ #endif │
00:10:56 #26645 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26646 [verbose] > │ Unchecked.defaultof<string> │
00:10:56 #26647 [verbose] > │ #endif │
00:10:56 #26648 [verbose] > │ |> fun x -> _v7 <- Some x │
00:10:56 #26649 [verbose] > │ let v77 : string = _v7.Value │
00:10:56 #26650 [verbose] > │ let v78 : System.IO.DirectoryInfo option = None │
00:10:56 #26651 [verbose] > │ let mutable _v78 = v78 │
00:10:56 #26652 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26653 [verbose] > │ let v79 : System.IO.DirectoryInfo = null |> │
00:10:56 #26654 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:56 #26655 [verbose] > │ v79 │
00:10:56 #26656 [verbose] > │ #endif │
00:10:56 #26657 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26658 [verbose] > │ let v80 : System.IO.DirectoryInfo = null |> │
00:10:56 #26659 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:56 #26660 [verbose] > │ v80 │
00:10:56 #26661 [verbose] > │ #endif │
00:10:56 #26662 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26663 [verbose] > │ let v81 : System.IO.DirectoryInfo = null |> │
00:10:56 #26664 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:56 #26665 [verbose] > │ v81 │
00:10:56 #26666 [verbose] > │ #endif │
00:10:56 #26667 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26668 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26669 [verbose] > │ let v82 : (string -> System.IO.DirectoryInfo) = │
00:10:56 #26670 [verbose] > │ System.IO.Directory.CreateDirectory │
00:10:56 #26671 [verbose] > │ let v83 : System.IO.DirectoryInfo = v82 v77 │
00:10:56 #26672 [verbose] > │ v83 │
00:10:56 #26673 [verbose] > │ #endif │
00:10:56 #26674 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26675 [verbose] > │ let v84 : System.IO.DirectoryInfo = null |> │
00:10:56 #26676 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:10:56 #26677 [verbose] > │ v84 │
00:10:56 #26678 [verbose] > │ #endif │
00:10:56 #26679 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26680 [verbose] > │ Unchecked.defaultof<System.IO.DirectoryInfo> │
00:10:56 #26681 [verbose] > │ #endif │
00:10:56 #26682 [verbose] > │ |> fun x -> _v78 <- Some x │
00:10:56 #26683 [verbose] > │ let v85 : System.IO.DirectoryInfo = _v78.Value │
00:10:56 #26684 [verbose] > │ let v86 : bool option = None │
00:10:56 #26685 [verbose] > │ let mutable _v86 = v86 │
00:10:56 #26686 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26687 [verbose] > │ let v87 : bool = null |> unbox<bool> │
00:10:56 #26688 [verbose] > │ v87 │
00:10:56 #26689 [verbose] > │ #endif │
00:10:56 #26690 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26691 [verbose] > │ let v88 : bool = null |> unbox<bool> │
00:10:56 #26692 [verbose] > │ v88 │
00:10:56 #26693 [verbose] > │ #endif │
00:10:56 #26694 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26695 [verbose] > │ let v89 : bool = null |> unbox<bool> │
00:10:56 #26696 [verbose] > │ v89 │
00:10:56 #26697 [verbose] > │ #endif │
00:10:56 #26698 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26699 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26700 [verbose] > │ let v90 : bool = v85.Exists │
00:10:56 #26701 [verbose] > │ v90 │
00:10:56 #26702 [verbose] > │ #endif │
00:10:56 #26703 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26704 [verbose] > │ let v91 : bool = null |> unbox<bool> │
00:10:56 #26705 [verbose] > │ v91 │
00:10:56 #26706 [verbose] > │ #endif │
00:10:56 #26707 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26708 [verbose] > │ Unchecked.defaultof<bool> │
00:10:56 #26709 [verbose] > │ #endif │
00:10:56 #26710 [verbose] > │ |> fun x -> _v86 <- Some x │
00:10:56 #26711 [verbose] > │ let v92 : bool = _v86.Value │
00:10:56 #26712 [verbose] > │ let v93 : bool = v92 = false │
00:10:56 #26713 [verbose] > │ if v93 then │
00:10:56 #26714 [verbose] > │ let v94 : System.DateTime option = None │
00:10:56 #26715 [verbose] > │ let mutable _v94 = v94 │
00:10:56 #26716 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26717 [verbose] > │ let v95 : System.DateTime = null |> unbox<System.DateTime> │
00:10:56 #26718 [verbose] > │ v95 │
00:10:56 #26719 [verbose] > │ #endif │
00:10:56 #26720 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26721 [verbose] > │ let v96 : System.DateTime = null |> unbox<System.DateTime> │
00:10:56 #26722 [verbose] > │ v96 │
00:10:56 #26723 [verbose] > │ #endif │
00:10:56 #26724 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26725 [verbose] > │ let v97 : System.DateTime = null |> unbox<System.DateTime> │
00:10:56 #26726 [verbose] > │ v97 │
00:10:56 #26727 [verbose] > │ #endif │
00:10:56 #26728 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26729 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26730 [verbose] > │ let v98 : System.DateTime = v85.CreationTime │
00:10:56 #26731 [verbose] > │ v98 │
00:10:56 #26732 [verbose] > │ #endif │
00:10:56 #26733 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26734 [verbose] > │ let v99 : System.DateTime = null |> unbox<System.DateTime> │
00:10:56 #26735 [verbose] > │ v99 │
00:10:56 #26736 [verbose] > │ #endif │
00:10:56 #26737 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:56 #26738 [verbose] > │ FABLE_COMPILER_DART │
00:10:56 #26739 [verbose] > │ Unchecked.defaultof<System.DateTime> │
00:10:56 #26740 [verbose] > │ #endif │
00:10:56 #26741 [verbose] > │ |> fun x -> _v94 <- Some x │
00:10:56 #26742 [verbose] > │ let v100 : System.DateTime = _v94.Value │
00:10:56 #26743 [verbose] > │ let v101 : obj = {| Exists = v92; CreationTime = v100 |} │
00:10:56 #26744 [verbose] > │ let v102 : string = $"%A{v101}" │
00:10:56 #26745 [verbose] > │ let v103 : (unit -> string) = closure1(v77, v102) │
00:10:56 #26746 [verbose] > │ let v104 : string = $"create_temp_directory / {v103 ()}" │
00:10:56 #26747 [verbose] > │ System.Console.WriteLine v104 │
00:10:56 #26748 [verbose] > │ () │
00:10:56 #26749 [verbose] > │ let v105 : System.IDisposable option = None │
00:10:56 #26750 [verbose] > │ let mutable _v105 = v105 │
00:10:56 #26751 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26752 [verbose] > │ let v106 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:56 #26753 [verbose] > │ v106 │
00:10:56 #26754 [verbose] > │ #endif │
00:10:56 #26755 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26756 [verbose] > │ let v107 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:56 #26757 [verbose] > │ v107 │
00:10:56 #26758 [verbose] > │ #endif │
00:10:56 #26759 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26760 [verbose] > │ let v108 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:56 #26761 [verbose] > │ v108 │
00:10:56 #26762 [verbose] > │ #endif │
00:10:56 #26763 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26764 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26765 [verbose] > │ let v109 : (unit -> unit) = closure3(v77) │
00:10:56 #26766 [verbose] > │ let v110 : System.IDisposable = { new System.IDisposable with member │
00:10:56 #26767 [verbose] > │ _.Dispose () = v109 () } │
00:10:56 #26768 [verbose] > │ v110 │
00:10:56 #26769 [verbose] > │ #endif │
00:10:56 #26770 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26771 [verbose] > │ let v111 : System.IDisposable = null |> unbox<System.IDisposable> │
00:10:56 #26772 [verbose] > │ v111 │
00:10:56 #26773 [verbose] > │ #endif │
00:10:56 #26774 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26775 [verbose] > │ Unchecked.defaultof<System.IDisposable> │
00:10:56 #26776 [verbose] > │ #endif │
00:10:56 #26777 [verbose] > │ |> fun x -> _v105 <- Some x │
00:10:56 #26778 [verbose] > │ let v112 : System.IDisposable = _v105.Value │
00:10:56 #26779 [verbose] > │ struct (v77, v112) │
00:10:56 #26780 [verbose] > │ #endif │
00:10:56 #26781 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26782 [verbose] > │ let struct (v113 : string, v114 : System.IDisposable) = null |> │
00:10:56 #26783 [verbose] > │ unbox<struct (string * System.IDisposable)> │
00:10:56 #26784 [verbose] > │ struct (v113, v114) │
00:10:56 #26785 [verbose] > │ #endif │
00:10:56 #26786 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26787 [verbose] > │ Unchecked.defaultof<struct (string * System.IDisposable)> │
00:10:56 #26788 [verbose] > │ #endif │
00:10:56 #26789 [verbose] > │ |> fun x -> _v0 <- Some x │
00:10:56 #26790 [verbose] > │ let struct (v115 : string, v116 : System.IDisposable) = _v0.Value │
00:10:56 #26791 [verbose] > │ use v116 = v116 │
00:10:56 #26792 [verbose] > │ let v117 : System.IDisposable = v116 │
00:10:56 #26793 [verbose] > │ let v118 : string option = None │
00:10:56 #26794 [verbose] > │ let mutable _v118 = v118 │
00:10:56 #26795 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26796 [verbose] > │ let v119 : string = method1(v115) │
00:10:56 #26797 [verbose] > │ let v120 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:56 #26798 [verbose] > │ let v121 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v119 v120 │
00:10:56 #26799 [verbose] > │ let v122 : string = "String::from($0)" │
00:10:56 #26800 [verbose] > │ let v123 : std_string_String = Fable.Core.RustInterop.emitRustExpr v121 │
00:10:56 #26801 [verbose] > │ v122 │
00:10:56 #26802 [verbose] > │ let v124 : string = "std::path::PathBuf::from($0)" │
00:10:56 #26803 [verbose] > │ let v125 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v123 │
00:10:56 #26804 [verbose] > │ v124 │
00:10:56 #26805 [verbose] > │ let v126 : string = method4() │
00:10:56 #26806 [verbose] > │ let v127 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:56 #26807 [verbose] > │ let v128 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v126 v127 │
00:10:56 #26808 [verbose] > │ let v129 : string = "String::from($0)" │
00:10:56 #26809 [verbose] > │ let v130 : std_string_String = Fable.Core.RustInterop.emitRustExpr v128 │
00:10:56 #26810 [verbose] > │ v129 │
00:10:56 #26811 [verbose] > │ let v131 : string = "$0.join($1)" │
00:10:56 #26812 [verbose] > │ let v132 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:56 #26813 [verbose] > │ (v125, v130) v131 │
00:10:56 #26814 [verbose] > │ let v133 : string = "$0.display().to_string()" │
00:10:56 #26815 [verbose] > │ let v134 : std_string_String = Fable.Core.RustInterop.emitRustExpr v132 │
00:10:56 #26816 [verbose] > │ v133 │
00:10:56 #26817 [verbose] > │ let v135 : string = "fable_library_rust::String_::fromString($0)" │
00:10:56 #26818 [verbose] > │ let v136 : string = Fable.Core.RustInterop.emitRustExpr v134 v135 │
00:10:56 #26819 [verbose] > │ v136 │
00:10:56 #26820 [verbose] > │ #endif │
00:10:56 #26821 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26822 [verbose] > │ let v137 : string = null |> unbox<string> │
00:10:56 #26823 [verbose] > │ v137 │
00:10:56 #26824 [verbose] > │ #endif │
00:10:56 #26825 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26826 [verbose] > │ let v138 : string = null |> unbox<string> │
00:10:56 #26827 [verbose] > │ v138 │
00:10:56 #26828 [verbose] > │ #endif │
00:10:56 #26829 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26830 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26831 [verbose] > │ let v139 : string = "test.txt" │
00:10:56 #26832 [verbose] > │ let v140 : string = System.IO.Path.Combine (v115, v139) │
00:10:56 #26833 [verbose] > │ v140 │
00:10:56 #26834 [verbose] > │ #endif │
00:10:56 #26835 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26836 [verbose] > │ let v141 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:56 #26837 [verbose] > │ let v142 : string = "v141.join($0, $1)" │
00:10:56 #26838 [verbose] > │ let v143 : string = Fable.Core.JsInterop.emitJsExpr struct (v115, v139) │
00:10:56 #26839 [verbose] > │ v142 │
00:10:56 #26840 [verbose] > │ v143 │
00:10:56 #26841 [verbose] > │ #endif │
00:10:56 #26842 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26843 [verbose] > │ Unchecked.defaultof<string> │
00:10:56 #26844 [verbose] > │ #endif │
00:10:56 #26845 [verbose] > │ |> fun x -> _v118 <- Some x │
00:10:56 #26846 [verbose] > │ let v144 : string = _v118.Value │
00:10:56 #26847 [verbose] > │ let v145 : string option = None │
00:10:56 #26848 [verbose] > │ let mutable _v145 = v145 │
00:10:56 #26849 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26850 [verbose] > │ let v146 : string = method1(v115) │
00:10:56 #26851 [verbose] > │ let v147 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:56 #26852 [verbose] > │ let v148 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v146 v147 │
00:10:56 #26853 [verbose] > │ let v149 : string = "String::from($0)" │
00:10:56 #26854 [verbose] > │ let v150 : std_string_String = Fable.Core.RustInterop.emitRustExpr v148 │
00:10:56 #26855 [verbose] > │ v149 │
00:10:56 #26856 [verbose] > │ let v151 : string = "std::path::PathBuf::from($0)" │
00:10:56 #26857 [verbose] > │ let v152 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v150 │
00:10:56 #26858 [verbose] > │ v151 │
00:10:56 #26859 [verbose] > │ let v153 : string = method5() │
00:10:56 #26860 [verbose] > │ let v154 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:10:56 #26861 [verbose] > │ let v155 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v153 v154 │
00:10:56 #26862 [verbose] > │ let v156 : string = "String::from($0)" │
00:10:56 #26863 [verbose] > │ let v157 : std_string_String = Fable.Core.RustInterop.emitRustExpr v155 │
00:10:56 #26864 [verbose] > │ v156 │
00:10:56 #26865 [verbose] > │ let v158 : string = "$0.join($1)" │
00:10:56 #26866 [verbose] > │ let v159 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:10:56 #26867 [verbose] > │ (v152, v157) v158 │
00:10:56 #26868 [verbose] > │ let v160 : string = "$0.display().to_string()" │
00:10:56 #26869 [verbose] > │ let v161 : std_string_String = Fable.Core.RustInterop.emitRustExpr v159 │
00:10:56 #26870 [verbose] > │ v160 │
00:10:56 #26871 [verbose] > │ let v162 : string = "fable_library_rust::String_::fromString($0)" │
00:10:56 #26872 [verbose] > │ let v163 : string = Fable.Core.RustInterop.emitRustExpr v161 v162 │
00:10:56 #26873 [verbose] > │ v163 │
00:10:56 #26874 [verbose] > │ #endif │
00:10:56 #26875 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26876 [verbose] > │ let v164 : string = null |> unbox<string> │
00:10:56 #26877 [verbose] > │ v164 │
00:10:56 #26878 [verbose] > │ #endif │
00:10:56 #26879 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26880 [verbose] > │ let v165 : string = null |> unbox<string> │
00:10:56 #26881 [verbose] > │ v165 │
00:10:56 #26882 [verbose] > │ #endif │
00:10:56 #26883 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26884 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26885 [verbose] > │ let v166 : string = "test2.txt" │
00:10:56 #26886 [verbose] > │ let v167 : string = System.IO.Path.Combine (v115, v166) │
00:10:56 #26887 [verbose] > │ v167 │
00:10:56 #26888 [verbose] > │ #endif │
00:10:56 #26889 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26890 [verbose] > │ let v168 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:10:56 #26891 [verbose] > │ let v169 : string = "v168.join($0, $1)" │
00:10:56 #26892 [verbose] > │ let v170 : string = Fable.Core.JsInterop.emitJsExpr struct (v115, v166) │
00:10:56 #26893 [verbose] > │ v169 │
00:10:56 #26894 [verbose] > │ v170 │
00:10:56 #26895 [verbose] > │ #endif │
00:10:56 #26896 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26897 [verbose] > │ Unchecked.defaultof<string> │
00:10:56 #26898 [verbose] > │ #endif │
00:10:56 #26899 [verbose] > │ |> fun x -> _v145 <- Some x │
00:10:56 #26900 [verbose] > │ let v171 : string = _v145.Value │
00:10:56 #26901 [verbose] > │ let v172 : Async<struct (int64 * int64 * string)> option = None │
00:10:56 #26902 [verbose] > │ let mutable _v172 = v172 │
00:10:56 #26903 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26904 [verbose] > │ let v173 : Async<struct (int64 * int64 * string)> = null |> │
00:10:56 #26905 [verbose] > │ unbox<Async<struct (int64 * int64 * string)>> │
00:10:56 #26906 [verbose] > │ v173 │
00:10:56 #26907 [verbose] > │ #endif │
00:10:56 #26908 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26909 [verbose] > │ let v174 : Async<struct (int64 * int64 * string)> = null |> │
00:10:56 #26910 [verbose] > │ unbox<Async<struct (int64 * int64 * string)>> │
00:10:56 #26911 [verbose] > │ v174 │
00:10:56 #26912 [verbose] > │ #endif │
00:10:56 #26913 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26914 [verbose] > │ let v175 : Async<struct (int64 * int64 * string)> = null |> │
00:10:56 #26915 [verbose] > │ unbox<Async<struct (int64 * int64 * string)>> │
00:10:56 #26916 [verbose] > │ v175 │
00:10:56 #26917 [verbose] > │ #endif │
00:10:56 #26918 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26919 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26920 [verbose] > │ let v176 : Async<struct (int64 * int64 * string)> option = None │
00:10:56 #26921 [verbose] > │ let mutable _v176 = v176 │
00:10:56 #26922 [verbose] > │ async { │
00:10:56 #26923 [verbose] > │ let v177 : US0 = US0_1 │
00:10:56 #26924 [verbose] > │ let v178 : (unit -> string) = closure6() │
00:10:56 #26925 [verbose] > │ let v179 : (unit -> string) = closure2() │
00:10:56 #26926 [verbose] > │ method6(v177, v178, v179) │
00:10:56 #26927 [verbose] > │ let v180 : Async<unit> option = None │
00:10:56 #26928 [verbose] > │ let mutable _v180 = v180 │
00:10:56 #26929 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26930 [verbose] > │ let v181 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26931 [verbose] > │ v181 │
00:10:56 #26932 [verbose] > │ #endif │
00:10:56 #26933 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26934 [verbose] > │ let v182 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26935 [verbose] > │ v182 │
00:10:56 #26936 [verbose] > │ #endif │
00:10:56 #26937 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26938 [verbose] > │ let v183 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26939 [verbose] > │ v183 │
00:10:56 #26940 [verbose] > │ #endif │
00:10:56 #26941 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26942 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26943 [verbose] > │ let v184 : string = "0" │
00:10:56 #26944 [verbose] > │ let v185 : System.Threading.Tasks.Task = │
00:10:56 #26945 [verbose] > │ System.IO.File.WriteAllTextAsync (v144, v184) │
00:10:56 #26946 [verbose] > │ let v186 : Async<unit> option = None │
00:10:56 #26947 [verbose] > │ let mutable _v186 = v186 │
00:10:56 #26948 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26949 [verbose] > │ let v187 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26950 [verbose] > │ v187 │
00:10:56 #26951 [verbose] > │ #endif │
00:10:56 #26952 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26953 [verbose] > │ let v188 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26954 [verbose] > │ v188 │
00:10:56 #26955 [verbose] > │ #endif │
00:10:56 #26956 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #26957 [verbose] > │ let v189 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26958 [verbose] > │ v189 │
00:10:56 #26959 [verbose] > │ #endif │
00:10:56 #26960 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #26961 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #26962 [verbose] > │ let v190 : (System.Threading.Tasks.Task -> Async<unit>) = │
00:10:56 #26963 [verbose] > │ Async.AwaitTask │
00:10:56 #26964 [verbose] > │ let v191 : Async<unit> = v190 v185 │
00:10:56 #26965 [verbose] > │ v191 │
00:10:56 #26966 [verbose] > │ #endif │
00:10:56 #26967 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26968 [verbose] > │ let v192 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26969 [verbose] > │ v192 │
00:10:56 #26970 [verbose] > │ #endif │
00:10:56 #26971 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26972 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:56 #26973 [verbose] > │ #endif │
00:10:56 #26974 [verbose] > │ |> fun x -> _v186 <- Some x │
00:10:56 #26975 [verbose] > │ let v193 : Async<unit> = _v186.Value │
00:10:56 #26976 [verbose] > │ v193 │
00:10:56 #26977 [verbose] > │ #endif │
00:10:56 #26978 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #26979 [verbose] > │ let v194 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26980 [verbose] > │ v194 │
00:10:56 #26981 [verbose] > │ #endif │
00:10:56 #26982 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #26983 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:56 #26984 [verbose] > │ #endif │
00:10:56 #26985 [verbose] > │ |> fun x -> _v180 <- Some x │
00:10:56 #26986 [verbose] > │ let v195 : Async<unit> = _v180.Value │
00:10:56 #26987 [verbose] > │ do! v195 │
00:10:56 #26988 [verbose] > │ let v196 : US0 = US0_1 │
00:10:56 #26989 [verbose] > │ let v197 : (unit -> string) = closure10() │
00:10:56 #26990 [verbose] > │ method6(v196, v197, v179) │
00:10:56 #26991 [verbose] > │ let v198 : Async<unit> option = None │
00:10:56 #26992 [verbose] > │ let mutable _v198 = v198 │
00:10:56 #26993 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #26994 [verbose] > │ let v199 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26995 [verbose] > │ v199 │
00:10:56 #26996 [verbose] > │ #endif │
00:10:56 #26997 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #26998 [verbose] > │ let v200 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #26999 [verbose] > │ v200 │
00:10:56 #27000 [verbose] > │ #endif │
00:10:56 #27001 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27002 [verbose] > │ let v201 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #27003 [verbose] > │ v201 │
00:10:56 #27004 [verbose] > │ #endif │
00:10:56 #27005 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27006 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27007 [verbose] > │ let v202 : Async<unit> option = None │
00:10:56 #27008 [verbose] > │ let mutable _v202 = v202 │
00:10:56 #27009 [verbose] > │ async { │
00:10:56 #27010 [verbose] > │ let v203 : US0 = US0_1 │
00:10:56 #27011 [verbose] > │ let v204 : (unit -> string) = closure11() │
00:10:56 #27012 [verbose] > │ method6(v203, v204, v179) │
00:10:56 #27013 [verbose] > │ let v205 : System.IO.FileStream option = None │
00:10:56 #27014 [verbose] > │ let mutable _v205 = v205 │
00:10:56 #27015 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27016 [verbose] > │ let v206 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:56 #27017 [verbose] > │ v206 │
00:10:56 #27018 [verbose] > │ #endif │
00:10:56 #27019 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #27020 [verbose] > │ let v207 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:56 #27021 [verbose] > │ v207 │
00:10:56 #27022 [verbose] > │ #endif │
00:10:56 #27023 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27024 [verbose] > │ let v208 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:56 #27025 [verbose] > │ v208 │
00:10:56 #27026 [verbose] > │ #endif │
00:10:56 #27027 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27028 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27029 [verbose] > │ let v209 : System.IO.FileMode = System.IO.FileMode.Open │
00:10:56 #27030 [verbose] > │ let v210 : System.IO.FileAccess = System.IO.FileAccess.ReadWrite │
00:10:56 #27031 [verbose] > │ let v211 : System.IO.FileShare = System.IO.FileShare.None │
00:10:56 #27032 [verbose] > │ let v212 : System.IO.FileStream = new System.IO.FileStream (v144, v209, │
00:10:56 #27033 [verbose] > │ v210, v211) │
00:10:56 #27034 [verbose] > │ v212 │
00:10:56 #27035 [verbose] > │ #endif │
00:10:56 #27036 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #27037 [verbose] > │ let v213 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:10:56 #27038 [verbose] > │ v213 │
00:10:56 #27039 [verbose] > │ #endif │
00:10:56 #27040 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #27041 [verbose] > │ Unchecked.defaultof<System.IO.FileStream> │
00:10:56 #27042 [verbose] > │ #endif │
00:10:56 #27043 [verbose] > │ |> fun x -> _v205 <- Some x │
00:10:56 #27044 [verbose] > │ let v214 : System.IO.FileStream = _v205.Value │
00:10:56 #27045 [verbose] > │ use v214 = v214 │
00:10:56 #27046 [verbose] > │ let v215 : System.IO.FileStream = v214 │
00:10:56 #27047 [verbose] > │ let v216 : US0 = US0_1 │
00:10:56 #27048 [verbose] > │ let v217 : (unit -> string) = closure12() │
00:10:56 #27049 [verbose] > │ method6(v216, v217, v179) │
00:10:56 #27050 [verbose] > │ let v218 : Async<unit> option = None │
00:10:56 #27051 [verbose] > │ let mutable _v218 = v218 │
00:10:56 #27052 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27053 [verbose] > │ let v219 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #27054 [verbose] > │ v219 │
00:10:56 #27055 [verbose] > │ #endif │
00:10:56 #27056 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #27057 [verbose] > │ let v220 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #27058 [verbose] > │ v220 │
00:10:56 #27059 [verbose] > │ #endif │
00:10:56 #27060 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27061 [verbose] > │ let v221 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #27062 [verbose] > │ v221 │
00:10:56 #27063 [verbose] > │ #endif │
00:10:56 #27064 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27065 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27066 [verbose] > │ let v222 : (int32 -> Async<unit>) = Async.Sleep │
00:10:56 #27067 [verbose] > │ let v223 : Async<unit> = v222 2000 │
00:10:56 #27068 [verbose] > │ v223 │
00:10:56 #27069 [verbose] > │ #endif │
00:10:56 #27070 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #27071 [verbose] > │ let v224 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #27072 [verbose] > │ v224 │
00:10:56 #27073 [verbose] > │ #endif │
00:10:56 #27074 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #27075 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:56 #27076 [verbose] > │ #endif │
00:10:56 #27077 [verbose] > │ |> fun x -> _v218 <- Some x │
00:10:56 #27078 [verbose] > │ let v225 : Async<unit> = _v218.Value │
00:10:56 #27079 [verbose] > │ do! v225 │
00:10:56 #27080 [verbose] > │ let v226 : US0 = US0_1 │
00:10:56 #27081 [verbose] > │ let v227 : (unit -> string) = closure13() │
00:10:56 #27082 [verbose] > │ method6(v226, v227, v179) │
00:10:56 #27083 [verbose] > │ } │
00:10:56 #27084 [verbose] > │ |> fun x -> _v202 <- Some x │
00:10:56 #27085 [verbose] > │ let v228 : Async<unit> = _v202 |> Option.get │
00:10:56 #27086 [verbose] > │ v228 │
00:10:56 #27087 [verbose] > │ #endif │
00:10:56 #27088 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #27089 [verbose] > │ let v229 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #27090 [verbose] > │ v229 │
00:10:56 #27091 [verbose] > │ #endif │
00:10:56 #27092 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #27093 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:56 #27094 [verbose] > │ #endif │
00:10:56 #27095 [verbose] > │ |> fun x -> _v198 <- Some x │
00:10:56 #27096 [verbose] > │ let v230 : Async<unit> = _v198.Value │
00:10:56 #27097 [verbose] > │ let v231 : Async<Async<unit>> option = None │
00:10:56 #27098 [verbose] > │ let mutable _v231 = v231 │
00:10:56 #27099 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27100 [verbose] > │ let v232 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:56 #27101 [verbose] > │ v232 │
00:10:56 #27102 [verbose] > │ #endif │
00:10:56 #27103 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #27104 [verbose] > │ let v233 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:56 #27105 [verbose] > │ v233 │
00:10:56 #27106 [verbose] > │ #endif │
00:10:56 #27107 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27108 [verbose] > │ let v234 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:56 #27109 [verbose] > │ v234 │
00:10:56 #27110 [verbose] > │ #endif │
00:10:56 #27111 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27112 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27113 [verbose] > │ let v235 : (Async<unit> -> Async<Async<unit>>) = Async.StartChild │
00:10:56 #27114 [verbose] > │ let v236 : Async<Async<unit>> = v235 v230 │
00:10:56 #27115 [verbose] > │ v236 │
00:10:56 #27116 [verbose] > │ #endif │
00:10:56 #27117 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #27118 [verbose] > │ let v237 : Async<Async<unit>> = null |> unbox<Async<Async<unit>>> │
00:10:56 #27119 [verbose] > │ v237 │
00:10:56 #27120 [verbose] > │ #endif │
00:10:56 #27121 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #27122 [verbose] > │ Unchecked.defaultof<Async<Async<unit>>> │
00:10:56 #27123 [verbose] > │ #endif │
00:10:56 #27124 [verbose] > │ |> fun x -> _v231 <- Some x │
00:10:56 #27125 [verbose] > │ let v238 : Async<Async<unit>> = _v231.Value │
00:10:56 #27126 [verbose] > │ let! v238 = v238 │
00:10:56 #27127 [verbose] > │ let v239 : Async<unit> = v238 │
00:10:56 #27128 [verbose] > │ let v240 : US0 = US0_1 │
00:10:56 #27129 [verbose] > │ let v241 : (unit -> string) = closure14() │
00:10:56 #27130 [verbose] > │ method6(v240, v241, v179) │
00:10:56 #27131 [verbose] > │ let v242 : Async<unit> option = None │
00:10:56 #27132 [verbose] > │ let mutable _v242 = v242 │
00:10:56 #27133 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27134 [verbose] > │ let v243 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #27135 [verbose] > │ v243 │
00:10:56 #27136 [verbose] > │ #endif │
00:10:56 #27137 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #27138 [verbose] > │ let v244 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #27139 [verbose] > │ v244 │
00:10:56 #27140 [verbose] > │ #endif │
00:10:56 #27141 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27142 [verbose] > │ let v245 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #27143 [verbose] > │ v245 │
00:10:56 #27144 [verbose] > │ #endif │
00:10:56 #27145 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27146 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27147 [verbose] > │ let v246 : (int32 -> Async<unit>) = Async.Sleep │
00:10:56 #27148 [verbose] > │ let v247 : Async<unit> = v246 1 │
00:10:56 #27149 [verbose] > │ v247 │
00:10:56 #27150 [verbose] > │ #endif │
00:10:56 #27151 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #27152 [verbose] > │ let v248 : Async<unit> = null |> unbox<Async<unit>> │
00:10:56 #27153 [verbose] > │ v248 │
00:10:56 #27154 [verbose] > │ #endif │
00:10:56 #27155 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #27156 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:10:56 #27157 [verbose] > │ #endif │
00:10:56 #27158 [verbose] > │ |> fun x -> _v242 <- Some x │
00:10:56 #27159 [verbose] > │ let v249 : Async<unit> = _v242.Value │
00:10:56 #27160 [verbose] > │ do! v249 │
00:10:56 #27161 [verbose] > │ let v250 : US0 = US0_1 │
00:10:56 #27162 [verbose] > │ let v251 : (unit -> string) = closure15() │
00:10:56 #27163 [verbose] > │ method6(v250, v251, v179) │
00:10:56 #27164 [verbose] > │ let v252 : Async<int64> option = None │
00:10:56 #27165 [verbose] > │ let mutable _v252 = v252 │
00:10:56 #27166 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27167 [verbose] > │ let v253 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #27168 [verbose] > │ v253 │
00:10:56 #27169 [verbose] > │ #endif │
00:10:56 #27170 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #27171 [verbose] > │ let v254 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #27172 [verbose] > │ v254 │
00:10:56 #27173 [verbose] > │ #endif │
00:10:56 #27174 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27175 [verbose] > │ let v255 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #27176 [verbose] > │ v255 │
00:10:56 #27177 [verbose] > │ #endif │
00:10:56 #27178 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27179 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27180 [verbose] > │ let v256 : int64 = 0L │
00:10:56 #27181 [verbose] > │ let v257 : Async<int64> = method11(v171, v144, v256) │
00:10:56 #27182 [verbose] > │ v257 │
00:10:56 #27183 [verbose] > │ #endif │
00:10:56 #27184 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #27185 [verbose] > │ let v258 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #27186 [verbose] > │ v258 │
00:10:56 #27187 [verbose] > │ #endif │
00:10:56 #27188 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #27189 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:56 #27190 [verbose] > │ #endif │
00:10:56 #27191 [verbose] > │ |> fun x -> _v252 <- Some x │
00:10:56 #27192 [verbose] > │ let v259 : Async<int64> = _v252.Value │
00:10:56 #27193 [verbose] > │ let! v259 = v259 │
00:10:56 #27194 [verbose] > │ let v260 : int64 = v259 │
00:10:56 #27195 [verbose] > │ let v261 : US0 = US0_1 │
00:10:56 #27196 [verbose] > │ let v262 : (unit -> string) = closure18() │
00:10:56 #27197 [verbose] > │ method6(v261, v262, v179) │
00:10:56 #27198 [verbose] > │ let v263 : Async<int64> option = None │
00:10:56 #27199 [verbose] > │ let mutable _v263 = v263 │
00:10:56 #27200 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27201 [verbose] > │ let v264 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #27202 [verbose] > │ v264 │
00:10:56 #27203 [verbose] > │ #endif │
00:10:56 #27204 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #27205 [verbose] > │ let v265 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #27206 [verbose] > │ v265 │
00:10:56 #27207 [verbose] > │ #endif │
00:10:56 #27208 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27209 [verbose] > │ let v266 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #27210 [verbose] > │ v266 │
00:10:56 #27211 [verbose] > │ #endif │
00:10:56 #27212 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27213 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27214 [verbose] > │ let v267 : int64 = 0L │
00:10:56 #27215 [verbose] > │ let v268 : Async<int64> = method13(v171, v267) │
00:10:56 #27216 [verbose] > │ v268 │
00:10:56 #27217 [verbose] > │ #endif │
00:10:56 #27218 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #27219 [verbose] > │ let v269 : Async<int64> = null |> unbox<Async<int64>> │
00:10:56 #27220 [verbose] > │ v269 │
00:10:56 #27221 [verbose] > │ #endif │
00:10:56 #27222 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #27223 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:10:56 #27224 [verbose] > │ #endif │
00:10:56 #27225 [verbose] > │ |> fun x -> _v263 <- Some x │
00:10:56 #27226 [verbose] > │ let v270 : Async<int64> = _v263.Value │
00:10:56 #27227 [verbose] > │ let! v270 = v270 │
00:10:56 #27228 [verbose] > │ let v271 : int64 = v270 │
00:10:56 #27229 [verbose] > │ let v272 : US0 = US0_1 │
00:10:56 #27230 [verbose] > │ let v273 : (unit -> string) = closure20() │
00:10:56 #27231 [verbose] > │ method6(v272, v273, v179) │
00:10:56 #27232 [verbose] > │ let v274 : Async<string> option = None │
00:10:56 #27233 [verbose] > │ let mutable _v274 = v274 │
00:10:56 #27234 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27235 [verbose] > │ let v275 : Async<string> = null |> unbox<Async<string>> │
00:10:56 #27236 [verbose] > │ v275 │
00:10:56 #27237 [verbose] > │ #endif │
00:10:56 #27238 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #27239 [verbose] > │ let v276 : Async<string> = null |> unbox<Async<string>> │
00:10:56 #27240 [verbose] > │ v276 │
00:10:56 #27241 [verbose] > │ #endif │
00:10:56 #27242 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27243 [verbose] > │ let v277 : Async<string> = null |> unbox<Async<string>> │
00:10:56 #27244 [verbose] > │ v277 │
00:10:56 #27245 [verbose] > │ #endif │
00:10:56 #27246 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27247 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27248 [verbose] > │ let v278 : (string -> System.Threading.Tasks.Task<string>) = │
00:10:56 #27249 [verbose] > │ System.IO.File.ReadAllTextAsync │
00:10:56 #27250 [verbose] > │ let v279 : System.Threading.Tasks.Task<string> = v278 v171 │
00:10:56 #27251 [verbose] > │ let v280 : Async<string> option = None │
00:10:56 #27252 [verbose] > │ let mutable _v280 = v280 │
00:10:56 #27253 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27254 [verbose] > │ let v281 : Async<string> = null |> unbox<Async<string>> │
00:10:56 #27255 [verbose] > │ v281 │
00:10:56 #27256 [verbose] > │ #endif │
00:10:56 #27257 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #27258 [verbose] > │ let v282 : Async<string> = null |> unbox<Async<string>> │
00:10:56 #27259 [verbose] > │ v282 │
00:10:56 #27260 [verbose] > │ #endif │
00:10:56 #27261 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27262 [verbose] > │ let v283 : Async<string> = null |> unbox<Async<string>> │
00:10:56 #27263 [verbose] > │ v283 │
00:10:56 #27264 [verbose] > │ #endif │
00:10:56 #27265 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27266 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27267 [verbose] > │ let v284 : (System.Threading.Tasks.Task<string> -> Async<string>) = │
00:10:56 #27268 [verbose] > │ Async.AwaitTask │
00:10:56 #27269 [verbose] > │ let v285 : Async<string> = v284 v279 │
00:10:56 #27270 [verbose] > │ v285 │
00:10:56 #27271 [verbose] > │ #endif │
00:10:56 #27272 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #27273 [verbose] > │ let v286 : Async<string> = null |> unbox<Async<string>> │
00:10:56 #27274 [verbose] > │ v286 │
00:10:56 #27275 [verbose] > │ #endif │
00:10:56 #27276 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #27277 [verbose] > │ Unchecked.defaultof<Async<string>> │
00:10:56 #27278 [verbose] > │ #endif │
00:10:56 #27279 [verbose] > │ |> fun x -> _v280 <- Some x │
00:10:56 #27280 [verbose] > │ let v287 : Async<string> = _v280.Value │
00:10:56 #27281 [verbose] > │ v287 │
00:10:56 #27282 [verbose] > │ #endif │
00:10:56 #27283 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #27284 [verbose] > │ let v288 : Async<string> = null |> unbox<Async<string>> │
00:10:56 #27285 [verbose] > │ v288 │
00:10:56 #27286 [verbose] > │ #endif │
00:10:56 #27287 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #27288 [verbose] > │ Unchecked.defaultof<Async<string>> │
00:10:56 #27289 [verbose] > │ #endif │
00:10:56 #27290 [verbose] > │ |> fun x -> _v274 <- Some x │
00:10:56 #27291 [verbose] > │ let v289 : Async<string> = _v274.Value │
00:10:56 #27292 [verbose] > │ let! v289 = v289 │
00:10:56 #27293 [verbose] > │ let v290 : string = v289 │
00:10:56 #27294 [verbose] > │ let v291 : US0 = US0_1 │
00:10:56 #27295 [verbose] > │ let v292 : (unit -> string) = closure21() │
00:10:56 #27296 [verbose] > │ method6(v291, v292, v179) │
00:10:56 #27297 [verbose] > │ do! v239 │
00:10:56 #27298 [verbose] > │ let v293 : US0 = US0_1 │
00:10:56 #27299 [verbose] > │ let v294 : (unit -> string) = closure22() │
00:10:56 #27300 [verbose] > │ method6(v293, v294, v179) │
00:10:56 #27301 [verbose] > │ return struct (v260, v271, v290) │
00:10:56 #27302 [verbose] > │ } │
00:10:56 #27303 [verbose] > │ |> fun x -> _v176 <- Some x │
00:10:56 #27304 [verbose] > │ let v295 : Async<struct (int64 * int64 * string)> = _v176 |> Option.get │
00:10:56 #27305 [verbose] > │ v295 │
00:10:56 #27306 [verbose] > │ #endif │
00:10:56 #27307 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #27308 [verbose] > │ let v296 : Async<struct (int64 * int64 * string)> = null |> │
00:10:56 #27309 [verbose] > │ unbox<Async<struct (int64 * int64 * string)>> │
00:10:56 #27310 [verbose] > │ v296 │
00:10:56 #27311 [verbose] > │ #endif │
00:10:56 #27312 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #27313 [verbose] > │ Unchecked.defaultof<Async<struct (int64 * int64 * string)>> │
00:10:56 #27314 [verbose] > │ #endif │
00:10:56 #27315 [verbose] > │ |> fun x -> _v172 <- Some x │
00:10:56 #27316 [verbose] > │ let v297 : Async<struct (int64 * int64 * string)> = _v172.Value │
00:10:56 #27317 [verbose] > │ let v298 : Async<US3> option = None │
00:10:56 #27318 [verbose] > │ let mutable _v298 = v298 │
00:10:56 #27319 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27320 [verbose] > │ let v299 : Async<US3> = null |> unbox<Async<US3>> │
00:10:56 #27321 [verbose] > │ v299 │
00:10:56 #27322 [verbose] > │ #endif │
00:10:56 #27323 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #27324 [verbose] > │ let v300 : Async<US3> = null |> unbox<Async<US3>> │
00:10:56 #27325 [verbose] > │ v300 │
00:10:56 #27326 [verbose] > │ #endif │
00:10:56 #27327 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27328 [verbose] > │ let v301 : Async<US3> = null |> unbox<Async<US3>> │
00:10:56 #27329 [verbose] > │ v301 │
00:10:56 #27330 [verbose] > │ #endif │
00:10:56 #27331 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27332 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27333 [verbose] > │ let v302 : Async<US3> option = None │
00:10:56 #27334 [verbose] > │ let mutable _v302 = v302 │
00:10:56 #27335 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27336 [verbose] > │ let v303 : Async<US3> = null |> unbox<Async<US3>> │
00:10:56 #27337 [verbose] > │ v303 │
00:10:56 #27338 [verbose] > │ #endif │
00:10:56 #27339 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #27340 [verbose] > │ let v304 : Async<US3> = null |> unbox<Async<US3>> │
00:10:56 #27341 [verbose] > │ v304 │
00:10:56 #27342 [verbose] > │ #endif │
00:10:56 #27343 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27344 [verbose] > │ let v305 : Async<US3> = null |> unbox<Async<US3>> │
00:10:56 #27345 [verbose] > │ v305 │
00:10:56 #27346 [verbose] > │ #endif │
00:10:56 #27347 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27348 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27349 [verbose] > │ let v306 : Async<US3> option = None │
00:10:56 #27350 [verbose] > │ let mutable _v306 = v306 │
00:10:56 #27351 [verbose] > │ async { │
00:10:56 #27352 [verbose] > │ let v307 : Async<Async<struct (int64 * int64 * string)>> option = None │
00:10:56 #27353 [verbose] > │ let mutable _v307 = v307 │
00:10:56 #27354 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27355 [verbose] > │ let v308 : Async<Async<struct (int64 * int64 * string)>> = null |> │
00:10:56 #27356 [verbose] > │ unbox<Async<Async<struct (int64 * int64 * string)>>> │
00:10:56 #27357 [verbose] > │ v308 │
00:10:56 #27358 [verbose] > │ #endif │
00:10:56 #27359 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #27360 [verbose] > │ let v309 : Async<Async<struct (int64 * int64 * string)>> = null |> │
00:10:56 #27361 [verbose] > │ unbox<Async<Async<struct (int64 * int64 * string)>>> │
00:10:56 #27362 [verbose] > │ v309 │
00:10:56 #27363 [verbose] > │ #endif │
00:10:56 #27364 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27365 [verbose] > │ let v310 : Async<Async<struct (int64 * int64 * string)>> = null |> │
00:10:56 #27366 [verbose] > │ unbox<Async<Async<struct (int64 * int64 * string)>>> │
00:10:56 #27367 [verbose] > │ v310 │
00:10:56 #27368 [verbose] > │ #endif │
00:10:56 #27369 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27370 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27371 [verbose] > │ let v311 : Async<Async<struct (int64 * int64 * string)>> = │
00:10:56 #27372 [verbose] > │ Async.StartChild (v297, 3000) │
00:10:56 #27373 [verbose] > │ v311 │
00:10:56 #27374 [verbose] > │ #endif │
00:10:56 #27375 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #27376 [verbose] > │ let v312 : Async<Async<struct (int64 * int64 * string)>> = null |> │
00:10:56 #27377 [verbose] > │ unbox<Async<Async<struct (int64 * int64 * string)>>> │
00:10:56 #27378 [verbose] > │ v312 │
00:10:56 #27379 [verbose] > │ #endif │
00:10:56 #27380 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #27381 [verbose] > │ Unchecked.defaultof<Async<Async<struct (int64 * int64 * string)>>> │
00:10:56 #27382 [verbose] > │ #endif │
00:10:56 #27383 [verbose] > │ |> fun x -> _v307 <- Some x │
00:10:56 #27384 [verbose] > │ let v313 : Async<Async<struct (int64 * int64 * string)>> = _v307.Value │
00:10:56 #27385 [verbose] > │ let! v313 = v313 │
00:10:56 #27386 [verbose] > │ let v314 : Async<struct (int64 * int64 * string)> = v313 │
00:10:56 #27387 [verbose] > │ let v315 : Async<Choice<struct (int64 * int64 * string), exn>> option = │
00:10:56 #27388 [verbose] > │ None │
00:10:56 #27389 [verbose] > │ let mutable _v315 = v315 │
00:10:56 #27390 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27391 [verbose] > │ let v316 : Async<Choice<struct (int64 * int64 * string), exn>> = null |> │
00:10:56 #27392 [verbose] > │ unbox<Async<Choice<struct (int64 * int64 * string), exn>>> │
00:10:56 #27393 [verbose] > │ v316 │
00:10:56 #27394 [verbose] > │ #endif │
00:10:56 #27395 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:56 #27396 [verbose] > │ let v317 : Async<Choice<struct (int64 * int64 * string), exn>> = null |> │
00:10:56 #27397 [verbose] > │ unbox<Async<Choice<struct (int64 * int64 * string), exn>>> │
00:10:56 #27398 [verbose] > │ v317 │
00:10:56 #27399 [verbose] > │ #endif │
00:10:56 #27400 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:56 #27401 [verbose] > │ let v318 : Async<Choice<struct (int64 * int64 * string), exn>> = null |> │
00:10:56 #27402 [verbose] > │ unbox<Async<Choice<struct (int64 * int64 * string), exn>>> │
00:10:56 #27403 [verbose] > │ v318 │
00:10:56 #27404 [verbose] > │ #endif │
00:10:56 #27405 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:56 #27406 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:56 #27407 [verbose] > │ let v319 : (Async<struct (int64 * int64 * string)> -> │
00:10:56 #27408 [verbose] > │ Async<Choice<struct (int64 * int64 * string), exn>>) = Async.Catch │
00:10:56 #27409 [verbose] > │ let v320 : Async<Choice<struct (int64 * int64 * string), exn>> = v319 │
00:10:56 #27410 [verbose] > │ v314 │
00:10:56 #27411 [verbose] > │ v320 │
00:10:56 #27412 [verbose] > │ #endif │
00:10:56 #27413 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:56 #27414 [verbose] > │ let v321 : Async<Choice<struct (int64 * int64 * string), exn>> = null |> │
00:10:56 #27415 [verbose] > │ unbox<Async<Choice<struct (int64 * int64 * string), exn>>> │
00:10:56 #27416 [verbose] > │ v321 │
00:10:56 #27417 [verbose] > │ #endif │
00:10:56 #27418 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:56 #27419 [verbose] > │ Unchecked.defaultof<Async<Choice<struct (int64 * int64 * string), exn>>> │
00:10:56 #27420 [verbose] > │ #endif │
00:10:56 #27421 [verbose] > │ |> fun x -> _v315 <- Some x │
00:10:56 #27422 [verbose] > │ let v322 : Async<Choice<struct (int64 * int64 * string), exn>> = │
00:10:56 #27423 [verbose] > │ _v315.Value │
00:10:56 #27424 [verbose] > │ let v323 : Async<US4> option = None │
00:10:56 #27425 [verbose] > │ let mutable _v323 = v323 │
00:10:56 #27426 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:56 #27427 [verbose] > │ let v324 : Async<US4> = null |> unbox<Async<US4>> │
00:10:56 #27428 [verbose] > │ v324 │
00:10:57 #27429 [verbose] > │ #endif │
00:10:57 #27430 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:57 #27431 [verbose] > │ let v325 : Async<US4> = null |> unbox<Async<US4>> │
00:10:57 #27432 [verbose] > │ v325 │
00:10:57 #27433 [verbose] > │ #endif │
00:10:57 #27434 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:57 #27435 [verbose] > │ let v326 : Async<US4> = null |> unbox<Async<US4>> │
00:10:57 #27436 [verbose] > │ v326 │
00:10:57 #27437 [verbose] > │ #endif │
00:10:57 #27438 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:57 #27439 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:57 #27440 [verbose] > │ let v327 : Async<US4> option = None │
00:10:57 #27441 [verbose] > │ let mutable _v327 = v327 │
00:10:57 #27442 [verbose] > │ async { │
00:10:57 #27443 [verbose] > │ let! v322 = v322 │
00:10:57 #27444 [verbose] > │ let v328 : Choice<struct (int64 * int64 * string), exn> = v322 │
00:10:57 #27445 [verbose] > │ let v329 : US4 option = None │
00:10:57 #27446 [verbose] > │ let mutable _v329 = v329 │
00:10:57 #27447 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:57 #27448 [verbose] > │ let v330 : US4 = null |> unbox<US4> │
00:10:57 #27449 [verbose] > │ v330 │
00:10:57 #27450 [verbose] > │ #endif │
00:10:57 #27451 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:57 #27452 [verbose] > │ let v331 : US4 = null |> unbox<US4> │
00:10:57 #27453 [verbose] > │ v331 │
00:10:57 #27454 [verbose] > │ #endif │
00:10:57 #27455 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:57 #27456 [verbose] > │ let v332 : US4 = null |> unbox<US4> │
00:10:57 #27457 [verbose] > │ v332 │
00:10:57 #27458 [verbose] > │ #endif │
00:10:57 #27459 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:57 #27460 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:57 #27461 [verbose] > │ let v333 : (struct (int64 * int64 * string) -> US4) = closure23() │
00:10:57 #27462 [verbose] > │ let v334 : (exn -> US4) = closure24() │
00:10:57 #27463 [verbose] > │ let v335 : US4 = match v328 with Choice1Of2 x -> v333 x | Choice2Of2 x │
00:10:57 #27464 [verbose] > │ -> v334 x │
00:10:57 #27465 [verbose] > │ v335 │
00:10:57 #27466 [verbose] > │ #endif │
00:10:57 #27467 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:57 #27468 [verbose] > │ let v336 : US4 = null |> unbox<US4> │
00:10:57 #27469 [verbose] > │ v336 │
00:10:57 #27470 [verbose] > │ #endif │
00:10:57 #27471 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:57 #27472 [verbose] > │ Unchecked.defaultof<US4> │
00:10:57 #27473 [verbose] > │ #endif │
00:10:57 #27474 [verbose] > │ |> fun x -> _v329 <- Some x │
00:10:57 #27475 [verbose] > │ let v337 : US4 = _v329.Value │
00:10:57 #27476 [verbose] > │ return v337 │
00:10:57 #27477 [verbose] > │ } │
00:10:57 #27478 [verbose] > │ |> fun x -> _v327 <- Some x │
00:10:57 #27479 [verbose] > │ let v338 : Async<US4> = _v327 |> Option.get │
00:10:57 #27480 [verbose] > │ v338 │
00:10:57 #27481 [verbose] > │ #endif │
00:10:57 #27482 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:57 #27483 [verbose] > │ let v339 : Async<US4> = null |> unbox<Async<US4>> │
00:10:57 #27484 [verbose] > │ v339 │
00:10:57 #27485 [verbose] > │ #endif │
00:10:57 #27486 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:57 #27487 [verbose] > │ Unchecked.defaultof<Async<US4>> │
00:10:57 #27488 [verbose] > │ #endif │
00:10:57 #27489 [verbose] > │ |> fun x -> _v323 <- Some x │
00:10:57 #27490 [verbose] > │ let v340 : Async<US4> = _v323.Value │
00:10:57 #27491 [verbose] > │ let v341 : Async<US5> option = None │
00:10:57 #27492 [verbose] > │ let mutable _v341 = v341 │
00:10:57 #27493 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:57 #27494 [verbose] > │ let v342 : Async<US5> = null |> unbox<Async<US5>> │
00:10:57 #27495 [verbose] > │ v342 │
00:10:57 #27496 [verbose] > │ #endif │
00:10:57 #27497 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:57 #27498 [verbose] > │ let v343 : Async<US5> = null |> unbox<Async<US5>> │
00:10:57 #27499 [verbose] > │ v343 │
00:10:57 #27500 [verbose] > │ #endif │
00:10:57 #27501 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:57 #27502 [verbose] > │ let v344 : Async<US5> = null |> unbox<Async<US5>> │
00:10:57 #27503 [verbose] > │ v344 │
00:10:57 #27504 [verbose] > │ #endif │
00:10:57 #27505 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:57 #27506 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:57 #27507 [verbose] > │ let v345 : Async<US5> option = None │
00:10:57 #27508 [verbose] > │ let mutable _v345 = v345 │
00:10:57 #27509 [verbose] > │ async { │
00:10:57 #27510 [verbose] > │ let! v340 = v340 │
00:10:57 #27511 [verbose] > │ let v346 : US4 = v340 │
00:10:57 #27512 [verbose] > │ let v354 : US5 = │
00:10:57 #27513 [verbose] > │ match v346 with │
00:10:57 #27514 [verbose] > │ | US4_0(v347, v348, v349) -> (* Choice1Of2 *) │
00:10:57 #27515 [verbose] > │ US5_0(v347, v348, v349) │
00:10:57 #27516 [verbose] > │ | US4_1(v351) -> (* Choice2Of2 *) │
00:10:57 #27517 [verbose] > │ US5_1(v351) │
00:10:57 #27518 [verbose] > │ return v354 │
00:10:57 #27519 [verbose] > │ } │
00:10:57 #27520 [verbose] > │ |> fun x -> _v345 <- Some x │
00:10:57 #27521 [verbose] > │ let v355 : Async<US5> = _v345 |> Option.get │
00:10:57 #27522 [verbose] > │ v355 │
00:10:57 #27523 [verbose] > │ #endif │
00:10:57 #27524 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:57 #27525 [verbose] > │ let v356 : Async<US5> = null |> unbox<Async<US5>> │
00:10:57 #27526 [verbose] > │ v356 │
00:10:57 #27527 [verbose] > │ #endif │
00:10:57 #27528 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:57 #27529 [verbose] > │ Unchecked.defaultof<Async<US5>> │
00:10:57 #27530 [verbose] > │ #endif │
00:10:57 #27531 [verbose] > │ |> fun x -> _v341 <- Some x │
00:10:57 #27532 [verbose] > │ let v357 : Async<US5> = _v341.Value │
00:10:57 #27533 [verbose] > │ let v358 : Async<US3> option = None │
00:10:57 #27534 [verbose] > │ let mutable _v358 = v358 │
00:10:57 #27535 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:57 #27536 [verbose] > │ let v359 : Async<US3> = null |> unbox<Async<US3>> │
00:10:57 #27537 [verbose] > │ v359 │
00:10:57 #27538 [verbose] > │ #endif │
00:10:57 #27539 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:57 #27540 [verbose] > │ let v360 : Async<US3> = null |> unbox<Async<US3>> │
00:10:57 #27541 [verbose] > │ v360 │
00:10:57 #27542 [verbose] > │ #endif │
00:10:57 #27543 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:57 #27544 [verbose] > │ let v361 : Async<US3> = null |> unbox<Async<US3>> │
00:10:57 #27545 [verbose] > │ v361 │
00:10:57 #27546 [verbose] > │ #endif │
00:10:57 #27547 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:57 #27548 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:57 #27549 [verbose] > │ let v362 : Async<US3> option = None │
00:10:57 #27550 [verbose] > │ let mutable _v362 = v362 │
00:10:57 #27551 [verbose] > │ async { │
00:10:57 #27552 [verbose] > │ let! v357 = v357 │
00:10:57 #27553 [verbose] > │ let v363 : US5 = v357 │
00:10:57 #27554 [verbose] > │ let v389 : US3 = │
00:10:57 #27555 [verbose] > │ match v363 with │
00:10:57 #27556 [verbose] > │ | US5_1(v368) -> (* Error *) │
00:10:57 #27557 [verbose] > │ let v369 : string = $"%A{v368}" │
00:10:57 #27558 [verbose] > │ let v370 : string = "System.TimeoutException" │
00:10:57 #27559 [verbose] > │ let v371 : bool = v369.Contains v370 │
00:10:57 #27560 [verbose] > │ if v371 then │
00:10:57 #27561 [verbose] > │ let v372 : US0 = US0_1 │
00:10:57 #27562 [verbose] > │ let v373 : (unit -> string) = closure25() │
00:10:57 #27563 [verbose] > │ let v374 : (unit -> string) = closure26() │
00:10:57 #27564 [verbose] > │ method6(v372, v373, v374) │
00:10:57 #27565 [verbose] > │ US3_1 │
00:10:57 #27566 [verbose] > │ else │
00:10:57 #27567 [verbose] > │ let v376 : string option = None │
00:10:57 #27568 [verbose] > │ let mutable _v376 = v376 │
00:10:57 #27569 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:57 #27570 [verbose] > │ let v377 : string = $"%A{v368}" │
00:10:57 #27571 [verbose] > │ v377 │
00:10:57 #27572 [verbose] > │ #endif │
00:10:57 #27573 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:57 #27574 [verbose] > │ let v378 : string = $"%A{v368}" │
00:10:57 #27575 [verbose] > │ v378 │
00:10:57 #27576 [verbose] > │ #endif │
00:10:57 #27577 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:57 #27578 [verbose] > │ let v379 : string = $"%A{v368}" │
00:10:57 #27579 [verbose] > │ v379 │
00:10:57 #27580 [verbose] > │ #endif │
00:10:57 #27581 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:57 #27582 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:57 #27583 [verbose] > │ let v380 : string = $"{v368.GetType ()}: {v368.Message}" │
00:10:57 #27584 [verbose] > │ v380 │
00:10:57 #27585 [verbose] > │ #endif │
00:10:57 #27586 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:57 #27587 [verbose] > │ let v381 : string = $"%A{v368}" │
00:10:57 #27588 [verbose] > │ v381 │
00:10:57 #27589 [verbose] > │ #endif │
00:10:57 #27590 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:10:57 #27591 [verbose] > │ FABLE_COMPILER_DART │
00:10:57 #27592 [verbose] > │ Unchecked.defaultof<string> │
00:10:57 #27593 [verbose] > │ #endif │
00:10:57 #27594 [verbose] > │ |> fun x -> _v376 <- Some x │
00:10:57 #27595 [verbose] > │ let v382 : string = _v376.Value │
00:10:57 #27596 [verbose] > │ let v383 : US0 = US0_4 │
00:10:57 #27597 [verbose] > │ let v384 : (unit -> string) = closure27(v382) │
00:10:57 #27598 [verbose] > │ let v385 : (unit -> string) = closure26() │
00:10:57 #27599 [verbose] > │ method6(v383, v384, v385) │
00:10:57 #27600 [verbose] > │ US3_1 │
00:10:57 #27601 [verbose] > │ | US5_0(v364, v365, v366) -> (* Ok *) │
00:10:57 #27602 [verbose] > │ US3_0(v364, v365, v366) │
00:10:57 #27603 [verbose] > │ return v389 │
00:10:57 #27604 [verbose] > │ } │
00:10:57 #27605 [verbose] > │ |> fun x -> _v362 <- Some x │
00:10:57 #27606 [verbose] > │ let v390 : Async<US3> = _v362 |> Option.get │
00:10:57 #27607 [verbose] > │ v390 │
00:10:57 #27608 [verbose] > │ #endif │
00:10:57 #27609 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:57 #27610 [verbose] > │ let v391 : Async<US3> = null |> unbox<Async<US3>> │
00:10:57 #27611 [verbose] > │ v391 │
00:10:57 #27612 [verbose] > │ #endif │
00:10:57 #27613 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:57 #27614 [verbose] > │ Unchecked.defaultof<Async<US3>> │
00:10:57 #27615 [verbose] > │ #endif │
00:10:57 #27616 [verbose] > │ |> fun x -> _v358 <- Some x │
00:10:57 #27617 [verbose] > │ let v392 : Async<US3> = _v358.Value │
00:10:57 #27618 [verbose] > │ return! v392 │
00:10:57 #27619 [verbose] > │ } │
00:10:57 #27620 [verbose] > │ |> fun x -> _v306 <- Some x │
00:10:57 #27621 [verbose] > │ let v393 : Async<US3> = _v306 |> Option.get │
00:10:57 #27622 [verbose] > │ v393 │
00:10:57 #27623 [verbose] > │ #endif │
00:10:57 #27624 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:57 #27625 [verbose] > │ let v394 : Async<US3> = null |> unbox<Async<US3>> │
00:10:57 #27626 [verbose] > │ v394 │
00:10:57 #27627 [verbose] > │ #endif │
00:10:57 #27628 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:57 #27629 [verbose] > │ Unchecked.defaultof<Async<US3>> │
00:10:57 #27630 [verbose] > │ #endif │
00:10:57 #27631 [verbose] > │ |> fun x -> _v302 <- Some x │
00:10:57 #27632 [verbose] > │ let v395 : Async<US3> = _v302.Value │
00:10:57 #27633 [verbose] > │ v395 │
00:10:57 #27634 [verbose] > │ #endif │
00:10:57 #27635 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:57 #27636 [verbose] > │ let v396 : Async<US3> = null |> unbox<Async<US3>> │
00:10:57 #27637 [verbose] > │ v396 │
00:10:57 #27638 [verbose] > │ #endif │
00:10:57 #27639 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:57 #27640 [verbose] > │ Unchecked.defaultof<Async<US3>> │
00:10:57 #27641 [verbose] > │ #endif │
00:10:57 #27642 [verbose] > │ |> fun x -> _v298 <- Some x │
00:10:57 #27643 [verbose] > │ let v397 : Async<US3> = _v298.Value │
00:10:57 #27644 [verbose] > │ let v398 : US3 option = None │
00:10:57 #27645 [verbose] > │ let mutable _v398 = v398 │
00:10:57 #27646 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:10:57 #27647 [verbose] > │ let v399 : US3 = null |> unbox<US3> │
00:10:57 #27648 [verbose] > │ v399 │
00:10:57 #27649 [verbose] > │ #endif │
00:10:57 #27650 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:10:57 #27651 [verbose] > │ let v400 : US3 = null |> unbox<US3> │
00:10:57 #27652 [verbose] > │ v400 │
00:10:57 #27653 [verbose] > │ #endif │
00:10:57 #27654 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:10:57 #27655 [verbose] > │ let v401 : US3 = null |> unbox<US3> │
00:10:57 #27656 [verbose] > │ v401 │
00:10:57 #27657 [verbose] > │ #endif │
00:10:57 #27658 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:10:57 #27659 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:10:57 #27660 [verbose] > │ let v402 : (Async<US3> -> US3) = Async.RunSynchronously │
00:10:57 #27661 [verbose] > │ let v403 : US3 = v402 v397 │
00:10:57 #27662 [verbose] > │ v403 │
00:10:57 #27663 [verbose] > │ #endif │
00:10:57 #27664 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:10:57 #27665 [verbose] > │ let v404 : US3 = null |> unbox<US3> │
00:10:57 #27666 [verbose] > │ v404 │
00:10:57 #27667 [verbose] > │ #endif │
00:10:57 #27668 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:10:57 #27669 [verbose] > │ Unchecked.defaultof<US3> │
00:10:57 #27670 [verbose] > │ #endif │
00:10:57 #27671 [verbose] > │ |> fun x -> _v398 <- Some x │
00:10:57 #27672 [verbose] > │ let v405 : US3 = _v398.Value │
00:10:57 #27673 [verbose] > │ let v460 : bool = │
00:10:57 #27674 [verbose] > │ match v405 with │
00:10:57 #27675 [verbose] > │ | US3_0(v406, v407, v408) -> (* Some *) │
00:10:57 #27676 [verbose] > │ let v409 : System.Runtime.InteropServices.OSPlatform = │
00:10:57 #27677 [verbose] > │ System.Runtime.InteropServices.OSPlatform.Windows │
00:10:57 #27678 [verbose] > │ let v410 : (System.Runtime.InteropServices.OSPlatform -> bool) = │
00:10:57 #27679 [verbose] > │ System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform │
00:10:57 #27680 [verbose] > │ let v411 : bool = v410 v409 │
00:10:57 #27681 [verbose] > │ let v412 : int64 = │
00:10:57 #27682 [verbose] > │ if v411 then │
00:10:57 #27683 [verbose] > │ 50L │
00:10:57 #27684 [verbose] > │ else │
00:10:57 #27685 [verbose] > │ 0L │
00:10:57 #27686 [verbose] > │ let v413 : System.Runtime.InteropServices.OSPlatform = │
00:10:57 #27687 [verbose] > │ System.Runtime.InteropServices.OSPlatform.Windows │
00:10:57 #27688 [verbose] > │ let v414 : (System.Runtime.InteropServices.OSPlatform -> bool) = │
00:10:57 #27689 [verbose] > │ System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform │
00:10:57 #27690 [verbose] > │ let v415 : bool = v414 v413 │
00:10:57 #27691 [verbose] > │ let v416 : int64 = │
00:10:57 #27692 [verbose] > │ if v415 then │
00:10:57 #27693 [verbose] > │ 150L │
00:10:57 #27694 [verbose] > │ else │
00:10:57 #27695 [verbose] > │ 0L │
00:10:57 #27696 [verbose] > │ let v417 : string = $"%A{v406}" │
00:10:57 #27697 [verbose] > │ System.Console.WriteLine v417 │
00:10:57 #27698 [verbose] > │ let v418 : string = $"%A{v406}" │
00:10:57 #27699 [verbose] > │ System.Console.WriteLine v418 │
00:10:57 #27700 [verbose] > │ let v419 : bool = v406 >= v412 │
00:10:57 #27701 [verbose] > │ let v421 : bool = │
00:10:57 #27702 [verbose] > │ if v419 then │
00:10:57 #27703 [verbose] > │ true │
00:10:57 #27704 [verbose] > │ else │
00:10:57 #27705 [verbose] > │ method15(v419) │
00:10:57 #27706 [verbose] > │ let v422 : string = $"__expect / actual: %A{v406} / expected: │
00:10:57 #27707 [verbose] > │ %A{v412}" │
00:10:57 #27708 [verbose] > │ let v423 : bool = v421 = false │
00:10:57 #27709 [verbose] > │ if v423 then │
00:10:57 #27710 [verbose] > │ failwith<unit> v422 │
00:10:57 #27711 [verbose] > │ let v424 : string = $"%A{v406}" │
00:10:57 #27712 [verbose] > │ System.Console.WriteLine v424 │
00:10:57 #27713 [verbose] > │ let v425 : bool = v406 <= v416 │
00:10:57 #27714 [verbose] > │ let v427 : bool = │
00:10:57 #27715 [verbose] > │ if v425 then │
00:10:57 #27716 [verbose] > │ true │
00:10:57 #27717 [verbose] > │ else │
00:10:57 #27718 [verbose] > │ method15(v425) │
00:10:57 #27719 [verbose] > │ let v428 : string = $"__expect / actual: %A{v406} / expected: │
00:10:57 #27720 [verbose] > │ %A{v416}" │
00:10:57 #27721 [verbose] > │ let v429 : bool = v427 = false │
00:10:57 #27722 [verbose] > │ if v429 then │
00:10:57 #27723 [verbose] > │ failwith<unit> v428 │
00:10:57 #27724 [verbose] > │ let v430 : string = $"__expect / actual: %A{v406} / expected: │
00:10:57 #27725 [verbose] > │ %A{struct (v412, v416)}" │
00:10:57 #27726 [verbose] > │ let v431 : System.Runtime.InteropServices.OSPlatform = │
00:10:57 #27727 [verbose] > │ System.Runtime.InteropServices.OSPlatform.Windows │
00:10:57 #27728 [verbose] > │ let v432 : (System.Runtime.InteropServices.OSPlatform -> bool) = │
00:10:57 #27729 [verbose] > │ System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform │
00:10:57 #27730 [verbose] > │ let v433 : bool = v432 v431 │
00:10:57 #27731 [verbose] > │ let v434 : int64 = │
00:10:57 #27732 [verbose] > │ if v433 then │
00:10:57 #27733 [verbose] > │ 0L │
00:10:57 #27734 [verbose] > │ else │
00:10:57 #27735 [verbose] > │ 100L │
00:10:57 #27736 [verbose] > │ let v435 : System.Runtime.InteropServices.OSPlatform = │
00:10:57 #27737 [verbose] > │ System.Runtime.InteropServices.OSPlatform.Windows │
00:10:57 #27738 [verbose] > │ let v436 : (System.Runtime.InteropServices.OSPlatform -> bool) = │
00:10:57 #27739 [verbose] > │ System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform │
00:10:57 #27740 [verbose] > │ let v437 : bool = v436 v435 │
00:10:57 #27741 [verbose] > │ let v438 : int64 = │
00:10:57 #27742 [verbose] > │ if v437 then │
00:10:57 #27743 [verbose] > │ 0L │
00:10:57 #27744 [verbose] > │ else │
00:10:57 #27745 [verbose] > │ 200L │
00:10:57 #27746 [verbose] > │ let v439 : string = $"%A{v407}" │
00:10:57 #27747 [verbose] > │ System.Console.WriteLine v439 │
00:10:57 #27748 [verbose] > │ let v440 : string = $"%A{v407}" │
00:10:57 #27749 [verbose] > │ System.Console.WriteLine v440 │
00:10:57 #27750 [verbose] > │ let v441 : bool = v407 >= v434 │
00:10:57 #27751 [verbose] > │ let v443 : bool = │
00:10:57 #27752 [verbose] > │ if v441 then │
00:10:57 #27753 [verbose] > │ true │
00:10:57 #27754 [verbose] > │ else │
00:10:57 #27755 [verbose] > │ method15(v441) │
00:10:57 #27756 [verbose] > │ let v444 : string = $"__expect / actual: %A{v407} / expected: │
00:10:57 #27757 [verbose] > │ %A{v434}" │
00:10:57 #27758 [verbose] > │ let v445 : bool = v443 = false │
00:10:57 #27759 [verbose] > │ if v445 then │
00:10:57 #27760 [verbose] > │ failwith<unit> v444 │
00:10:57 #27761 [verbose] > │ let v446 : string = $"%A{v407}" │
00:10:57 #27762 [verbose] > │ System.Console.WriteLine v446 │
00:10:57 #27763 [verbose] > │ let v447 : bool = v407 <= v438 │
00:10:57 #27764 [verbose] > │ let v449 : bool = │
00:10:57 #27765 [verbose] > │ if v447 then │
00:10:57 #27766 [verbose] > │ true │
00:10:57 #27767 [verbose] > │ else │
00:10:57 #27768 [verbose] > │ method15(v447) │
00:10:57 #27769 [verbose] > │ let v450 : string = $"__expect / actual: %A{v407} / expected: │
00:10:57 #27770 [verbose] > │ %A{v438}" │
00:10:57 #27771 [verbose] > │ let v451 : bool = v449 = false │
00:10:57 #27772 [verbose] > │ if v451 then │
00:10:57 #27773 [verbose] > │ failwith<unit> v450 │
00:10:57 #27774 [verbose] > │ let v452 : string = $"__expect / actual: %A{v407} / expected: │
00:10:57 #27775 [verbose] > │ %A{struct (v434, v438)}" │
00:10:57 #27776 [verbose] > │ let v453 : string = method16() │
00:10:57 #27777 [verbose] > │ let v454 : string = $"%A{v408}" │
00:10:57 #27778 [verbose] > │ System.Console.WriteLine v454 │
00:10:57 #27779 [verbose] > │ let v455 : bool = v408 = v453 │
00:10:57 #27780 [verbose] > │ let v457 : bool = │
00:10:57 #27781 [verbose] > │ if v455 then │
00:10:57 #27782 [verbose] > │ true │
00:10:57 #27783 [verbose] > │ else │
00:10:57 #27784 [verbose] > │ method15(v455) │
00:10:57 #27785 [verbose] > │ let v458 : string = $"__expect / actual: %A{v408} / expected: │
00:10:57 #27786 [verbose] > │ %A{v453}" │
00:10:57 #27787 [verbose] > │ let v459 : bool = v457 = false │
00:10:57 #27788 [verbose] > │ if v459 then │
00:10:57 #27789 [verbose] > │ failwith<unit> v458 │
00:10:57 #27790 [verbose] > │ true │
00:10:57 #27791 [verbose] > │ | _ -> │
00:10:57 #27792 [verbose] > │ false │
00:10:57 #27793 [verbose] > │ let v461 : string = $"%A{v460}" │
00:10:57 #27794 [verbose] > │ System.Console.WriteLine v461 │
00:10:57 #27795 [verbose] > │ let v463 : bool = │
00:10:57 #27796 [verbose] > │ if v460 then │
00:10:57 #27797 [verbose] > │ true │
00:10:57 #27798 [verbose] > │ else │
00:10:57 #27799 [verbose] > │ method15(v460) │
00:10:57 #27800 [verbose] > │ let v464 : string = $"__expect / actual: %A{v460} / expected: %A{true}" │
00:10:57 #27801 [verbose] > │ let v465 : bool = v463 = false │
00:10:57 #27802 [verbose] > │ if v465 then │
00:10:57 #27803 [verbose] > │ failwith<unit> v464 │
00:10:57 #27804 [verbose] > │ method0() │
00:10:57 #27805 [verbose] > │ │
00:10:57 #27806 [verbose] > │ 00:00:00 #1 [debug] 1 │
00:10:57 #27807 [verbose] > │ 00:00:00 #2 [debug] 2 │
00:10:57 #27808 [verbose] > │ 00:00:00 #3 [debug] 3 │
00:10:57 #27809 [verbose] > │ 00:00:00 #4 [debug] _1 │
00:10:57 #27810 [verbose] > │ 00:00:00 #5 [debug] _2 │
00:10:57 #27811 [verbose] > │ 00:00:00 #6 [debug] 4 │
00:10:57 #27812 [verbose] > │ 00:00:00 #7 [warning] move_file_async / old_path: test.txt / new_path: │
00:10:57 #27813 [verbose] > │ test2.txt / ex: System.IO.IOException: The process cannot access the file │
00:10:57 #27814 [verbose] > │ because it is being used by another process. │
00:10:57 #27815 [verbose] > │ 00:00:01 #8 [warning] move_file_async / old_path: test.txt / new_path: │
00:10:57 #27816 [verbose] > │ test2.txt / ex: System.IO.IOException: The process cannot access the file │
00:10:57 #27817 [verbose] > │ because it is being used by another process. │
00:10:57 #27818 [verbose] > │ 00:00:02 #9 [debug] _3 │
00:10:57 #27819 [verbose] > │ 00:00:02 #10 [debug] 5 │
00:10:57 #27820 [verbose] > │ 00:00:02 #11 [debug] 6 │
00:10:57 #27821 [verbose] > │ 00:00:02 #12 [debug] 7 │
00:10:57 #27822 [verbose] > │ 00:00:02 #13 [debug] 8 │
00:10:57 #27823 [verbose] > │ 128L │
00:10:57 #27824 [verbose] > │ 128L │
00:10:57 #27825 [verbose] > │ 128L │
00:10:57 #27826 [verbose] > │ 0L │
00:10:57 #27827 [verbose] > │ 0L │
00:10:57 #27828 [verbose] > │ 0L │
00:10:57 #27829 [verbose] > │ "0" │
00:10:57 #27830 [verbose] > │ true │
00:10:57 #27831 [verbose] > │ │
00:10:57 #27832 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:57 #27833 [verbose] >
00:10:57 #27834 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:10:57 #27835 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:10:57 #27836 [verbose] > │ ## find_parent │
00:10:57 #27837 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:57 #27838 [verbose] >
00:10:57 #27839 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:57 #27840 [verbose] > inl find_parent name is_file root_dir =
00:10:57 #27841 [verbose] > let rec loop dir =
00:10:57 #27842 [verbose] > if dir </> name |> (if is_file then file_exists else directory_exists)
00:10:57 #27843 [verbose] > then dir
00:10:57 #27844 [verbose] > else
00:10:57 #27845 [verbose] > inl result = dir |> (join directory_get_parent)
00:10:57 #27846 [verbose] > match result |> optionm'.unbox with
00:10:57 #27847 [verbose] > | Some parent => parent |> loop
00:10:57 #27848 [verbose] > | None => failwith $'$"""No parent for {if !is_file then "file" else
00:10:57 #27849 [verbose] > "dir"} \'{!name}\' at \'{!root_dir}\'"""'
00:10:57 #27850 [verbose] > loop root_dir
00:10:57 #27851 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\74ed957c1adfa4fae1c5899f026aadbf6a48e36c8c69099dd6710003a720c361\main.spi
00:10:57 #27852 [verbose] >
00:10:57 #27853 [verbose] > ╭─[ 265.42ms - stdout ]────────────────────────────────────────────────────────╮
00:10:57 #27854 [verbose] > │ () │
00:10:57 #27855 [verbose] > │ │
00:10:57 #27856 [verbose] > │ │
00:10:57 #27857 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:57 #27858 [verbose] >
00:10:57 #27859 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:57 #27860 [verbose] > // // test
00:10:57 #27861 [verbose] > // // print_code=false
00:10:57 #27862 [verbose] >
00:10:57 #27863 [verbose] > a ;[[ ".paket", false; "paket.dependencies", true ]]
00:10:57 #27864 [verbose] > |> am.map fun (file, is_file) =>
00:10:57 #27865 [verbose] > get_source_directory ()
00:10:57 #27866 [verbose] > |> find_parent file is_file
00:10:57 #27867 [verbose] > |> directory_info
00:10:57 #27868 [verbose] > |> directory_info_name
00:10:57 #27869 [verbose] > |> am'.distinct
00:10:57 #27870 [verbose] > |> _assert_eq (a ;[[ "polyglot" ]] : _ i32 _)
00:10:57 #27871 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\de7a0243f8f447447769a6231e4de39e092f80bbd039df3aa4d0a4e9429ff3c3\main.spi
00:10:57 #27872 [verbose] >
00:10:57 #27873 [verbose] > ╭─[ 396.67ms - stdout ]────────────────────────────────────────────────────────╮
00:10:57 #27874 [verbose] > │ [|"polyglot"|] │
00:10:57 #27875 [verbose] > │ │
00:10:57 #27876 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:10:57 #27877 [verbose] >
00:10:57 #27878 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:10:57 #27879 [verbose] > // // test
00:10:57 #27880 [verbose] > // // rust=
00:10:57 #27881 [verbose] > // // print_code=false
00:10:57 #27882 [verbose] >
00:10:57 #27883 [verbose] > types ()
00:10:57 #27884 [verbose] > a ;[[ ".paket", false; "paket.dependencies", true ]]
00:10:57 #27885 [verbose] > |> am.map fun (file, is_file) =>
00:10:57 #27886 [verbose] > fun () => join
00:10:57 #27887 [verbose] > get_source_directory ()
00:10:57 #27888 [verbose] > |> find_parent file is_file
00:10:57 #27889 [verbose] > |> new_path_buf
00:10:57 #27890 [verbose] > |> path_buf_file_name
00:10:57 #27891 [verbose] > |> optionm'.try'
00:10:57 #27892 [verbose] > |> sm'.to_os_string
00:10:57 #27893 [verbose] > |> sm'.os_to_str
00:10:57 #27894 [verbose] > |> optionm'.try'
00:10:57 #27895 [verbose] > |> sm'.ref_to_std_string
00:10:57 #27896 [verbose] > |> sm'.from_std_string
00:10:57 #27897 [verbose] > |> Some
00:10:57 #27898 [verbose] > |> optionm'.box
00:10:57 #27899 [verbose] > |> fun x => x () |> optionm'.unbox
00:10:57 #27900 [verbose] > |> optionm'.default_value ""
00:10:57 #27901 [verbose] > |> am'.distinct
00:10:57 #27902 [verbose] > |> fun result =>
00:10:57 #27903 [verbose] > result |> am'.length |> _assert_eq 1i32
00:10:57 #27904 [verbose] > index result 0i32 |> _assert_eq "polyglot"
00:10:58 #27905 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\be65d9ea9f0d086eab414d6c3bf3e452e98c9bd35a59f323cb01196b5e6be296\main.spi
00:11:05 #27906 [verbose] >
00:11:05 #27907 [verbose] > ╭─[ 7.18s - return value ]─────────────────────────────────────────────────────╮
00:11:05 #27908 [verbose] > │ 1 │
00:11:05 #27909 [verbose] > │ "polyglot" │
00:11:05 #27910 [verbose] > │ │
00:11:05 #27911 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:05 #27912 [verbose] >
00:11:05 #27913 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:05 #27914 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:05 #27915 [verbose] > │ ## main │
00:11:05 #27916 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:05 #27917 [verbose] >
00:11:05 #27918 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:05 #27919 [verbose] > inl main () =
00:11:05 #27920 [verbose] > types ()
00:11:05 #27921 [verbose] > run_target function
00:11:05 #27922 [verbose] > | Fsharp (Native) => fun () =>
00:11:05 #27923 [verbose] > $"let delete_directory_async x = !delete_directory_async x" : ()
00:11:05 #27924 [verbose] > $"let wait_for_file_access x = !wait_for_file_access x" : ()
00:11:05 #27925 [verbose] > $"let wait_for_file_access_read x = !wait_for_file_access_read x" :
00:11:05 #27926 [verbose] > ()
00:11:05 #27927 [verbose] > $"let read_all_text_async x = !read_all_text_async x" : ()
00:11:05 #27928 [verbose] > $"let file_exists_content x = !file_exists_content x" : ()
00:11:05 #27929 [verbose] > $"let write_all_text_async x = !write_all_text_async x" : ()
00:11:05 #27930 [verbose] > $"let write_all_text_exists x = !write_all_text_exists x" : ()
00:11:05 #27931 [verbose] > $"let delete_file_async x = !delete_file_async x" : ()
00:11:05 #27932 [verbose] > $"let move_file_async x = !move_file_async x" : ()
00:11:05 #27933 [verbose] > $"let read_all_text_retry_async x = !read_all_text_retry_async x" :
00:11:05 #27934 [verbose] > ()
00:11:05 #27935 [verbose] > | _ => fun () => ()
00:11:05 #27936 [verbose] > $"let create_temp_directory_name () = !create_temp_directory_name ()" : ()
00:11:05 #27937 [verbose] > $"let create_temp_directory () = !create_temp_directory ()" : ()
00:11:05 #27938 [verbose] > $"let get_source_directory () = !get_source_directory ()" : ()
00:11:05 #27939 [verbose] > $"let find_parent x = !find_parent x" : ()
00:11:05 #27940 [verbose] > inl combine x = (</>) x
00:11:05 #27941 [verbose] > $"let (</>) x = !combine x" : ()
00:11:05 #27942 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\21a2245df72ab20aa33e1de2207da8d687de973ec4c5636e2d31ae978c8fd420\main.spi
00:11:09 #27943 [verbose] >
00:11:09 #27944 [verbose] > ╭─[ 4.12s - stdout ]───────────────────────────────────────────────────────────╮
00:11:09 #27945 [verbose] > │ #if FABLE_COMPILER // file_system.types │
00:11:09 #27946 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("str")>] type Str = class end │
00:11:09 #27947 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>] type │
00:11:09 #27948 [verbose] > │ base64_DecodeError = class end │
00:11:09 #27949 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>] type │
00:11:09 #27950 [verbose] > │ borsh_io_Error = class end │
00:11:09 #27951 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>] type │
00:11:09 #27952 [verbose] > │ js_sys_JsString = class end │
00:11:09 #27953 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>] type │
00:11:09 #27954 [verbose] > │ serde_json_Error = class end │
00:11:09 #27955 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>] type │
00:11:09 #27956 [verbose] > │ serde_json_Value = class end │
00:11:09 #27957 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>] type │
00:11:09 #27958 [verbose] > │ serde_wasm_bindgen_Error = class end │
00:11:09 #27959 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>] type std_ffi_OsStr │
00:11:09 #27960 [verbose] > │ = class end │
00:11:09 #27961 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsString")>] type │
00:11:09 #27962 [verbose] > │ std_ffi_OsString = class end │
00:11:09 #27963 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::str::Utf8Error")>] type │
00:11:09 #27964 [verbose] > │ std_str_Utf8Error = class end │
00:11:09 #27965 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::string::String")>] type │
00:11:09 #27966 [verbose] > │ std_string_String = class end │
00:11:09 #27967 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Func0<$0>")>] type Func0<'T> = class │
00:11:09 #27968 [verbose] > │ end │
00:11:09 #27969 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Func1<$0, $1>")>] type Func0<'T, 'U> = │
00:11:09 #27970 [verbose] > │ class end │
00:11:09 #27971 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Box<$0>")>] type Box<'T> = class end │
00:11:09 #27972 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("dyn $0")>] type Dyn<'T> = class end │
00:11:09 #27973 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Fn() -> $0")>] type Fn<'T> = class end │
00:11:09 #27974 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Fn()")>] type FnUnit = class end │
00:11:09 #27975 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("FnOnce() -> $0")>] type FnOnce<'T> = │
00:11:09 #27976 [verbose] > │ class end │
00:11:09 #27977 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Fn($0, $1)")>] type ActionFn2<'T, 'U> = │
00:11:09 #27978 [verbose] > │ class end │
00:11:09 #27979 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("impl $0")>] type Impl<'T> = class end │
00:11:09 #27980 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("mut $0")>] type Mut<'T> = class end │
00:11:09 #27981 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("&$0")>] type Ref<'T> = class end │
00:11:09 #27982 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("&'static $0")>] type StaticRef<'T> = │
00:11:09 #27983 [verbose] > │ class end │
00:11:09 #27984 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("MutCell<$0>")>] type MutCell<'T> = │
00:11:09 #27985 [verbose] > │ class end │
00:11:09 #27986 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::any::Any")>] type std_any_Any = │
00:11:09 #27987 [verbose] > │ class end │
00:11:09 #27988 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::cell::RefCell<$0>")>] type │
00:11:09 #27989 [verbose] > │ std_cell_RefCell<'T> = class end │
00:11:09 #27990 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::pin::Pin<$0>")>] type │
00:11:09 #27991 [verbose] > │ std_pin_Pin<'T> = class end │
00:11:09 #27992 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::rc::Rc<$0>")>] type std_rc_Rc<'T> │
00:11:09 #27993 [verbose] > │ = class end │
00:11:09 #27994 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::rc::Weak<$0>")>] type │
00:11:09 #27995 [verbose] > │ std_rc_Weak<'T> = class end │
00:11:09 #27996 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::sync::Arc<$0>")>] type │
00:11:09 #27997 [verbose] > │ std_sync_Arc<'T> = class end │
00:11:09 #27998 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::path::Path")>] type std_path_Path │
00:11:09 #27999 [verbose] > │ = class end │
00:11:09 #28000 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::path::PathBuf")>] type │
00:11:09 #28001 [verbose] > │ std_path_PathBuf = class end │
00:11:09 #28002 [verbose] > │ #endif // file_system.types │
00:11:09 #28003 [verbose] > │ type IFsExistsSync = abstract existsSync: path: string -> bool │
00:11:09 #28004 [verbose] > │ module State = let mutable trace_state = None │
00:11:09 #28005 [verbose] > │ type IPathJoin = abstract join: [<System.ParamArray>] paths: string[] -> │
00:11:09 #28006 [verbose] > │ string │
00:11:09 #28007 [verbose] > │ type IPathDirname = abstract dirname: path: string -> string │
00:11:09 #28008 [verbose] > │ type [<Struct>] US1 = │
00:11:09 #28009 [verbose] > │ | US1_0 │
00:11:09 #28010 [verbose] > │ | US1_1 │
00:11:09 #28011 [verbose] > │ | US1_2 │
00:11:09 #28012 [verbose] > │ and [<Struct>] US2 = │
00:11:09 #28013 [verbose] > │ | US2_0 │
00:11:09 #28014 [verbose] > │ | US2_1 │
00:11:09 #28015 [verbose] > │ | US2_2 │
00:11:09 #28016 [verbose] > │ | US2_3 │
00:11:09 #28017 [verbose] > │ | US2_4 │
00:11:09 #28018 [verbose] > │ and [<Struct>] US0 = │
00:11:09 #28019 [verbose] > │ | US0_0 of f0_0 : US1 * f0_1 : US2 │
00:11:09 #28020 [verbose] > │ | US0_1 │
00:11:09 #28021 [verbose] > │ and [<Struct>] US3 = │
00:11:09 #28022 [verbose] > │ | US3_0 │
00:11:09 #28023 [verbose] > │ | US3_1 │
00:11:09 #28024 [verbose] > │ | US3_2 │
00:11:09 #28025 [verbose] > │ | US3_3 │
00:11:09 #28026 [verbose] > │ | US3_4 │
00:11:09 #28027 [verbose] > │ and Mut0 = {mutable l0 : int64} │
00:11:09 #28028 [verbose] > │ and Mut1 = {mutable l0 : bool} │
00:11:09 #28029 [verbose] > │ and Mut2 = {mutable l0 : US3} │
00:11:09 #28030 [verbose] > │ and [<Struct>] US4 = │
00:11:09 #28031 [verbose] > │ | US4_0 of f0_0 : int64 │
00:11:09 #28032 [verbose] > │ | US4_1 │
00:11:09 #28033 [verbose] > │ and [<Struct>] US5 = │
00:11:09 #28034 [verbose] > │ | US5_0 of f0_0 : int64 │
00:11:09 #28035 [verbose] > │ | US5_1 │
00:11:09 #28036 [verbose] > │ and [<Struct>] US6 = │
00:11:09 #28037 [verbose] > │ | US6_0 of f0_0 : int64 │
00:11:09 #28038 [verbose] > │ | US6_1 of f1_0 : exn │
00:11:09 #28039 [verbose] > │ and [<Struct>] US7 = │
00:11:09 #28040 [verbose] > │ | US7_0 of f0_0 : int64 │
00:11:09 #28041 [verbose] > │ | US7_1 of f1_0 : exn │
00:11:09 #28042 [verbose] > │ and [<Struct>] US8 = │
00:11:09 #28043 [verbose] > │ | US8_0 of f0_0 : string │
00:11:09 #28044 [verbose] > │ | US8_1 │
00:11:09 #28045 [verbose] > │ let rec closure2 () (v0 : string) : string = │
00:11:09 #28046 [verbose] > │ let v1 : string option = None │
00:11:09 #28047 [verbose] > │ let mutable _v1 = v1 │
00:11:09 #28048 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28049 [verbose] > │ let v2 : string = null |> unbox<string> │
00:11:09 #28050 [verbose] > │ v2 │
00:11:09 #28051 [verbose] > │ #endif │
00:11:09 #28052 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28053 [verbose] > │ let v3 : string = null |> unbox<string> │
00:11:09 #28054 [verbose] > │ v3 │
00:11:09 #28055 [verbose] > │ #endif │
00:11:09 #28056 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28057 [verbose] > │ let v4 : string = null |> unbox<string> │
00:11:09 #28058 [verbose] > │ v4 │
00:11:09 #28059 [verbose] > │ #endif │
00:11:09 #28060 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28061 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28062 [verbose] > │ let v5 : (string -> string) = System.IO.Path.GetFileName │
00:11:09 #28063 [verbose] > │ let v6 : string = v5 v0 │
00:11:09 #28064 [verbose] > │ v6 │
00:11:09 #28065 [verbose] > │ #endif │
00:11:09 #28066 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28067 [verbose] > │ let v7 : string = null |> unbox<string> │
00:11:09 #28068 [verbose] > │ v7 │
00:11:09 #28069 [verbose] > │ #endif │
00:11:09 #28070 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28071 [verbose] > │ Unchecked.defaultof<string> │
00:11:09 #28072 [verbose] > │ #endif │
00:11:09 #28073 [verbose] > │ |> fun x -> _v1 <- Some x │
00:11:09 #28074 [verbose] > │ let v8 : string = _v1.Value │
00:11:09 #28075 [verbose] > │ v8 │
00:11:09 #28076 [verbose] > │ and closure3 () () : string = │
00:11:09 #28077 [verbose] > │ let v0 : string = "" │
00:11:09 #28078 [verbose] > │ v0 │
00:11:09 #28079 [verbose] > │ and method1 (v0 : string, v1 : string) : string = │
00:11:09 #28080 [verbose] > │ let v2 : (string -> string) = closure2() │
00:11:09 #28081 [verbose] > │ let v3 : (unit -> string) = closure3() │
00:11:09 #28082 [verbose] > │ let v4 : string = $"path: {v0 |> v2} / ex: {v1} / {v3 ()}" │
00:11:09 #28083 [verbose] > │ v4 │
00:11:09 #28084 [verbose] > │ and closure1 (v0 : string, v1 : string) () : string = │
00:11:09 #28085 [verbose] > │ method1(v0, v1) │
00:11:09 #28086 [verbose] > │ and method0 (v0 : string, v1 : int64) : Async<int64> = │
00:11:09 #28087 [verbose] > │ let v2 : Async<int64> option = None │
00:11:09 #28088 [verbose] > │ let mutable _v2 = v2 │
00:11:09 #28089 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28090 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28091 [verbose] > │ v3 │
00:11:09 #28092 [verbose] > │ #endif │
00:11:09 #28093 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28094 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28095 [verbose] > │ v4 │
00:11:09 #28096 [verbose] > │ #endif │
00:11:09 #28097 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28098 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28099 [verbose] > │ v5 │
00:11:09 #28100 [verbose] > │ #endif │
00:11:09 #28101 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28102 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28103 [verbose] > │ let v6 : Async<int64> option = None │
00:11:09 #28104 [verbose] > │ let mutable _v6 = v6 │
00:11:09 #28105 [verbose] > │ async { │
00:11:09 #28106 [verbose] > │ try │
00:11:09 #28107 [verbose] > │ let v7 : unit option = None │
00:11:09 #28108 [verbose] > │ let mutable _v7 = v7 │
00:11:09 #28109 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28110 [verbose] > │ null |> unbox<unit> │
00:11:09 #28111 [verbose] > │ () │
00:11:09 #28112 [verbose] > │ #endif │
00:11:09 #28113 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28114 [verbose] > │ null |> unbox<unit> │
00:11:09 #28115 [verbose] > │ () │
00:11:09 #28116 [verbose] > │ #endif │
00:11:09 #28117 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28118 [verbose] > │ null |> unbox<unit> │
00:11:09 #28119 [verbose] > │ () │
00:11:09 #28120 [verbose] > │ #endif │
00:11:09 #28121 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28122 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28123 [verbose] > │ System.IO.Directory.Delete (v0, true) │
00:11:09 #28124 [verbose] > │ () │
00:11:09 #28125 [verbose] > │ #endif │
00:11:09 #28126 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28127 [verbose] > │ null |> unbox<unit> │
00:11:09 #28128 [verbose] > │ () │
00:11:09 #28129 [verbose] > │ #endif │
00:11:09 #28130 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28131 [verbose] > │ Unchecked.defaultof<unit> │
00:11:09 #28132 [verbose] > │ #endif │
00:11:09 #28133 [verbose] > │ |> fun x -> _v7 <- Some x │
00:11:09 #28134 [verbose] > │ _v7.Value │
00:11:09 #28135 [verbose] > │ return v1 │
00:11:09 #28136 [verbose] > │ with ex -> │
00:11:09 #28137 [verbose] > │ let v8 : exn = ex │
00:11:09 #28138 [verbose] > │ let v9 : int64 = v1 % 100L │
00:11:09 #28139 [verbose] > │ let v10 : bool = v9 = 0L │
00:11:09 #28140 [verbose] > │ if v10 then │
00:11:09 #28141 [verbose] > │ let v11 : string option = None │
00:11:09 #28142 [verbose] > │ let mutable _v11 = v11 │
00:11:09 #28143 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28144 [verbose] > │ let v12 : string = $"%A{v8}" │
00:11:09 #28145 [verbose] > │ v12 │
00:11:09 #28146 [verbose] > │ #endif │
00:11:09 #28147 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28148 [verbose] > │ let v13 : string = $"%A{v8}" │
00:11:09 #28149 [verbose] > │ v13 │
00:11:09 #28150 [verbose] > │ #endif │
00:11:09 #28151 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28152 [verbose] > │ let v14 : string = $"%A{v8}" │
00:11:09 #28153 [verbose] > │ v14 │
00:11:09 #28154 [verbose] > │ #endif │
00:11:09 #28155 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28156 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28157 [verbose] > │ let v15 : string = $"{v8.GetType ()}: {v8.Message}" │
00:11:09 #28158 [verbose] > │ v15 │
00:11:09 #28159 [verbose] > │ #endif │
00:11:09 #28160 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28161 [verbose] > │ let v16 : string = $"%A{v8}" │
00:11:09 #28162 [verbose] > │ v16 │
00:11:09 #28163 [verbose] > │ #endif │
00:11:09 #28164 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:09 #28165 [verbose] > │ FABLE_COMPILER_DART │
00:11:09 #28166 [verbose] > │ Unchecked.defaultof<string> │
00:11:09 #28167 [verbose] > │ #endif │
00:11:09 #28168 [verbose] > │ |> fun x -> _v11 <- Some x │
00:11:09 #28169 [verbose] > │ let v17 : string = _v11.Value │
00:11:09 #28170 [verbose] > │ let v18 : (unit -> string) = closure1(v0, v17) │
00:11:09 #28171 [verbose] > │ let v19 : string = $"delete_directory_async / {v18 ()}" │
00:11:09 #28172 [verbose] > │ System.Console.WriteLine v19 │
00:11:09 #28173 [verbose] > │ () │
00:11:09 #28174 [verbose] > │ let v20 : Async<unit> option = None │
00:11:09 #28175 [verbose] > │ let mutable _v20 = v20 │
00:11:09 #28176 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28177 [verbose] > │ let v21 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28178 [verbose] > │ v21 │
00:11:09 #28179 [verbose] > │ #endif │
00:11:09 #28180 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28181 [verbose] > │ let v22 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28182 [verbose] > │ v22 │
00:11:09 #28183 [verbose] > │ #endif │
00:11:09 #28184 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28185 [verbose] > │ let v23 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28186 [verbose] > │ v23 │
00:11:09 #28187 [verbose] > │ #endif │
00:11:09 #28188 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28189 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28190 [verbose] > │ let v24 : (int32 -> Async<unit>) = Async.Sleep │
00:11:09 #28191 [verbose] > │ let v25 : Async<unit> = v24 10 │
00:11:09 #28192 [verbose] > │ v25 │
00:11:09 #28193 [verbose] > │ #endif │
00:11:09 #28194 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28195 [verbose] > │ let v26 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28196 [verbose] > │ v26 │
00:11:09 #28197 [verbose] > │ #endif │
00:11:09 #28198 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28199 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:11:09 #28200 [verbose] > │ #endif │
00:11:09 #28201 [verbose] > │ |> fun x -> _v20 <- Some x │
00:11:09 #28202 [verbose] > │ let v27 : Async<unit> = _v20.Value │
00:11:09 #28203 [verbose] > │ do! v27 │
00:11:09 #28204 [verbose] > │ let v28 : int64 = v1 + 1L │
00:11:09 #28205 [verbose] > │ let v29 : Async<int64> = method0(v0, v28) │
00:11:09 #28206 [verbose] > │ return! v29 │
00:11:09 #28207 [verbose] > │ (* │
00:11:09 #28208 [verbose] > │ let v30 : int64 = *) │
00:11:09 #28209 [verbose] > │ } │
00:11:09 #28210 [verbose] > │ |> fun x -> _v6 <- Some x │
00:11:09 #28211 [verbose] > │ let v31 : Async<int64> = _v6 |> Option.get │
00:11:09 #28212 [verbose] > │ v31 │
00:11:09 #28213 [verbose] > │ #endif │
00:11:09 #28214 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28215 [verbose] > │ let v32 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28216 [verbose] > │ v32 │
00:11:09 #28217 [verbose] > │ #endif │
00:11:09 #28218 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28219 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:11:09 #28220 [verbose] > │ #endif │
00:11:09 #28221 [verbose] > │ |> fun x -> _v2 <- Some x │
00:11:09 #28222 [verbose] > │ let v33 : Async<int64> = _v2.Value │
00:11:09 #28223 [verbose] > │ v33 │
00:11:09 #28224 [verbose] > │ and closure0 () (v0 : string) : Async<int64> = │
00:11:09 #28225 [verbose] > │ let v1 : Async<int64> option = None │
00:11:09 #28226 [verbose] > │ let mutable _v1 = v1 │
00:11:09 #28227 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28228 [verbose] > │ let v2 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28229 [verbose] > │ v2 │
00:11:09 #28230 [verbose] > │ #endif │
00:11:09 #28231 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28232 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28233 [verbose] > │ v3 │
00:11:09 #28234 [verbose] > │ #endif │
00:11:09 #28235 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28236 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28237 [verbose] > │ v4 │
00:11:09 #28238 [verbose] > │ #endif │
00:11:09 #28239 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28240 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28241 [verbose] > │ let v5 : int64 = 0L │
00:11:09 #28242 [verbose] > │ let v6 : Async<int64> = method0(v0, v5) │
00:11:09 #28243 [verbose] > │ v6 │
00:11:09 #28244 [verbose] > │ #endif │
00:11:09 #28245 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28246 [verbose] > │ let v7 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28247 [verbose] > │ v7 │
00:11:09 #28248 [verbose] > │ #endif │
00:11:09 #28249 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28250 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:11:09 #28251 [verbose] > │ #endif │
00:11:09 #28252 [verbose] > │ |> fun x -> _v1 <- Some x │
00:11:09 #28253 [verbose] > │ let v8 : Async<int64> = _v1.Value │
00:11:09 #28254 [verbose] > │ v8 │
00:11:09 #28255 [verbose] > │ and method3 (v0 : string, v1 : int64, v2 : string) : string = │
00:11:09 #28256 [verbose] > │ let v3 : (string -> string) = closure2() │
00:11:09 #28257 [verbose] > │ let v4 : (unit -> string) = closure3() │
00:11:09 #28258 [verbose] > │ let v5 : string = $"path: {v0 |> v3} / retry: {v1} / ex: {v2} / {v4 ()}" │
00:11:09 #28259 [verbose] > │ v5 │
00:11:09 #28260 [verbose] > │ and closure6 (v0 : string, v1 : int64, v2 : string) () : string = │
00:11:09 #28261 [verbose] > │ method3(v0, v1, v2) │
00:11:09 #28262 [verbose] > │ and method2 (v0 : string, v1 : US2, v2 : US1, v3 : int64) : Async<int64> = │
00:11:09 #28263 [verbose] > │ let v4 : Async<int64> option = None │
00:11:09 #28264 [verbose] > │ let mutable _v4 = v4 │
00:11:09 #28265 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28266 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28267 [verbose] > │ v5 │
00:11:09 #28268 [verbose] > │ #endif │
00:11:09 #28269 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28270 [verbose] > │ let v6 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28271 [verbose] > │ v6 │
00:11:09 #28272 [verbose] > │ #endif │
00:11:09 #28273 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28274 [verbose] > │ let v7 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28275 [verbose] > │ v7 │
00:11:09 #28276 [verbose] > │ #endif │
00:11:09 #28277 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28278 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28279 [verbose] > │ let v8 : Async<int64> option = None │
00:11:09 #28280 [verbose] > │ let mutable _v8 = v8 │
00:11:09 #28281 [verbose] > │ async { │
00:11:09 #28282 [verbose] > │ try │
00:11:09 #28283 [verbose] > │ let v9 : System.IO.FileStream option = None │
00:11:09 #28284 [verbose] > │ let mutable _v9 = v9 │
00:11:09 #28285 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28286 [verbose] > │ let v10 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:11:09 #28287 [verbose] > │ v10 │
00:11:09 #28288 [verbose] > │ #endif │
00:11:09 #28289 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28290 [verbose] > │ let v11 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:11:09 #28291 [verbose] > │ v11 │
00:11:09 #28292 [verbose] > │ #endif │
00:11:09 #28293 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28294 [verbose] > │ let v12 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:11:09 #28295 [verbose] > │ v12 │
00:11:09 #28296 [verbose] > │ #endif │
00:11:09 #28297 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28298 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28299 [verbose] > │ let v13 : System.IO.FileMode = System.IO.FileMode.Open │
00:11:09 #28300 [verbose] > │ let v19 : System.IO.FileAccess = │
00:11:09 #28301 [verbose] > │ match v2 with │
00:11:09 #28302 [verbose] > │ | US1_0 -> (* AccessRead *) │
00:11:09 #28303 [verbose] > │ let v14 : System.IO.FileAccess = System.IO.FileAccess.Read │
00:11:09 #28304 [verbose] > │ v14 │
00:11:09 #28305 [verbose] > │ | US1_2 -> (* AccessReadWrite *) │
00:11:09 #28306 [verbose] > │ let v16 : System.IO.FileAccess = System.IO.FileAccess.ReadWrite │
00:11:09 #28307 [verbose] > │ v16 │
00:11:09 #28308 [verbose] > │ | US1_1 -> (* AccessWrite *) │
00:11:09 #28309 [verbose] > │ let v15 : System.IO.FileAccess = System.IO.FileAccess.ReadWrite │
00:11:09 #28310 [verbose] > │ v15 │
00:11:09 #28311 [verbose] > │ let v29 : System.IO.FileShare = │
00:11:09 #28312 [verbose] > │ match v1 with │
00:11:09 #28313 [verbose] > │ | US2_4 -> (* ShareDelete *) │
00:11:09 #28314 [verbose] > │ let v24 : System.IO.FileShare = System.IO.FileShare.Delete │
00:11:09 #28315 [verbose] > │ v24 │
00:11:09 #28316 [verbose] > │ | US2_0 -> (* ShareNone *) │
00:11:09 #28317 [verbose] > │ let v20 : System.IO.FileShare = System.IO.FileShare.None │
00:11:09 #28318 [verbose] > │ v20 │
00:11:09 #28319 [verbose] > │ | US2_1 -> (* ShareRead *) │
00:11:09 #28320 [verbose] > │ let v21 : System.IO.FileShare = System.IO.FileShare.Read │
00:11:09 #28321 [verbose] > │ v21 │
00:11:09 #28322 [verbose] > │ | US2_3 -> (* ShareReadWrite *) │
00:11:09 #28323 [verbose] > │ let v23 : System.IO.FileShare = System.IO.FileShare.ReadWrite │
00:11:09 #28324 [verbose] > │ v23 │
00:11:09 #28325 [verbose] > │ | US2_2 -> (* ShareWrite *) │
00:11:09 #28326 [verbose] > │ let v22 : System.IO.FileShare = System.IO.FileShare.Write │
00:11:09 #28327 [verbose] > │ v22 │
00:11:09 #28328 [verbose] > │ let v30 : System.IO.FileStream = new System.IO.FileStream (v0, v13, v19, │
00:11:09 #28329 [verbose] > │ v29) │
00:11:09 #28330 [verbose] > │ v30 │
00:11:09 #28331 [verbose] > │ #endif │
00:11:09 #28332 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28333 [verbose] > │ let v31 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:11:09 #28334 [verbose] > │ v31 │
00:11:09 #28335 [verbose] > │ #endif │
00:11:09 #28336 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28337 [verbose] > │ Unchecked.defaultof<System.IO.FileStream> │
00:11:09 #28338 [verbose] > │ #endif │
00:11:09 #28339 [verbose] > │ |> fun x -> _v9 <- Some x │
00:11:09 #28340 [verbose] > │ let v32 : System.IO.FileStream = _v9.Value │
00:11:09 #28341 [verbose] > │ use v32 = v32 │
00:11:09 #28342 [verbose] > │ let v33 : System.IO.FileStream = v32 │
00:11:09 #28343 [verbose] > │ return v3 │
00:11:09 #28344 [verbose] > │ with ex -> │
00:11:09 #28345 [verbose] > │ let v34 : exn = ex │
00:11:09 #28346 [verbose] > │ let v35 : bool = v3 > 0L │
00:11:09 #28347 [verbose] > │ let v38 : bool = │
00:11:09 #28348 [verbose] > │ if v35 then │
00:11:09 #28349 [verbose] > │ let v36 : int64 = v3 % 100L │
00:11:09 #28350 [verbose] > │ let v37 : bool = v36 = 0L │
00:11:09 #28351 [verbose] > │ v37 │
00:11:09 #28352 [verbose] > │ else │
00:11:09 #28353 [verbose] > │ false │
00:11:09 #28354 [verbose] > │ if v38 then │
00:11:09 #28355 [verbose] > │ let v39 : string option = None │
00:11:09 #28356 [verbose] > │ let mutable _v39 = v39 │
00:11:09 #28357 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28358 [verbose] > │ let v40 : string = $"%A{v34}" │
00:11:09 #28359 [verbose] > │ v40 │
00:11:09 #28360 [verbose] > │ #endif │
00:11:09 #28361 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28362 [verbose] > │ let v41 : string = $"%A{v34}" │
00:11:09 #28363 [verbose] > │ v41 │
00:11:09 #28364 [verbose] > │ #endif │
00:11:09 #28365 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28366 [verbose] > │ let v42 : string = $"%A{v34}" │
00:11:09 #28367 [verbose] > │ v42 │
00:11:09 #28368 [verbose] > │ #endif │
00:11:09 #28369 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28370 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28371 [verbose] > │ let v43 : string = $"{v34.GetType ()}: {v34.Message}" │
00:11:09 #28372 [verbose] > │ v43 │
00:11:09 #28373 [verbose] > │ #endif │
00:11:09 #28374 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28375 [verbose] > │ let v44 : string = $"%A{v34}" │
00:11:09 #28376 [verbose] > │ v44 │
00:11:09 #28377 [verbose] > │ #endif │
00:11:09 #28378 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:09 #28379 [verbose] > │ FABLE_COMPILER_DART │
00:11:09 #28380 [verbose] > │ Unchecked.defaultof<string> │
00:11:09 #28381 [verbose] > │ #endif │
00:11:09 #28382 [verbose] > │ |> fun x -> _v39 <- Some x │
00:11:09 #28383 [verbose] > │ let v45 : string = _v39.Value │
00:11:09 #28384 [verbose] > │ let v46 : (unit -> string) = closure6(v0, v3, v45) │
00:11:09 #28385 [verbose] > │ let v47 : string = $"wait_for_file_access / {v46 ()}" │
00:11:09 #28386 [verbose] > │ System.Console.WriteLine v47 │
00:11:09 #28387 [verbose] > │ () │
00:11:09 #28388 [verbose] > │ let v48 : Async<unit> option = None │
00:11:09 #28389 [verbose] > │ let mutable _v48 = v48 │
00:11:09 #28390 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28391 [verbose] > │ let v49 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28392 [verbose] > │ v49 │
00:11:09 #28393 [verbose] > │ #endif │
00:11:09 #28394 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28395 [verbose] > │ let v50 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28396 [verbose] > │ v50 │
00:11:09 #28397 [verbose] > │ #endif │
00:11:09 #28398 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28399 [verbose] > │ let v51 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28400 [verbose] > │ v51 │
00:11:09 #28401 [verbose] > │ #endif │
00:11:09 #28402 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28403 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28404 [verbose] > │ let v52 : (int32 -> Async<unit>) = Async.Sleep │
00:11:09 #28405 [verbose] > │ let v53 : Async<unit> = v52 10 │
00:11:09 #28406 [verbose] > │ v53 │
00:11:09 #28407 [verbose] > │ #endif │
00:11:09 #28408 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28409 [verbose] > │ let v54 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28410 [verbose] > │ v54 │
00:11:09 #28411 [verbose] > │ #endif │
00:11:09 #28412 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28413 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:11:09 #28414 [verbose] > │ #endif │
00:11:09 #28415 [verbose] > │ |> fun x -> _v48 <- Some x │
00:11:09 #28416 [verbose] > │ let v55 : Async<unit> = _v48.Value │
00:11:09 #28417 [verbose] > │ do! v55 │
00:11:09 #28418 [verbose] > │ let v56 : int64 = v3 + 1L │
00:11:09 #28419 [verbose] > │ let v57 : Async<int64> = method2(v0, v1, v2, v56) │
00:11:09 #28420 [verbose] > │ return! v57 │
00:11:09 #28421 [verbose] > │ (* │
00:11:09 #28422 [verbose] > │ let v58 : int64 = *) │
00:11:09 #28423 [verbose] > │ } │
00:11:09 #28424 [verbose] > │ |> fun x -> _v8 <- Some x │
00:11:09 #28425 [verbose] > │ let v59 : Async<int64> = _v8 |> Option.get │
00:11:09 #28426 [verbose] > │ v59 │
00:11:09 #28427 [verbose] > │ #endif │
00:11:09 #28428 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28429 [verbose] > │ let v60 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28430 [verbose] > │ v60 │
00:11:09 #28431 [verbose] > │ #endif │
00:11:09 #28432 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28433 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:11:09 #28434 [verbose] > │ #endif │
00:11:09 #28435 [verbose] > │ |> fun x -> _v4 <- Some x │
00:11:09 #28436 [verbose] > │ let v61 : Async<int64> = _v4.Value │
00:11:09 #28437 [verbose] > │ v61 │
00:11:09 #28438 [verbose] > │ and closure5 (v0 : US0) (v1 : string) : Async<int64> = │
00:11:09 #28439 [verbose] > │ let v2 : Async<int64> option = None │
00:11:09 #28440 [verbose] > │ let mutable _v2 = v2 │
00:11:09 #28441 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28442 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28443 [verbose] > │ v3 │
00:11:09 #28444 [verbose] > │ #endif │
00:11:09 #28445 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28446 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28447 [verbose] > │ v4 │
00:11:09 #28448 [verbose] > │ #endif │
00:11:09 #28449 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28450 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28451 [verbose] > │ v5 │
00:11:09 #28452 [verbose] > │ #endif │
00:11:09 #28453 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28454 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28455 [verbose] > │ let struct (v12 : US1, v13 : US2) = │
00:11:09 #28456 [verbose] > │ match v0 with │
00:11:09 #28457 [verbose] > │ | US0_1 -> (* None *) │
00:11:09 #28458 [verbose] > │ let v8 : US1 = US1_2 │
00:11:09 #28459 [verbose] > │ let v9 : US2 = US2_1 │
00:11:09 #28460 [verbose] > │ struct (v8, v9) │
00:11:09 #28461 [verbose] > │ | US0_0(v6, v7) -> (* Some *) │
00:11:09 #28462 [verbose] > │ struct (v6, v7) │
00:11:09 #28463 [verbose] > │ let v14 : int64 = 0L │
00:11:09 #28464 [verbose] > │ let v15 : Async<int64> = method2(v1, v13, v12, v14) │
00:11:09 #28465 [verbose] > │ v15 │
00:11:09 #28466 [verbose] > │ #endif │
00:11:09 #28467 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28468 [verbose] > │ let v16 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28469 [verbose] > │ v16 │
00:11:09 #28470 [verbose] > │ #endif │
00:11:09 #28471 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28472 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:11:09 #28473 [verbose] > │ #endif │
00:11:09 #28474 [verbose] > │ |> fun x -> _v2 <- Some x │
00:11:09 #28475 [verbose] > │ let v17 : Async<int64> = _v2.Value │
00:11:09 #28476 [verbose] > │ v17 │
00:11:09 #28477 [verbose] > │ and closure4 () (v0 : US0) : (string -> Async<int64>) = │
00:11:09 #28478 [verbose] > │ closure5(v0) │
00:11:09 #28479 [verbose] > │ and method4 (v0 : string, v1 : int64) : Async<int64> = │
00:11:09 #28480 [verbose] > │ let v2 : Async<int64> option = None │
00:11:09 #28481 [verbose] > │ let mutable _v2 = v2 │
00:11:09 #28482 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28483 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28484 [verbose] > │ v3 │
00:11:09 #28485 [verbose] > │ #endif │
00:11:09 #28486 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28487 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28488 [verbose] > │ v4 │
00:11:09 #28489 [verbose] > │ #endif │
00:11:09 #28490 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28491 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28492 [verbose] > │ v5 │
00:11:09 #28493 [verbose] > │ #endif │
00:11:09 #28494 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28495 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28496 [verbose] > │ let v6 : Async<int64> option = None │
00:11:09 #28497 [verbose] > │ let mutable _v6 = v6 │
00:11:09 #28498 [verbose] > │ async { │
00:11:09 #28499 [verbose] > │ try │
00:11:09 #28500 [verbose] > │ let v7 : System.IO.FileStream option = None │
00:11:09 #28501 [verbose] > │ let mutable _v7 = v7 │
00:11:09 #28502 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28503 [verbose] > │ let v8 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:11:09 #28504 [verbose] > │ v8 │
00:11:09 #28505 [verbose] > │ #endif │
00:11:09 #28506 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28507 [verbose] > │ let v9 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:11:09 #28508 [verbose] > │ v9 │
00:11:09 #28509 [verbose] > │ #endif │
00:11:09 #28510 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28511 [verbose] > │ let v10 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:11:09 #28512 [verbose] > │ v10 │
00:11:09 #28513 [verbose] > │ #endif │
00:11:09 #28514 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28515 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28516 [verbose] > │ let v11 : System.IO.FileMode = System.IO.FileMode.Open │
00:11:09 #28517 [verbose] > │ let v12 : System.IO.FileAccess = System.IO.FileAccess.Read │
00:11:09 #28518 [verbose] > │ let v13 : System.IO.FileShare = System.IO.FileShare.Read │
00:11:09 #28519 [verbose] > │ let v14 : System.IO.FileStream = new System.IO.FileStream (v0, v11, v12, │
00:11:09 #28520 [verbose] > │ v13) │
00:11:09 #28521 [verbose] > │ v14 │
00:11:09 #28522 [verbose] > │ #endif │
00:11:09 #28523 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28524 [verbose] > │ let v15 : System.IO.FileStream = null |> unbox<System.IO.FileStream> │
00:11:09 #28525 [verbose] > │ v15 │
00:11:09 #28526 [verbose] > │ #endif │
00:11:09 #28527 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28528 [verbose] > │ Unchecked.defaultof<System.IO.FileStream> │
00:11:09 #28529 [verbose] > │ #endif │
00:11:09 #28530 [verbose] > │ |> fun x -> _v7 <- Some x │
00:11:09 #28531 [verbose] > │ let v16 : System.IO.FileStream = _v7.Value │
00:11:09 #28532 [verbose] > │ use v16 = v16 │
00:11:09 #28533 [verbose] > │ let v17 : System.IO.FileStream = v16 │
00:11:09 #28534 [verbose] > │ return v1 │
00:11:09 #28535 [verbose] > │ with ex -> │
00:11:09 #28536 [verbose] > │ let v18 : exn = ex │
00:11:09 #28537 [verbose] > │ let v19 : bool = v1 > 0L │
00:11:09 #28538 [verbose] > │ let v22 : bool = │
00:11:09 #28539 [verbose] > │ if v19 then │
00:11:09 #28540 [verbose] > │ let v20 : int64 = v1 % 100L │
00:11:09 #28541 [verbose] > │ let v21 : bool = v20 = 0L │
00:11:09 #28542 [verbose] > │ v21 │
00:11:09 #28543 [verbose] > │ else │
00:11:09 #28544 [verbose] > │ false │
00:11:09 #28545 [verbose] > │ if v22 then │
00:11:09 #28546 [verbose] > │ let v23 : string option = None │
00:11:09 #28547 [verbose] > │ let mutable _v23 = v23 │
00:11:09 #28548 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28549 [verbose] > │ let v24 : string = $"%A{v18}" │
00:11:09 #28550 [verbose] > │ v24 │
00:11:09 #28551 [verbose] > │ #endif │
00:11:09 #28552 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28553 [verbose] > │ let v25 : string = $"%A{v18}" │
00:11:09 #28554 [verbose] > │ v25 │
00:11:09 #28555 [verbose] > │ #endif │
00:11:09 #28556 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28557 [verbose] > │ let v26 : string = $"%A{v18}" │
00:11:09 #28558 [verbose] > │ v26 │
00:11:09 #28559 [verbose] > │ #endif │
00:11:09 #28560 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28561 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28562 [verbose] > │ let v27 : string = $"{v18.GetType ()}: {v18.Message}" │
00:11:09 #28563 [verbose] > │ v27 │
00:11:09 #28564 [verbose] > │ #endif │
00:11:09 #28565 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28566 [verbose] > │ let v28 : string = $"%A{v18}" │
00:11:09 #28567 [verbose] > │ v28 │
00:11:09 #28568 [verbose] > │ #endif │
00:11:09 #28569 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:09 #28570 [verbose] > │ FABLE_COMPILER_DART │
00:11:09 #28571 [verbose] > │ Unchecked.defaultof<string> │
00:11:09 #28572 [verbose] > │ #endif │
00:11:09 #28573 [verbose] > │ |> fun x -> _v23 <- Some x │
00:11:09 #28574 [verbose] > │ let v29 : string = _v23.Value │
00:11:09 #28575 [verbose] > │ let v30 : (unit -> string) = closure6(v0, v1, v29) │
00:11:09 #28576 [verbose] > │ let v31 : string = $"wait_for_file_access / {v30 ()}" │
00:11:09 #28577 [verbose] > │ System.Console.WriteLine v31 │
00:11:09 #28578 [verbose] > │ () │
00:11:09 #28579 [verbose] > │ let v32 : Async<unit> option = None │
00:11:09 #28580 [verbose] > │ let mutable _v32 = v32 │
00:11:09 #28581 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28582 [verbose] > │ let v33 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28583 [verbose] > │ v33 │
00:11:09 #28584 [verbose] > │ #endif │
00:11:09 #28585 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28586 [verbose] > │ let v34 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28587 [verbose] > │ v34 │
00:11:09 #28588 [verbose] > │ #endif │
00:11:09 #28589 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28590 [verbose] > │ let v35 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28591 [verbose] > │ v35 │
00:11:09 #28592 [verbose] > │ #endif │
00:11:09 #28593 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28594 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28595 [verbose] > │ let v36 : (int32 -> Async<unit>) = Async.Sleep │
00:11:09 #28596 [verbose] > │ let v37 : Async<unit> = v36 10 │
00:11:09 #28597 [verbose] > │ v37 │
00:11:09 #28598 [verbose] > │ #endif │
00:11:09 #28599 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28600 [verbose] > │ let v38 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28601 [verbose] > │ v38 │
00:11:09 #28602 [verbose] > │ #endif │
00:11:09 #28603 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28604 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:11:09 #28605 [verbose] > │ #endif │
00:11:09 #28606 [verbose] > │ |> fun x -> _v32 <- Some x │
00:11:09 #28607 [verbose] > │ let v39 : Async<unit> = _v32.Value │
00:11:09 #28608 [verbose] > │ do! v39 │
00:11:09 #28609 [verbose] > │ let v40 : int64 = v1 + 1L │
00:11:09 #28610 [verbose] > │ let v41 : Async<int64> = method4(v0, v40) │
00:11:09 #28611 [verbose] > │ return! v41 │
00:11:09 #28612 [verbose] > │ (* │
00:11:09 #28613 [verbose] > │ let v42 : int64 = *) │
00:11:09 #28614 [verbose] > │ } │
00:11:09 #28615 [verbose] > │ |> fun x -> _v6 <- Some x │
00:11:09 #28616 [verbose] > │ let v43 : Async<int64> = _v6 |> Option.get │
00:11:09 #28617 [verbose] > │ v43 │
00:11:09 #28618 [verbose] > │ #endif │
00:11:09 #28619 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28620 [verbose] > │ let v44 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28621 [verbose] > │ v44 │
00:11:09 #28622 [verbose] > │ #endif │
00:11:09 #28623 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28624 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:11:09 #28625 [verbose] > │ #endif │
00:11:09 #28626 [verbose] > │ |> fun x -> _v2 <- Some x │
00:11:09 #28627 [verbose] > │ let v45 : Async<int64> = _v2.Value │
00:11:09 #28628 [verbose] > │ v45 │
00:11:09 #28629 [verbose] > │ and closure7 () (v0 : string) : Async<int64> = │
00:11:09 #28630 [verbose] > │ let v1 : Async<int64> option = None │
00:11:09 #28631 [verbose] > │ let mutable _v1 = v1 │
00:11:09 #28632 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28633 [verbose] > │ let v2 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28634 [verbose] > │ v2 │
00:11:09 #28635 [verbose] > │ #endif │
00:11:09 #28636 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28637 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28638 [verbose] > │ v3 │
00:11:09 #28639 [verbose] > │ #endif │
00:11:09 #28640 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28641 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28642 [verbose] > │ v4 │
00:11:09 #28643 [verbose] > │ #endif │
00:11:09 #28644 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28645 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28646 [verbose] > │ let v5 : int64 = 0L │
00:11:09 #28647 [verbose] > │ let v6 : Async<int64> = method4(v0, v5) │
00:11:09 #28648 [verbose] > │ v6 │
00:11:09 #28649 [verbose] > │ #endif │
00:11:09 #28650 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28651 [verbose] > │ let v7 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #28652 [verbose] > │ v7 │
00:11:09 #28653 [verbose] > │ #endif │
00:11:09 #28654 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28655 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:11:09 #28656 [verbose] > │ #endif │
00:11:09 #28657 [verbose] > │ |> fun x -> _v1 <- Some x │
00:11:09 #28658 [verbose] > │ let v8 : Async<int64> = _v1.Value │
00:11:09 #28659 [verbose] > │ v8 │
00:11:09 #28660 [verbose] > │ and closure8 () (v0 : string) : Async<string> = │
00:11:09 #28661 [verbose] > │ let v1 : Async<string> option = None │
00:11:09 #28662 [verbose] > │ let mutable _v1 = v1 │
00:11:09 #28663 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28664 [verbose] > │ let v2 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28665 [verbose] > │ v2 │
00:11:09 #28666 [verbose] > │ #endif │
00:11:09 #28667 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28668 [verbose] > │ let v3 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28669 [verbose] > │ v3 │
00:11:09 #28670 [verbose] > │ #endif │
00:11:09 #28671 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28672 [verbose] > │ let v4 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28673 [verbose] > │ v4 │
00:11:09 #28674 [verbose] > │ #endif │
00:11:09 #28675 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28676 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28677 [verbose] > │ let v5 : (string -> System.Threading.Tasks.Task<string>) = │
00:11:09 #28678 [verbose] > │ System.IO.File.ReadAllTextAsync │
00:11:09 #28679 [verbose] > │ let v6 : System.Threading.Tasks.Task<string> = v5 v0 │
00:11:09 #28680 [verbose] > │ let v7 : Async<string> option = None │
00:11:09 #28681 [verbose] > │ let mutable _v7 = v7 │
00:11:09 #28682 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28683 [verbose] > │ let v8 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28684 [verbose] > │ v8 │
00:11:09 #28685 [verbose] > │ #endif │
00:11:09 #28686 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28687 [verbose] > │ let v9 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28688 [verbose] > │ v9 │
00:11:09 #28689 [verbose] > │ #endif │
00:11:09 #28690 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28691 [verbose] > │ let v10 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28692 [verbose] > │ v10 │
00:11:09 #28693 [verbose] > │ #endif │
00:11:09 #28694 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28695 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28696 [verbose] > │ let v11 : (System.Threading.Tasks.Task<string> -> Async<string>) = │
00:11:09 #28697 [verbose] > │ Async.AwaitTask │
00:11:09 #28698 [verbose] > │ let v12 : Async<string> = v11 v6 │
00:11:09 #28699 [verbose] > │ v12 │
00:11:09 #28700 [verbose] > │ #endif │
00:11:09 #28701 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28702 [verbose] > │ let v13 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28703 [verbose] > │ v13 │
00:11:09 #28704 [verbose] > │ #endif │
00:11:09 #28705 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28706 [verbose] > │ Unchecked.defaultof<Async<string>> │
00:11:09 #28707 [verbose] > │ #endif │
00:11:09 #28708 [verbose] > │ |> fun x -> _v7 <- Some x │
00:11:09 #28709 [verbose] > │ let v14 : Async<string> = _v7.Value │
00:11:09 #28710 [verbose] > │ v14 │
00:11:09 #28711 [verbose] > │ #endif │
00:11:09 #28712 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28713 [verbose] > │ let v15 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28714 [verbose] > │ v15 │
00:11:09 #28715 [verbose] > │ #endif │
00:11:09 #28716 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28717 [verbose] > │ Unchecked.defaultof<Async<string>> │
00:11:09 #28718 [verbose] > │ #endif │
00:11:09 #28719 [verbose] > │ |> fun x -> _v1 <- Some x │
00:11:09 #28720 [verbose] > │ let v16 : Async<string> = _v1.Value │
00:11:09 #28721 [verbose] > │ v16 │
00:11:09 #28722 [verbose] > │ and method5 (v0 : string) : string = │
00:11:09 #28723 [verbose] > │ v0 │
00:11:09 #28724 [verbose] > │ and closure10 (v0 : string) (v1 : string) : Async<bool> = │
00:11:09 #28725 [verbose] > │ let v2 : Async<bool> option = None │
00:11:09 #28726 [verbose] > │ let mutable _v2 = v2 │
00:11:09 #28727 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28728 [verbose] > │ let v3 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #28729 [verbose] > │ v3 │
00:11:09 #28730 [verbose] > │ #endif │
00:11:09 #28731 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28732 [verbose] > │ let v4 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #28733 [verbose] > │ v4 │
00:11:09 #28734 [verbose] > │ #endif │
00:11:09 #28735 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28736 [verbose] > │ let v5 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #28737 [verbose] > │ v5 │
00:11:09 #28738 [verbose] > │ #endif │
00:11:09 #28739 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28740 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28741 [verbose] > │ let v6 : Async<bool> option = None │
00:11:09 #28742 [verbose] > │ let mutable _v6 = v6 │
00:11:09 #28743 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28744 [verbose] > │ let v7 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #28745 [verbose] > │ v7 │
00:11:09 #28746 [verbose] > │ #endif │
00:11:09 #28747 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28748 [verbose] > │ let v8 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #28749 [verbose] > │ v8 │
00:11:09 #28750 [verbose] > │ #endif │
00:11:09 #28751 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28752 [verbose] > │ let v9 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #28753 [verbose] > │ v9 │
00:11:09 #28754 [verbose] > │ #endif │
00:11:09 #28755 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28756 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28757 [verbose] > │ let v10 : Async<bool> option = None │
00:11:09 #28758 [verbose] > │ let mutable _v10 = v10 │
00:11:09 #28759 [verbose] > │ async { │
00:11:09 #28760 [verbose] > │ let v11 : bool option = None │
00:11:09 #28761 [verbose] > │ let mutable _v11 = v11 │
00:11:09 #28762 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28763 [verbose] > │ let v12 : string = method5(v0) │
00:11:09 #28764 [verbose] > │ let v13 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:09 #28765 [verbose] > │ let v14 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v12 v13 │
00:11:09 #28766 [verbose] > │ let v15 : string = "String::from($0)" │
00:11:09 #28767 [verbose] > │ let v16 : std_string_String = Fable.Core.RustInterop.emitRustExpr v14 │
00:11:09 #28768 [verbose] > │ v15 │
00:11:09 #28769 [verbose] > │ let v17 : string = "std::path::PathBuf::from($0)" │
00:11:09 #28770 [verbose] > │ let v18 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v16 v17 │
00:11:09 #28771 [verbose] > │ let v19 : string = "$0.exists()" │
00:11:09 #28772 [verbose] > │ let v20 : bool = Fable.Core.RustInterop.emitRustExpr v18 v19 │
00:11:09 #28773 [verbose] > │ let v23 : bool = │
00:11:09 #28774 [verbose] > │ if v20 then │
00:11:09 #28775 [verbose] > │ let v21 : string = "$0.is_file()" │
00:11:09 #28776 [verbose] > │ let v22 : bool = Fable.Core.RustInterop.emitRustExpr v18 v21 │
00:11:09 #28777 [verbose] > │ v22 │
00:11:09 #28778 [verbose] > │ else │
00:11:09 #28779 [verbose] > │ false │
00:11:09 #28780 [verbose] > │ v23 │
00:11:09 #28781 [verbose] > │ #endif │
00:11:09 #28782 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28783 [verbose] > │ let v24 : bool = null |> unbox<bool> │
00:11:09 #28784 [verbose] > │ v24 │
00:11:09 #28785 [verbose] > │ #endif │
00:11:09 #28786 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28787 [verbose] > │ let v25 : bool = null |> unbox<bool> │
00:11:09 #28788 [verbose] > │ v25 │
00:11:09 #28789 [verbose] > │ #endif │
00:11:09 #28790 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28791 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28792 [verbose] > │ let v26 : (string -> bool) = System.IO.File.Exists │
00:11:09 #28793 [verbose] > │ let v27 : bool = v26 v0 │
00:11:09 #28794 [verbose] > │ v27 │
00:11:09 #28795 [verbose] > │ #endif │
00:11:09 #28796 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28797 [verbose] > │ let v28 : string = "fs" │
00:11:09 #28798 [verbose] > │ let v29 : IFsExistsSync = Fable.Core.JsInterop.importAll v28 │
00:11:09 #28799 [verbose] > │ let v30 : string = "v29.existsSync($0)" │
00:11:09 #28800 [verbose] > │ let v31 : bool = Fable.Core.JsInterop.emitJsExpr v0 v30 │
00:11:09 #28801 [verbose] > │ v31 │
00:11:09 #28802 [verbose] > │ #endif │
00:11:09 #28803 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28804 [verbose] > │ Unchecked.defaultof<bool> │
00:11:09 #28805 [verbose] > │ #endif │
00:11:09 #28806 [verbose] > │ |> fun x -> _v11 <- Some x │
00:11:09 #28807 [verbose] > │ let v32 : bool = _v11.Value │
00:11:09 #28808 [verbose] > │ let v33 : bool = v32 = false │
00:11:09 #28809 [verbose] > │ if v33 then │
00:11:09 #28810 [verbose] > │ return false │
00:11:09 #28811 [verbose] > │ (* │
00:11:09 #28812 [verbose] > │ () │
00:11:09 #28813 [verbose] > │ else │
00:11:09 #28814 [verbose] > │ *) else │
00:11:09 #28815 [verbose] > │ let v34 : Async<string> option = None │
00:11:09 #28816 [verbose] > │ let mutable _v34 = v34 │
00:11:09 #28817 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28818 [verbose] > │ let v35 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28819 [verbose] > │ v35 │
00:11:09 #28820 [verbose] > │ #endif │
00:11:09 #28821 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28822 [verbose] > │ let v36 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28823 [verbose] > │ v36 │
00:11:09 #28824 [verbose] > │ #endif │
00:11:09 #28825 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28826 [verbose] > │ let v37 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28827 [verbose] > │ v37 │
00:11:09 #28828 [verbose] > │ #endif │
00:11:09 #28829 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28830 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28831 [verbose] > │ let v38 : (string -> System.Threading.Tasks.Task<string>) = │
00:11:09 #28832 [verbose] > │ System.IO.File.ReadAllTextAsync │
00:11:09 #28833 [verbose] > │ let v39 : System.Threading.Tasks.Task<string> = v38 v0 │
00:11:09 #28834 [verbose] > │ let v40 : Async<string> option = None │
00:11:09 #28835 [verbose] > │ let mutable _v40 = v40 │
00:11:09 #28836 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28837 [verbose] > │ let v41 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28838 [verbose] > │ v41 │
00:11:09 #28839 [verbose] > │ #endif │
00:11:09 #28840 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28841 [verbose] > │ let v42 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28842 [verbose] > │ v42 │
00:11:09 #28843 [verbose] > │ #endif │
00:11:09 #28844 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28845 [verbose] > │ let v43 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28846 [verbose] > │ v43 │
00:11:09 #28847 [verbose] > │ #endif │
00:11:09 #28848 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28849 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28850 [verbose] > │ let v44 : (System.Threading.Tasks.Task<string> -> Async<string>) = │
00:11:09 #28851 [verbose] > │ Async.AwaitTask │
00:11:09 #28852 [verbose] > │ let v45 : Async<string> = v44 v39 │
00:11:09 #28853 [verbose] > │ v45 │
00:11:09 #28854 [verbose] > │ #endif │
00:11:09 #28855 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28856 [verbose] > │ let v46 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28857 [verbose] > │ v46 │
00:11:09 #28858 [verbose] > │ #endif │
00:11:09 #28859 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:09 #28860 [verbose] > │ FABLE_COMPILER_DART │
00:11:09 #28861 [verbose] > │ Unchecked.defaultof<Async<string>> │
00:11:09 #28862 [verbose] > │ #endif │
00:11:09 #28863 [verbose] > │ |> fun x -> _v40 <- Some x │
00:11:09 #28864 [verbose] > │ let v47 : Async<string> = _v40.Value │
00:11:09 #28865 [verbose] > │ v47 │
00:11:09 #28866 [verbose] > │ #endif │
00:11:09 #28867 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28868 [verbose] > │ let v48 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #28869 [verbose] > │ v48 │
00:11:09 #28870 [verbose] > │ #endif │
00:11:09 #28871 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:09 #28872 [verbose] > │ FABLE_COMPILER_DART │
00:11:09 #28873 [verbose] > │ Unchecked.defaultof<Async<string>> │
00:11:09 #28874 [verbose] > │ #endif │
00:11:09 #28875 [verbose] > │ |> fun x -> _v34 <- Some x │
00:11:09 #28876 [verbose] > │ let v49 : Async<string> = _v34.Value │
00:11:09 #28877 [verbose] > │ let! v49 = v49 │
00:11:09 #28878 [verbose] > │ let v50 : string = v49 │
00:11:09 #28879 [verbose] > │ let v51 : bool = v1 = v50 │
00:11:09 #28880 [verbose] > │ return v51 │
00:11:09 #28881 [verbose] > │ (* │
00:11:09 #28882 [verbose] > │ () │
00:11:09 #28883 [verbose] > │ *) │
00:11:09 #28884 [verbose] > │ } │
00:11:09 #28885 [verbose] > │ |> fun x -> _v10 <- Some x │
00:11:09 #28886 [verbose] > │ let v52 : Async<bool> = _v10 |> Option.get │
00:11:09 #28887 [verbose] > │ v52 │
00:11:09 #28888 [verbose] > │ #endif │
00:11:09 #28889 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28890 [verbose] > │ let v53 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #28891 [verbose] > │ v53 │
00:11:09 #28892 [verbose] > │ #endif │
00:11:09 #28893 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28894 [verbose] > │ Unchecked.defaultof<Async<bool>> │
00:11:09 #28895 [verbose] > │ #endif │
00:11:09 #28896 [verbose] > │ |> fun x -> _v6 <- Some x │
00:11:09 #28897 [verbose] > │ let v54 : Async<bool> = _v6.Value │
00:11:09 #28898 [verbose] > │ v54 │
00:11:09 #28899 [verbose] > │ #endif │
00:11:09 #28900 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28901 [verbose] > │ let v55 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #28902 [verbose] > │ v55 │
00:11:09 #28903 [verbose] > │ #endif │
00:11:09 #28904 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28905 [verbose] > │ Unchecked.defaultof<Async<bool>> │
00:11:09 #28906 [verbose] > │ #endif │
00:11:09 #28907 [verbose] > │ |> fun x -> _v2 <- Some x │
00:11:09 #28908 [verbose] > │ let v56 : Async<bool> = _v2.Value │
00:11:09 #28909 [verbose] > │ v56 │
00:11:09 #28910 [verbose] > │ and closure9 () (v0 : string) : (string -> Async<bool>) = │
00:11:09 #28911 [verbose] > │ closure10(v0) │
00:11:09 #28912 [verbose] > │ and closure12 (v0 : string) (v1 : string) : Async<unit> = │
00:11:09 #28913 [verbose] > │ let v2 : Async<unit> option = None │
00:11:09 #28914 [verbose] > │ let mutable _v2 = v2 │
00:11:09 #28915 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28916 [verbose] > │ let v3 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28917 [verbose] > │ v3 │
00:11:09 #28918 [verbose] > │ #endif │
00:11:09 #28919 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28920 [verbose] > │ let v4 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28921 [verbose] > │ v4 │
00:11:09 #28922 [verbose] > │ #endif │
00:11:09 #28923 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28924 [verbose] > │ let v5 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28925 [verbose] > │ v5 │
00:11:09 #28926 [verbose] > │ #endif │
00:11:09 #28927 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28928 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28929 [verbose] > │ let v6 : System.Threading.Tasks.Task = System.IO.File.WriteAllTextAsync │
00:11:09 #28930 [verbose] > │ (v0, v1) │
00:11:09 #28931 [verbose] > │ let v7 : Async<unit> option = None │
00:11:09 #28932 [verbose] > │ let mutable _v7 = v7 │
00:11:09 #28933 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28934 [verbose] > │ let v8 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28935 [verbose] > │ v8 │
00:11:09 #28936 [verbose] > │ #endif │
00:11:09 #28937 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28938 [verbose] > │ let v9 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28939 [verbose] > │ v9 │
00:11:09 #28940 [verbose] > │ #endif │
00:11:09 #28941 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28942 [verbose] > │ let v10 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28943 [verbose] > │ v10 │
00:11:09 #28944 [verbose] > │ #endif │
00:11:09 #28945 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28946 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28947 [verbose] > │ let v11 : (System.Threading.Tasks.Task -> Async<unit>) = Async.AwaitTask │
00:11:09 #28948 [verbose] > │ let v12 : Async<unit> = v11 v6 │
00:11:09 #28949 [verbose] > │ v12 │
00:11:09 #28950 [verbose] > │ #endif │
00:11:09 #28951 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28952 [verbose] > │ let v13 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28953 [verbose] > │ v13 │
00:11:09 #28954 [verbose] > │ #endif │
00:11:09 #28955 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28956 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:11:09 #28957 [verbose] > │ #endif │
00:11:09 #28958 [verbose] > │ |> fun x -> _v7 <- Some x │
00:11:09 #28959 [verbose] > │ let v14 : Async<unit> = _v7.Value │
00:11:09 #28960 [verbose] > │ v14 │
00:11:09 #28961 [verbose] > │ #endif │
00:11:09 #28962 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #28963 [verbose] > │ let v15 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28964 [verbose] > │ v15 │
00:11:09 #28965 [verbose] > │ #endif │
00:11:09 #28966 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #28967 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:11:09 #28968 [verbose] > │ #endif │
00:11:09 #28969 [verbose] > │ |> fun x -> _v2 <- Some x │
00:11:09 #28970 [verbose] > │ let v16 : Async<unit> = _v2.Value │
00:11:09 #28971 [verbose] > │ v16 │
00:11:09 #28972 [verbose] > │ and closure11 () (v0 : string) : (string -> Async<unit>) = │
00:11:09 #28973 [verbose] > │ closure12(v0) │
00:11:09 #28974 [verbose] > │ and closure14 (v0 : string) (v1 : string) : Async<unit> = │
00:11:09 #28975 [verbose] > │ let v2 : Async<unit> option = None │
00:11:09 #28976 [verbose] > │ let mutable _v2 = v2 │
00:11:09 #28977 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28978 [verbose] > │ let v3 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28979 [verbose] > │ v3 │
00:11:09 #28980 [verbose] > │ #endif │
00:11:09 #28981 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #28982 [verbose] > │ let v4 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28983 [verbose] > │ v4 │
00:11:09 #28984 [verbose] > │ #endif │
00:11:09 #28985 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #28986 [verbose] > │ let v5 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #28987 [verbose] > │ v5 │
00:11:09 #28988 [verbose] > │ #endif │
00:11:09 #28989 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #28990 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #28991 [verbose] > │ let v6 : Async<unit> option = None │
00:11:09 #28992 [verbose] > │ let mutable _v6 = v6 │
00:11:09 #28993 [verbose] > │ async { │
00:11:09 #28994 [verbose] > │ let v7 : Async<bool> option = None │
00:11:09 #28995 [verbose] > │ let mutable _v7 = v7 │
00:11:09 #28996 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #28997 [verbose] > │ let v8 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #28998 [verbose] > │ v8 │
00:11:09 #28999 [verbose] > │ #endif │
00:11:09 #29000 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29001 [verbose] > │ let v9 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #29002 [verbose] > │ v9 │
00:11:09 #29003 [verbose] > │ #endif │
00:11:09 #29004 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29005 [verbose] > │ let v10 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #29006 [verbose] > │ v10 │
00:11:09 #29007 [verbose] > │ #endif │
00:11:09 #29008 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29009 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29010 [verbose] > │ let v11 : Async<bool> option = None │
00:11:09 #29011 [verbose] > │ let mutable _v11 = v11 │
00:11:09 #29012 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #29013 [verbose] > │ let v12 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #29014 [verbose] > │ v12 │
00:11:09 #29015 [verbose] > │ #endif │
00:11:09 #29016 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29017 [verbose] > │ let v13 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #29018 [verbose] > │ v13 │
00:11:09 #29019 [verbose] > │ #endif │
00:11:09 #29020 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29021 [verbose] > │ let v14 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #29022 [verbose] > │ v14 │
00:11:09 #29023 [verbose] > │ #endif │
00:11:09 #29024 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29025 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29026 [verbose] > │ let v15 : Async<bool> option = None │
00:11:09 #29027 [verbose] > │ let mutable _v15 = v15 │
00:11:09 #29028 [verbose] > │ async { │
00:11:09 #29029 [verbose] > │ let v16 : bool option = None │
00:11:09 #29030 [verbose] > │ let mutable _v16 = v16 │
00:11:09 #29031 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #29032 [verbose] > │ let v17 : string = method5(v0) │
00:11:09 #29033 [verbose] > │ let v18 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:09 #29034 [verbose] > │ let v19 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v17 v18 │
00:11:09 #29035 [verbose] > │ let v20 : string = "String::from($0)" │
00:11:09 #29036 [verbose] > │ let v21 : std_string_String = Fable.Core.RustInterop.emitRustExpr v19 │
00:11:09 #29037 [verbose] > │ v20 │
00:11:09 #29038 [verbose] > │ let v22 : string = "std::path::PathBuf::from($0)" │
00:11:09 #29039 [verbose] > │ let v23 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v21 v22 │
00:11:09 #29040 [verbose] > │ let v24 : string = "$0.exists()" │
00:11:09 #29041 [verbose] > │ let v25 : bool = Fable.Core.RustInterop.emitRustExpr v23 v24 │
00:11:09 #29042 [verbose] > │ let v28 : bool = │
00:11:09 #29043 [verbose] > │ if v25 then │
00:11:09 #29044 [verbose] > │ let v26 : string = "$0.is_file()" │
00:11:09 #29045 [verbose] > │ let v27 : bool = Fable.Core.RustInterop.emitRustExpr v23 v26 │
00:11:09 #29046 [verbose] > │ v27 │
00:11:09 #29047 [verbose] > │ else │
00:11:09 #29048 [verbose] > │ false │
00:11:09 #29049 [verbose] > │ v28 │
00:11:09 #29050 [verbose] > │ #endif │
00:11:09 #29051 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29052 [verbose] > │ let v29 : bool = null |> unbox<bool> │
00:11:09 #29053 [verbose] > │ v29 │
00:11:09 #29054 [verbose] > │ #endif │
00:11:09 #29055 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29056 [verbose] > │ let v30 : bool = null |> unbox<bool> │
00:11:09 #29057 [verbose] > │ v30 │
00:11:09 #29058 [verbose] > │ #endif │
00:11:09 #29059 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29060 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29061 [verbose] > │ let v31 : (string -> bool) = System.IO.File.Exists │
00:11:09 #29062 [verbose] > │ let v32 : bool = v31 v0 │
00:11:09 #29063 [verbose] > │ v32 │
00:11:09 #29064 [verbose] > │ #endif │
00:11:09 #29065 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29066 [verbose] > │ let v33 : string = "fs" │
00:11:09 #29067 [verbose] > │ let v34 : IFsExistsSync = Fable.Core.JsInterop.importAll v33 │
00:11:09 #29068 [verbose] > │ let v35 : string = "v34.existsSync($0)" │
00:11:09 #29069 [verbose] > │ let v36 : bool = Fable.Core.JsInterop.emitJsExpr v0 v35 │
00:11:09 #29070 [verbose] > │ v36 │
00:11:09 #29071 [verbose] > │ #endif │
00:11:09 #29072 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #29073 [verbose] > │ Unchecked.defaultof<bool> │
00:11:09 #29074 [verbose] > │ #endif │
00:11:09 #29075 [verbose] > │ |> fun x -> _v16 <- Some x │
00:11:09 #29076 [verbose] > │ let v37 : bool = _v16.Value │
00:11:09 #29077 [verbose] > │ let v38 : bool = v37 = false │
00:11:09 #29078 [verbose] > │ if v38 then │
00:11:09 #29079 [verbose] > │ return false │
00:11:09 #29080 [verbose] > │ (* │
00:11:09 #29081 [verbose] > │ () │
00:11:09 #29082 [verbose] > │ else │
00:11:09 #29083 [verbose] > │ *) else │
00:11:09 #29084 [verbose] > │ let v39 : Async<string> option = None │
00:11:09 #29085 [verbose] > │ let mutable _v39 = v39 │
00:11:09 #29086 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #29087 [verbose] > │ let v40 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #29088 [verbose] > │ v40 │
00:11:09 #29089 [verbose] > │ #endif │
00:11:09 #29090 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29091 [verbose] > │ let v41 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #29092 [verbose] > │ v41 │
00:11:09 #29093 [verbose] > │ #endif │
00:11:09 #29094 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29095 [verbose] > │ let v42 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #29096 [verbose] > │ v42 │
00:11:09 #29097 [verbose] > │ #endif │
00:11:09 #29098 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29099 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29100 [verbose] > │ let v43 : (string -> System.Threading.Tasks.Task<string>) = │
00:11:09 #29101 [verbose] > │ System.IO.File.ReadAllTextAsync │
00:11:09 #29102 [verbose] > │ let v44 : System.Threading.Tasks.Task<string> = v43 v0 │
00:11:09 #29103 [verbose] > │ let v45 : Async<string> option = None │
00:11:09 #29104 [verbose] > │ let mutable _v45 = v45 │
00:11:09 #29105 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #29106 [verbose] > │ let v46 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #29107 [verbose] > │ v46 │
00:11:09 #29108 [verbose] > │ #endif │
00:11:09 #29109 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29110 [verbose] > │ let v47 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #29111 [verbose] > │ v47 │
00:11:09 #29112 [verbose] > │ #endif │
00:11:09 #29113 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29114 [verbose] > │ let v48 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #29115 [verbose] > │ v48 │
00:11:09 #29116 [verbose] > │ #endif │
00:11:09 #29117 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29118 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29119 [verbose] > │ let v49 : (System.Threading.Tasks.Task<string> -> Async<string>) = │
00:11:09 #29120 [verbose] > │ Async.AwaitTask │
00:11:09 #29121 [verbose] > │ let v50 : Async<string> = v49 v44 │
00:11:09 #29122 [verbose] > │ v50 │
00:11:09 #29123 [verbose] > │ #endif │
00:11:09 #29124 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29125 [verbose] > │ let v51 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #29126 [verbose] > │ v51 │
00:11:09 #29127 [verbose] > │ #endif │
00:11:09 #29128 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:09 #29129 [verbose] > │ FABLE_COMPILER_DART │
00:11:09 #29130 [verbose] > │ Unchecked.defaultof<Async<string>> │
00:11:09 #29131 [verbose] > │ #endif │
00:11:09 #29132 [verbose] > │ |> fun x -> _v45 <- Some x │
00:11:09 #29133 [verbose] > │ let v52 : Async<string> = _v45.Value │
00:11:09 #29134 [verbose] > │ v52 │
00:11:09 #29135 [verbose] > │ #endif │
00:11:09 #29136 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29137 [verbose] > │ let v53 : Async<string> = null |> unbox<Async<string>> │
00:11:09 #29138 [verbose] > │ v53 │
00:11:09 #29139 [verbose] > │ #endif │
00:11:09 #29140 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:09 #29141 [verbose] > │ FABLE_COMPILER_DART │
00:11:09 #29142 [verbose] > │ Unchecked.defaultof<Async<string>> │
00:11:09 #29143 [verbose] > │ #endif │
00:11:09 #29144 [verbose] > │ |> fun x -> _v39 <- Some x │
00:11:09 #29145 [verbose] > │ let v54 : Async<string> = _v39.Value │
00:11:09 #29146 [verbose] > │ let! v54 = v54 │
00:11:09 #29147 [verbose] > │ let v55 : string = v54 │
00:11:09 #29148 [verbose] > │ let v56 : bool = v1 = v55 │
00:11:09 #29149 [verbose] > │ return v56 │
00:11:09 #29150 [verbose] > │ (* │
00:11:09 #29151 [verbose] > │ () │
00:11:09 #29152 [verbose] > │ *) │
00:11:09 #29153 [verbose] > │ } │
00:11:09 #29154 [verbose] > │ |> fun x -> _v15 <- Some x │
00:11:09 #29155 [verbose] > │ let v57 : Async<bool> = _v15 |> Option.get │
00:11:09 #29156 [verbose] > │ v57 │
00:11:09 #29157 [verbose] > │ #endif │
00:11:09 #29158 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29159 [verbose] > │ let v58 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #29160 [verbose] > │ v58 │
00:11:09 #29161 [verbose] > │ #endif │
00:11:09 #29162 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #29163 [verbose] > │ Unchecked.defaultof<Async<bool>> │
00:11:09 #29164 [verbose] > │ #endif │
00:11:09 #29165 [verbose] > │ |> fun x -> _v11 <- Some x │
00:11:09 #29166 [verbose] > │ let v59 : Async<bool> = _v11.Value │
00:11:09 #29167 [verbose] > │ v59 │
00:11:09 #29168 [verbose] > │ #endif │
00:11:09 #29169 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29170 [verbose] > │ let v60 : Async<bool> = null |> unbox<Async<bool>> │
00:11:09 #29171 [verbose] > │ v60 │
00:11:09 #29172 [verbose] > │ #endif │
00:11:09 #29173 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #29174 [verbose] > │ Unchecked.defaultof<Async<bool>> │
00:11:09 #29175 [verbose] > │ #endif │
00:11:09 #29176 [verbose] > │ |> fun x -> _v7 <- Some x │
00:11:09 #29177 [verbose] > │ let v61 : Async<bool> = _v7.Value │
00:11:09 #29178 [verbose] > │ let! v61 = v61 │
00:11:09 #29179 [verbose] > │ let v62 : bool = v61 │
00:11:09 #29180 [verbose] > │ let v63 : bool = v62 = false │
00:11:09 #29181 [verbose] > │ if v63 then │
00:11:09 #29182 [verbose] > │ let v64 : Async<unit> option = None │
00:11:09 #29183 [verbose] > │ let mutable _v64 = v64 │
00:11:09 #29184 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #29185 [verbose] > │ let v65 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #29186 [verbose] > │ v65 │
00:11:09 #29187 [verbose] > │ #endif │
00:11:09 #29188 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29189 [verbose] > │ let v66 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #29190 [verbose] > │ v66 │
00:11:09 #29191 [verbose] > │ #endif │
00:11:09 #29192 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29193 [verbose] > │ let v67 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #29194 [verbose] > │ v67 │
00:11:09 #29195 [verbose] > │ #endif │
00:11:09 #29196 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29197 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29198 [verbose] > │ let v68 : System.Threading.Tasks.Task = │
00:11:09 #29199 [verbose] > │ System.IO.File.WriteAllTextAsync (v0, v1) │
00:11:09 #29200 [verbose] > │ let v69 : Async<unit> option = None │
00:11:09 #29201 [verbose] > │ let mutable _v69 = v69 │
00:11:09 #29202 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #29203 [verbose] > │ let v70 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #29204 [verbose] > │ v70 │
00:11:09 #29205 [verbose] > │ #endif │
00:11:09 #29206 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29207 [verbose] > │ let v71 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #29208 [verbose] > │ v71 │
00:11:09 #29209 [verbose] > │ #endif │
00:11:09 #29210 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29211 [verbose] > │ let v72 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #29212 [verbose] > │ v72 │
00:11:09 #29213 [verbose] > │ #endif │
00:11:09 #29214 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29215 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29216 [verbose] > │ let v73 : (System.Threading.Tasks.Task -> Async<unit>) = │
00:11:09 #29217 [verbose] > │ Async.AwaitTask │
00:11:09 #29218 [verbose] > │ let v74 : Async<unit> = v73 v68 │
00:11:09 #29219 [verbose] > │ v74 │
00:11:09 #29220 [verbose] > │ #endif │
00:11:09 #29221 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29222 [verbose] > │ let v75 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #29223 [verbose] > │ v75 │
00:11:09 #29224 [verbose] > │ #endif │
00:11:09 #29225 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:09 #29226 [verbose] > │ FABLE_COMPILER_DART │
00:11:09 #29227 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:11:09 #29228 [verbose] > │ #endif │
00:11:09 #29229 [verbose] > │ |> fun x -> _v69 <- Some x │
00:11:09 #29230 [verbose] > │ let v76 : Async<unit> = _v69.Value │
00:11:09 #29231 [verbose] > │ v76 │
00:11:09 #29232 [verbose] > │ #endif │
00:11:09 #29233 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29234 [verbose] > │ let v77 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #29235 [verbose] > │ v77 │
00:11:09 #29236 [verbose] > │ #endif │
00:11:09 #29237 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:09 #29238 [verbose] > │ FABLE_COMPILER_DART │
00:11:09 #29239 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:11:09 #29240 [verbose] > │ #endif │
00:11:09 #29241 [verbose] > │ |> fun x -> _v64 <- Some x │
00:11:09 #29242 [verbose] > │ let v78 : Async<unit> = _v64.Value │
00:11:09 #29243 [verbose] > │ do! v78 │
00:11:09 #29244 [verbose] > │ () │
00:11:09 #29245 [verbose] > │ } │
00:11:09 #29246 [verbose] > │ |> fun x -> _v6 <- Some x │
00:11:09 #29247 [verbose] > │ let v79 : Async<unit> = _v6 |> Option.get │
00:11:09 #29248 [verbose] > │ v79 │
00:11:09 #29249 [verbose] > │ #endif │
00:11:09 #29250 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29251 [verbose] > │ let v80 : Async<unit> = null |> unbox<Async<unit>> │
00:11:09 #29252 [verbose] > │ v80 │
00:11:09 #29253 [verbose] > │ #endif │
00:11:09 #29254 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #29255 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:11:09 #29256 [verbose] > │ #endif │
00:11:09 #29257 [verbose] > │ |> fun x -> _v2 <- Some x │
00:11:09 #29258 [verbose] > │ let v81 : Async<unit> = _v2.Value │
00:11:09 #29259 [verbose] > │ v81 │
00:11:09 #29260 [verbose] > │ and closure13 () (v0 : string) : (string -> Async<unit>) = │
00:11:09 #29261 [verbose] > │ closure14(v0) │
00:11:09 #29262 [verbose] > │ and closure16 () () : string = │
00:11:09 #29263 [verbose] > │ let v0 : string = "delete_file_async" │
00:11:09 #29264 [verbose] > │ v0 │
00:11:09 #29265 [verbose] > │ and method8 (v0 : int64 option) : int64 option = │
00:11:09 #29266 [verbose] > │ v0 │
00:11:09 #29267 [verbose] > │ and method9 (v0 : int64 option) : int64 option = │
00:11:09 #29268 [verbose] > │ v0 │
00:11:09 #29269 [verbose] > │ and closure17 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) = │
00:11:09 #29270 [verbose] > │ let v0 : Mut1 = {l0 = true} : Mut1 │
00:11:09 #29271 [verbose] > │ let v1 : Mut0 = {l0 = 0L} : Mut0 │
00:11:09 #29272 [verbose] > │ let v2 : US3 = US3_0 │
00:11:09 #29273 [verbose] > │ let v3 : Mut2 = {l0 = v2} : Mut2 │
00:11:09 #29274 [verbose] > │ let v4 : Mut1 = {l0 = false} : Mut1 │
00:11:09 #29275 [verbose] > │ let v5 : int64 option option = None │
00:11:09 #29276 [verbose] > │ let mutable _v5 = v5 │
00:11:09 #29277 [verbose] > │ #if INTERACTIVE || !FABLE_COMPILER │
00:11:09 #29278 [verbose] > │ let v6 : string option = None │
00:11:09 #29279 [verbose] > │ let mutable _v6 = v6 │
00:11:09 #29280 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #29281 [verbose] > │ let v7 : string = null |> unbox<string> │
00:11:09 #29282 [verbose] > │ v7 │
00:11:09 #29283 [verbose] > │ #endif │
00:11:09 #29284 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29285 [verbose] > │ let v8 : string = null |> unbox<string> │
00:11:09 #29286 [verbose] > │ v8 │
00:11:09 #29287 [verbose] > │ #endif │
00:11:09 #29288 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29289 [verbose] > │ let v9 : string = null |> unbox<string> │
00:11:09 #29290 [verbose] > │ v9 │
00:11:09 #29291 [verbose] > │ #endif │
00:11:09 #29292 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29293 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29294 [verbose] > │ let v10 : string = │
00:11:09 #29295 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:11:09 #29296 [verbose] > │ v10 │
00:11:09 #29297 [verbose] > │ #endif │
00:11:09 #29298 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29299 [verbose] > │ let v11 : string = null |> unbox<string> │
00:11:09 #29300 [verbose] > │ v11 │
00:11:09 #29301 [verbose] > │ #endif │
00:11:09 #29302 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #29303 [verbose] > │ Unchecked.defaultof<string> │
00:11:09 #29304 [verbose] > │ #endif │
00:11:09 #29305 [verbose] > │ |> fun x -> _v6 <- Some x │
00:11:09 #29306 [verbose] > │ let v12 : string = _v6.Value │
00:11:09 #29307 [verbose] > │ let v14 : bool = v12 = "Microsoft.DotNet.Interactive.App" │
00:11:09 #29308 [verbose] > │ let v15 : bool = v14 <> true │
00:11:09 #29309 [verbose] > │ let v21 : US4 = │
00:11:09 #29310 [verbose] > │ if v15 then │
00:11:09 #29311 [verbose] > │ let v16 : System.DateTime = System.DateTime.Now │
00:11:09 #29312 [verbose] > │ let v17 : (System.DateTime -> int64) = _.Ticks │
00:11:09 #29313 [verbose] > │ let v18 : int64 = v17 v16 │
00:11:09 #29314 [verbose] > │ US4_0(v18) │
00:11:09 #29315 [verbose] > │ else │
00:11:09 #29316 [verbose] > │ US4_1 │
00:11:09 #29317 [verbose] > │ let v26 : int64 option = │
00:11:09 #29318 [verbose] > │ match v21 with │
00:11:09 #29319 [verbose] > │ | US4_1 -> (* None *) │
00:11:09 #29320 [verbose] > │ let v24 : int64 option = None │
00:11:09 #29321 [verbose] > │ v24 │
00:11:09 #29322 [verbose] > │ | US4_0(v22) -> (* Some *) │
00:11:09 #29323 [verbose] > │ let v23 : int64 option = Some v22 │
00:11:09 #29324 [verbose] > │ v23 │
00:11:09 #29325 [verbose] > │ let v27 : int64 option = method8(v26) │
00:11:09 #29326 [verbose] > │ v27 │
00:11:09 #29327 [verbose] > │ #else │
00:11:09 #29328 [verbose] > │ let v28 : int64 option = None │
00:11:09 #29329 [verbose] > │ let v29 : int64 option = method9(v28) │
00:11:09 #29330 [verbose] > │ v29 │
00:11:09 #29331 [verbose] > │ #endif │
00:11:09 #29332 [verbose] > │ |> fun x -> _v5 <- Some x │
00:11:09 #29333 [verbose] > │ let v30 : int64 option = _v5.Value │
00:11:09 #29334 [verbose] > │ struct (v1, v4, v0, v3, v30) │
00:11:09 #29335 [verbose] > │ and closure19 () (v0 : int64) : US5 = │
00:11:09 #29336 [verbose] > │ US5_0(v0) │
00:11:09 #29337 [verbose] > │ and method10 () : (int64 -> US5) = │
00:11:09 #29338 [verbose] > │ closure19() │
00:11:09 #29339 [verbose] > │ and method11 () : string = │
00:11:09 #29340 [verbose] > │ let v0 : string = "" │
00:11:09 #29341 [verbose] > │ v0 │
00:11:09 #29342 [verbose] > │ and closure18 (v0 : US3, v1 : (unit -> string), v2 : (unit -> string)) () : │
00:11:09 #29343 [verbose] > │ string = │
00:11:09 #29344 [verbose] > │ let v3 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:11:09 #29345 [verbose] > │ closure17() │
00:11:09 #29346 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:11:09 #29347 [verbose] > │ let struct (v4 : Mut0, v5 : Mut1, v6 : Mut1, v7 : Mut2, v8 : int64 │
00:11:09 #29348 [verbose] > │ option) = State.trace_state.Value │
00:11:09 #29349 [verbose] > │ let v9 : string option = None │
00:11:09 #29350 [verbose] > │ let mutable _v9 = v9 │
00:11:09 #29351 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #29352 [verbose] > │ let v10 : (int64 -> US5) = method10() │
00:11:09 #29353 [verbose] > │ let v11 : US5 = US5_1 │
00:11:09 #29354 [verbose] > │ let v12 : US5 = v8 |> Option.map v10 |> Option.defaultValue v11 │
00:11:09 #29355 [verbose] > │ let v30 : System.DateTime = │
00:11:09 #29356 [verbose] > │ match v12 with │
00:11:09 #29357 [verbose] > │ | US5_1 -> (* None *) │
00:11:09 #29358 [verbose] > │ let v28 : System.DateTime = System.DateTime.Now │
00:11:09 #29359 [verbose] > │ v28 │
00:11:09 #29360 [verbose] > │ | US5_0(v13) -> (* Some *) │
00:11:09 #29361 [verbose] > │ let v14 : System.DateTime = System.DateTime.Now │
00:11:09 #29362 [verbose] > │ let v15 : (System.DateTime -> int64) = _.Ticks │
00:11:09 #29363 [verbose] > │ let v16 : int64 = v15 v14 │
00:11:09 #29364 [verbose] > │ let v17 : int64 = v16 - v13 │
00:11:09 #29365 [verbose] > │ let v18 : System.TimeSpan = System.TimeSpan v17 │
00:11:09 #29366 [verbose] > │ let v19 : (System.TimeSpan -> int32) = _.Hours │
00:11:09 #29367 [verbose] > │ let v20 : int32 = v19 v18 │
00:11:09 #29368 [verbose] > │ let v21 : (System.TimeSpan -> int32) = _.Minutes │
00:11:09 #29369 [verbose] > │ let v22 : int32 = v21 v18 │
00:11:09 #29370 [verbose] > │ let v23 : (System.TimeSpan -> int32) = _.Seconds │
00:11:09 #29371 [verbose] > │ let v24 : int32 = v23 v18 │
00:11:09 #29372 [verbose] > │ let v25 : (System.TimeSpan -> int32) = _.Milliseconds │
00:11:09 #29373 [verbose] > │ let v26 : int32 = v25 v18 │
00:11:09 #29374 [verbose] > │ let v27 : System.DateTime = System.DateTime (1, 1, 1, v20, v22, │
00:11:09 #29375 [verbose] > │ v24, v26) │
00:11:09 #29376 [verbose] > │ v27 │
00:11:09 #29377 [verbose] > │ let v31 : string = "hh:mm:ss" │
00:11:09 #29378 [verbose] > │ let v32 : string = v30.ToString v31 │
00:11:09 #29379 [verbose] > │ v32 │
00:11:09 #29380 [verbose] > │ #endif │
00:11:09 #29381 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29382 [verbose] > │ let v33 : string = method11() │
00:11:09 #29383 [verbose] > │ v33 │
00:11:09 #29384 [verbose] > │ #endif │
00:11:09 #29385 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29386 [verbose] > │ let v34 : string = method11() │
00:11:09 #29387 [verbose] > │ v34 │
00:11:09 #29388 [verbose] > │ #endif │
00:11:09 #29389 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29390 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29391 [verbose] > │ let v35 : (int64 -> US5) = method10() │
00:11:09 #29392 [verbose] > │ let v36 : US5 = US5_1 │
00:11:09 #29393 [verbose] > │ let v37 : US5 = v8 |> Option.map v35 |> Option.defaultValue v36 │
00:11:09 #29394 [verbose] > │ let v55 : System.DateTime = │
00:11:09 #29395 [verbose] > │ match v37 with │
00:11:09 #29396 [verbose] > │ | US5_1 -> (* None *) │
00:11:09 #29397 [verbose] > │ let v53 : System.DateTime = System.DateTime.Now │
00:11:09 #29398 [verbose] > │ v53 │
00:11:09 #29399 [verbose] > │ | US5_0(v38) -> (* Some *) │
00:11:09 #29400 [verbose] > │ let v39 : System.DateTime = System.DateTime.Now │
00:11:09 #29401 [verbose] > │ let v40 : (System.DateTime -> int64) = _.Ticks │
00:11:09 #29402 [verbose] > │ let v41 : int64 = v40 v39 │
00:11:09 #29403 [verbose] > │ let v42 : int64 = v41 - v38 │
00:11:09 #29404 [verbose] > │ let v43 : System.TimeSpan = System.TimeSpan v42 │
00:11:09 #29405 [verbose] > │ let v44 : (System.TimeSpan -> int32) = _.Hours │
00:11:09 #29406 [verbose] > │ let v45 : int32 = v44 v43 │
00:11:09 #29407 [verbose] > │ let v46 : (System.TimeSpan -> int32) = _.Minutes │
00:11:09 #29408 [verbose] > │ let v47 : int32 = v46 v43 │
00:11:09 #29409 [verbose] > │ let v48 : (System.TimeSpan -> int32) = _.Seconds │
00:11:09 #29410 [verbose] > │ let v49 : int32 = v48 v43 │
00:11:09 #29411 [verbose] > │ let v50 : (System.TimeSpan -> int32) = _.Milliseconds │
00:11:09 #29412 [verbose] > │ let v51 : int32 = v50 v43 │
00:11:09 #29413 [verbose] > │ let v52 : System.DateTime = System.DateTime (1, 1, 1, v45, v47, │
00:11:09 #29414 [verbose] > │ v49, v51) │
00:11:09 #29415 [verbose] > │ v52 │
00:11:09 #29416 [verbose] > │ let v56 : string = "HH:mm:ss" │
00:11:09 #29417 [verbose] > │ let v57 : string = v55.ToString v56 │
00:11:09 #29418 [verbose] > │ v57 │
00:11:09 #29419 [verbose] > │ #endif │
00:11:09 #29420 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29421 [verbose] > │ let v58 : string = method11() │
00:11:09 #29422 [verbose] > │ v58 │
00:11:09 #29423 [verbose] > │ #endif │
00:11:09 #29424 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #29425 [verbose] > │ Unchecked.defaultof<string> │
00:11:09 #29426 [verbose] > │ #endif │
00:11:09 #29427 [verbose] > │ |> fun x -> _v9 <- Some x │
00:11:09 #29428 [verbose] > │ let v59 : string = _v9.Value │
00:11:09 #29429 [verbose] > │ let v60 : int64 = v4.l0 │
00:11:09 #29430 [verbose] > │ let v70 : string = │
00:11:09 #29431 [verbose] > │ match v0 with │
00:11:09 #29432 [verbose] > │ | US3_4 -> (* Critical *) │
00:11:09 #29433 [verbose] > │ let v65 : string = "Critical" │
00:11:09 #29434 [verbose] > │ v65 │
00:11:09 #29435 [verbose] > │ | US3_1 -> (* Debug *) │
00:11:09 #29436 [verbose] > │ let v62 : string = "Debug" │
00:11:09 #29437 [verbose] > │ v62 │
00:11:09 #29438 [verbose] > │ | US3_2 -> (* Info *) │
00:11:09 #29439 [verbose] > │ let v63 : string = "Info" │
00:11:09 #29440 [verbose] > │ v63 │
00:11:09 #29441 [verbose] > │ | US3_0 -> (* Verbose *) │
00:11:09 #29442 [verbose] > │ let v61 : string = "Verbose" │
00:11:09 #29443 [verbose] > │ v61 │
00:11:09 #29444 [verbose] > │ | US3_3 -> (* Warning *) │
00:11:09 #29445 [verbose] > │ let v64 : string = "Warning" │
00:11:09 #29446 [verbose] > │ v64 │
00:11:09 #29447 [verbose] > │ let v71 : string = v70.ToLower () │
00:11:09 #29448 [verbose] > │ let v72 : string = $"{v59} #{v60} [{v71}] %s{v1 ()} / %s{v2 ()}" │
00:11:09 #29449 [verbose] > │ let v73 : (char []) = [||] │
00:11:09 #29450 [verbose] > │ let v74 : string = v72.TrimStart v73 │
00:11:09 #29451 [verbose] > │ let v75 : (char []) = [|' '; '/'|] │
00:11:09 #29452 [verbose] > │ let v76 : string = v74.TrimEnd v75 │
00:11:09 #29453 [verbose] > │ v76 │
00:11:09 #29454 [verbose] > │ and method7 (v0 : US3, v1 : (unit -> string), v2 : (unit -> string)) : unit │
00:11:09 #29455 [verbose] > │ = │
00:11:09 #29456 [verbose] > │ let v3 : (unit -> struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option)) = │
00:11:09 #29457 [verbose] > │ closure17() │
00:11:09 #29458 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:11:09 #29459 [verbose] > │ let struct (v4 : Mut0, v5 : Mut1, v6 : Mut1, v7 : Mut2, v8 : int64 │
00:11:09 #29460 [verbose] > │ option) = State.trace_state.Value │
00:11:09 #29461 [verbose] > │ if State.trace_state = None then State.trace_state <- v3 () |> Some │
00:11:09 #29462 [verbose] > │ let struct (v9 : Mut0, v10 : Mut1, v11 : Mut1, v12 : Mut2, v13 : int64 │
00:11:09 #29463 [verbose] > │ option) = State.trace_state.Value │
00:11:09 #29464 [verbose] > │ let v14 : US3 = v12.l0 │
00:11:09 #29465 [verbose] > │ let v15 : bool = v11.l0 │
00:11:09 #29466 [verbose] > │ let v17 : bool = │
00:11:09 #29467 [verbose] > │ if v15 then │
00:11:09 #29468 [verbose] > │ let v16 : bool = v0 >= v14 │
00:11:09 #29469 [verbose] > │ v16 │
00:11:09 #29470 [verbose] > │ else │
00:11:09 #29471 [verbose] > │ false │
00:11:09 #29472 [verbose] > │ if v17 then │
00:11:09 #29473 [verbose] > │ let v18 : int64 = v4.l0 │
00:11:09 #29474 [verbose] > │ let v19 : int64 = v18 + 1L │
00:11:09 #29475 [verbose] > │ v4.l0 <- v19 │
00:11:09 #29476 [verbose] > │ let v20 : (unit -> string) = closure18(v0, v1, v2) │
00:11:09 #29477 [verbose] > │ let v21 : string = $"%s{v20 ()}" │
00:11:09 #29478 [verbose] > │ let v22 : unit option = None │
00:11:09 #29479 [verbose] > │ let mutable _v22 = v22 │
00:11:09 #29480 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #29481 [verbose] > │ let v23 : string = @"println!(""{}"", $0)" │
00:11:09 #29482 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v23 │
00:11:09 #29483 [verbose] > │ () │
00:11:09 #29484 [verbose] > │ #endif │
00:11:09 #29485 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29486 [verbose] > │ let v24 : string = @"println!(""{}"", $0)" │
00:11:09 #29487 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v24 │
00:11:09 #29488 [verbose] > │ () │
00:11:09 #29489 [verbose] > │ #endif │
00:11:09 #29490 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29491 [verbose] > │ let v25 : string = @"println!(""{}"", $0)" │
00:11:09 #29492 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v21 v25 │
00:11:09 #29493 [verbose] > │ () │
00:11:09 #29494 [verbose] > │ #endif │
00:11:09 #29495 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29496 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29497 [verbose] > │ System.Console.WriteLine v21 │
00:11:09 #29498 [verbose] > │ () │
00:11:09 #29499 [verbose] > │ #endif │
00:11:09 #29500 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29501 [verbose] > │ System.Console.WriteLine v21 │
00:11:09 #29502 [verbose] > │ () │
00:11:09 #29503 [verbose] > │ #endif │
00:11:09 #29504 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:09 #29505 [verbose] > │ FABLE_COMPILER_DART │
00:11:09 #29506 [verbose] > │ Unchecked.defaultof<unit> │
00:11:09 #29507 [verbose] > │ #endif │
00:11:09 #29508 [verbose] > │ |> fun x -> _v22 <- Some x │
00:11:09 #29509 [verbose] > │ _v22.Value │
00:11:09 #29510 [verbose] > │ () │
00:11:09 #29511 [verbose] > │ and method6 (v0 : string, v1 : int64) : Async<int64> = │
00:11:09 #29512 [verbose] > │ let v2 : Async<int64> option = None │
00:11:09 #29513 [verbose] > │ let mutable _v2 = v2 │
00:11:09 #29514 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #29515 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #29516 [verbose] > │ v3 │
00:11:09 #29517 [verbose] > │ #endif │
00:11:09 #29518 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29519 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #29520 [verbose] > │ v4 │
00:11:09 #29521 [verbose] > │ #endif │
00:11:09 #29522 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29523 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:11:09 #29524 [verbose] > │ v5 │
00:11:09 #29525 [verbose] > │ #endif │
00:11:09 #29526 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29527 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29528 [verbose] > │ let v6 : Async<int64> option = None │
00:11:09 #29529 [verbose] > │ let mutable _v6 = v6 │
00:11:09 #29530 [verbose] > │ async { │
00:11:09 #29531 [verbose] > │ try │
00:11:09 #29532 [verbose] > │ let v7 : unit option = None │
00:11:09 #29533 [verbose] > │ let mutable _v7 = v7 │
00:11:09 #29534 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #29535 [verbose] > │ null |> unbox<unit> │
00:11:09 #29536 [verbose] > │ () │
00:11:09 #29537 [verbose] > │ #endif │
00:11:09 #29538 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29539 [verbose] > │ null |> unbox<unit> │
00:11:09 #29540 [verbose] > │ () │
00:11:09 #29541 [verbose] > │ #endif │
00:11:09 #29542 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29543 [verbose] > │ null |> unbox<unit> │
00:11:09 #29544 [verbose] > │ () │
00:11:09 #29545 [verbose] > │ #endif │
00:11:09 #29546 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29547 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29548 [verbose] > │ let v8 : (string -> unit) = System.IO.File.Delete │
00:11:09 #29549 [verbose] > │ v8 v0 │
00:11:09 #29550 [verbose] > │ () │
00:11:09 #29551 [verbose] > │ #endif │
00:11:09 #29552 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29553 [verbose] > │ null |> unbox<unit> │
00:11:09 #29554 [verbose] > │ () │
00:11:09 #29555 [verbose] > │ #endif │
00:11:09 #29556 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:09 #29557 [verbose] > │ Unchecked.defaultof<unit> │
00:11:09 #29558 [verbose] > │ #endif │
00:11:09 #29559 [verbose] > │ |> fun x -> _v7 <- Some x │
00:11:09 #29560 [verbose] > │ _v7.Value │
00:11:09 #29561 [verbose] > │ return v1 │
00:11:09 #29562 [verbose] > │ with ex -> │
00:11:09 #29563 [verbose] > │ let v9 : exn = ex │
00:11:09 #29564 [verbose] > │ let v10 : int64 = v1 % 100L │
00:11:09 #29565 [verbose] > │ let v11 : bool = v10 = 0L │
00:11:09 #29566 [verbose] > │ if v11 then │
00:11:09 #29567 [verbose] > │ let v12 : string option = None │
00:11:09 #29568 [verbose] > │ let mutable _v12 = v12 │
00:11:09 #29569 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:09 #29570 [verbose] > │ let v13 : string = $"%A{v9}" │
00:11:09 #29571 [verbose] > │ v13 │
00:11:09 #29572 [verbose] > │ #endif │
00:11:09 #29573 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:09 #29574 [verbose] > │ let v14 : string = $"%A{v9}" │
00:11:09 #29575 [verbose] > │ v14 │
00:11:09 #29576 [verbose] > │ #endif │
00:11:09 #29577 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:09 #29578 [verbose] > │ let v15 : string = $"%A{v9}" │
00:11:09 #29579 [verbose] > │ v15 │
00:11:09 #29580 [verbose] > │ #endif │
00:11:09 #29581 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:09 #29582 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:09 #29583 [verbose] > │ let v16 : string = $"{v9.GetType ()}: {v9.Message}" │
00:11:09 #29584 [verbose] > │ v16 │
00:11:09 #29585 [verbose] > │ #endif │
00:11:09 #29586 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:09 #29587 [verbose] > │ let v17 : string = $"%A{v9}" │
00:11:09 #29588 [verbose] > │ v17 │
00:11:09 #29589 [verbose] > │ #endif │
00:11:09 #29590 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:09 #29591 [verbose] > │ FABLE_COMPILER_DART │
00:11:09 #29592 [verbose] > │ Unchecked.defaultof<string> │
00:11:09 #29593 [verbose] > │ #endif │
00:11:09 #29594 [verbose] > │ |> fun x -> _v12 <- Some x │
00:11:09 #29595 [verbose] > │ let v18 : string = _v12.Value │
00:11:09 #29596 [verbose] > │ let v19 : US3 = US3_3 │
00:11:10 #29597 [verbose] > │ let v20 : (unit -> string) = closure16() │
00:11:10 #29598 [verbose] > │ let v21 : (unit -> string) = closure3() │
00:11:10 #29599 [verbose] > │ method7(v19, v20, v21) │
00:11:10 #29600 [verbose] > │ let v22 : Async<unit> option = None │
00:11:10 #29601 [verbose] > │ let mutable _v22 = v22 │
00:11:10 #29602 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #29603 [verbose] > │ let v23 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #29604 [verbose] > │ v23 │
00:11:10 #29605 [verbose] > │ #endif │
00:11:10 #29606 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #29607 [verbose] > │ let v24 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #29608 [verbose] > │ v24 │
00:11:10 #29609 [verbose] > │ #endif │
00:11:10 #29610 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #29611 [verbose] > │ let v25 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #29612 [verbose] > │ v25 │
00:11:10 #29613 [verbose] > │ #endif │
00:11:10 #29614 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #29615 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #29616 [verbose] > │ let v26 : (int32 -> Async<unit>) = Async.Sleep │
00:11:10 #29617 [verbose] > │ let v27 : Async<unit> = v26 10 │
00:11:10 #29618 [verbose] > │ v27 │
00:11:10 #29619 [verbose] > │ #endif │
00:11:10 #29620 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #29621 [verbose] > │ let v28 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #29622 [verbose] > │ v28 │
00:11:10 #29623 [verbose] > │ #endif │
00:11:10 #29624 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #29625 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:11:10 #29626 [verbose] > │ #endif │
00:11:10 #29627 [verbose] > │ |> fun x -> _v22 <- Some x │
00:11:10 #29628 [verbose] > │ let v29 : Async<unit> = _v22.Value │
00:11:10 #29629 [verbose] > │ do! v29 │
00:11:10 #29630 [verbose] > │ let v30 : int64 = v1 + 1L │
00:11:10 #29631 [verbose] > │ let v31 : Async<int64> = method6(v0, v30) │
00:11:10 #29632 [verbose] > │ return! v31 │
00:11:10 #29633 [verbose] > │ (* │
00:11:10 #29634 [verbose] > │ let v32 : int64 = *) │
00:11:10 #29635 [verbose] > │ } │
00:11:10 #29636 [verbose] > │ |> fun x -> _v6 <- Some x │
00:11:10 #29637 [verbose] > │ let v33 : Async<int64> = _v6 |> Option.get │
00:11:10 #29638 [verbose] > │ v33 │
00:11:10 #29639 [verbose] > │ #endif │
00:11:10 #29640 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #29641 [verbose] > │ let v34 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29642 [verbose] > │ v34 │
00:11:10 #29643 [verbose] > │ #endif │
00:11:10 #29644 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #29645 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:11:10 #29646 [verbose] > │ #endif │
00:11:10 #29647 [verbose] > │ |> fun x -> _v2 <- Some x │
00:11:10 #29648 [verbose] > │ let v35 : Async<int64> = _v2.Value │
00:11:10 #29649 [verbose] > │ v35 │
00:11:10 #29650 [verbose] > │ and closure15 () (v0 : string) : Async<int64> = │
00:11:10 #29651 [verbose] > │ let v1 : Async<int64> option = None │
00:11:10 #29652 [verbose] > │ let mutable _v1 = v1 │
00:11:10 #29653 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #29654 [verbose] > │ let v2 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29655 [verbose] > │ v2 │
00:11:10 #29656 [verbose] > │ #endif │
00:11:10 #29657 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #29658 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29659 [verbose] > │ v3 │
00:11:10 #29660 [verbose] > │ #endif │
00:11:10 #29661 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #29662 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29663 [verbose] > │ v4 │
00:11:10 #29664 [verbose] > │ #endif │
00:11:10 #29665 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #29666 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #29667 [verbose] > │ let v5 : int64 = 0L │
00:11:10 #29668 [verbose] > │ let v6 : Async<int64> = method6(v0, v5) │
00:11:10 #29669 [verbose] > │ v6 │
00:11:10 #29670 [verbose] > │ #endif │
00:11:10 #29671 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #29672 [verbose] > │ let v7 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29673 [verbose] > │ v7 │
00:11:10 #29674 [verbose] > │ #endif │
00:11:10 #29675 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #29676 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:11:10 #29677 [verbose] > │ #endif │
00:11:10 #29678 [verbose] > │ |> fun x -> _v1 <- Some x │
00:11:10 #29679 [verbose] > │ let v8 : Async<int64> = _v1.Value │
00:11:10 #29680 [verbose] > │ v8 │
00:11:10 #29681 [verbose] > │ and closure22 () () : string = │
00:11:10 #29682 [verbose] > │ let v0 : string = "move_file_async" │
00:11:10 #29683 [verbose] > │ v0 │
00:11:10 #29684 [verbose] > │ and method13 (v0 : string, v1 : string, v2 : exn) : string = │
00:11:10 #29685 [verbose] > │ let v3 : string option = None │
00:11:10 #29686 [verbose] > │ let mutable _v3 = v3 │
00:11:10 #29687 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #29688 [verbose] > │ let v4 : string = $"%A{v2}" │
00:11:10 #29689 [verbose] > │ v4 │
00:11:10 #29690 [verbose] > │ #endif │
00:11:10 #29691 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #29692 [verbose] > │ let v5 : string = $"%A{v2}" │
00:11:10 #29693 [verbose] > │ v5 │
00:11:10 #29694 [verbose] > │ #endif │
00:11:10 #29695 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #29696 [verbose] > │ let v6 : string = $"%A{v2}" │
00:11:10 #29697 [verbose] > │ v6 │
00:11:10 #29698 [verbose] > │ #endif │
00:11:10 #29699 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #29700 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #29701 [verbose] > │ let v7 : string = $"{v2.GetType ()}: {v2.Message}" │
00:11:10 #29702 [verbose] > │ v7 │
00:11:10 #29703 [verbose] > │ #endif │
00:11:10 #29704 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #29705 [verbose] > │ let v8 : string = $"%A{v2}" │
00:11:10 #29706 [verbose] > │ v8 │
00:11:10 #29707 [verbose] > │ #endif │
00:11:10 #29708 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #29709 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #29710 [verbose] > │ #endif │
00:11:10 #29711 [verbose] > │ |> fun x -> _v3 <- Some x │
00:11:10 #29712 [verbose] > │ let v9 : string = _v3.Value │
00:11:10 #29713 [verbose] > │ let v10 : (string -> string) = closure2() │
00:11:10 #29714 [verbose] > │ let v11 : (unit -> string) = closure3() │
00:11:10 #29715 [verbose] > │ let v12 : string = $"old_path: {v1 |> v10} / new_path: {v0 |> v10} / ex: │
00:11:10 #29716 [verbose] > │ {v9} / {v11 ()}" │
00:11:10 #29717 [verbose] > │ v12 │
00:11:10 #29718 [verbose] > │ and closure23 (v0 : string, v1 : string, v2 : exn) () : string = │
00:11:10 #29719 [verbose] > │ method13(v0, v1, v2) │
00:11:10 #29720 [verbose] > │ and method12 (v0 : string, v1 : string, v2 : int64) : Async<int64> = │
00:11:10 #29721 [verbose] > │ let v3 : Async<int64> option = None │
00:11:10 #29722 [verbose] > │ let mutable _v3 = v3 │
00:11:10 #29723 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #29724 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29725 [verbose] > │ v4 │
00:11:10 #29726 [verbose] > │ #endif │
00:11:10 #29727 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #29728 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29729 [verbose] > │ v5 │
00:11:10 #29730 [verbose] > │ #endif │
00:11:10 #29731 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #29732 [verbose] > │ let v6 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29733 [verbose] > │ v6 │
00:11:10 #29734 [verbose] > │ #endif │
00:11:10 #29735 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #29736 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #29737 [verbose] > │ let v7 : Async<int64> option = None │
00:11:10 #29738 [verbose] > │ let mutable _v7 = v7 │
00:11:10 #29739 [verbose] > │ async { │
00:11:10 #29740 [verbose] > │ try │
00:11:10 #29741 [verbose] > │ let v8 : unit option = None │
00:11:10 #29742 [verbose] > │ let mutable _v8 = v8 │
00:11:10 #29743 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #29744 [verbose] > │ null |> unbox<unit> │
00:11:10 #29745 [verbose] > │ () │
00:11:10 #29746 [verbose] > │ #endif │
00:11:10 #29747 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #29748 [verbose] > │ null |> unbox<unit> │
00:11:10 #29749 [verbose] > │ () │
00:11:10 #29750 [verbose] > │ #endif │
00:11:10 #29751 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #29752 [verbose] > │ null |> unbox<unit> │
00:11:10 #29753 [verbose] > │ () │
00:11:10 #29754 [verbose] > │ #endif │
00:11:10 #29755 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #29756 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #29757 [verbose] > │ System.IO.File.Move (v1, v0) │
00:11:10 #29758 [verbose] > │ () │
00:11:10 #29759 [verbose] > │ #endif │
00:11:10 #29760 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #29761 [verbose] > │ null |> unbox<unit> │
00:11:10 #29762 [verbose] > │ () │
00:11:10 #29763 [verbose] > │ #endif │
00:11:10 #29764 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #29765 [verbose] > │ Unchecked.defaultof<unit> │
00:11:10 #29766 [verbose] > │ #endif │
00:11:10 #29767 [verbose] > │ |> fun x -> _v8 <- Some x │
00:11:10 #29768 [verbose] > │ _v8.Value │
00:11:10 #29769 [verbose] > │ return v2 │
00:11:10 #29770 [verbose] > │ with ex -> │
00:11:10 #29771 [verbose] > │ let v9 : exn = ex │
00:11:10 #29772 [verbose] > │ let v10 : int64 = v2 % 100L │
00:11:10 #29773 [verbose] > │ let v11 : bool = v10 = 0L │
00:11:10 #29774 [verbose] > │ if v11 then │
00:11:10 #29775 [verbose] > │ let v12 : US3 = US3_3 │
00:11:10 #29776 [verbose] > │ let v13 : (unit -> string) = closure22() │
00:11:10 #29777 [verbose] > │ let v14 : (unit -> string) = closure23(v0, v1, v9) │
00:11:10 #29778 [verbose] > │ method7(v12, v13, v14) │
00:11:10 #29779 [verbose] > │ let v15 : Async<unit> option = None │
00:11:10 #29780 [verbose] > │ let mutable _v15 = v15 │
00:11:10 #29781 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #29782 [verbose] > │ let v16 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #29783 [verbose] > │ v16 │
00:11:10 #29784 [verbose] > │ #endif │
00:11:10 #29785 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #29786 [verbose] > │ let v17 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #29787 [verbose] > │ v17 │
00:11:10 #29788 [verbose] > │ #endif │
00:11:10 #29789 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #29790 [verbose] > │ let v18 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #29791 [verbose] > │ v18 │
00:11:10 #29792 [verbose] > │ #endif │
00:11:10 #29793 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #29794 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #29795 [verbose] > │ let v19 : (int32 -> Async<unit>) = Async.Sleep │
00:11:10 #29796 [verbose] > │ let v20 : Async<unit> = v19 10 │
00:11:10 #29797 [verbose] > │ v20 │
00:11:10 #29798 [verbose] > │ #endif │
00:11:10 #29799 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #29800 [verbose] > │ let v21 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #29801 [verbose] > │ v21 │
00:11:10 #29802 [verbose] > │ #endif │
00:11:10 #29803 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #29804 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:11:10 #29805 [verbose] > │ #endif │
00:11:10 #29806 [verbose] > │ |> fun x -> _v15 <- Some x │
00:11:10 #29807 [verbose] > │ let v22 : Async<unit> = _v15.Value │
00:11:10 #29808 [verbose] > │ do! v22 │
00:11:10 #29809 [verbose] > │ let v23 : int64 = v2 + 1L │
00:11:10 #29810 [verbose] > │ let v24 : Async<int64> = method12(v0, v1, v23) │
00:11:10 #29811 [verbose] > │ return! v24 │
00:11:10 #29812 [verbose] > │ (* │
00:11:10 #29813 [verbose] > │ *) │
00:11:10 #29814 [verbose] > │ } │
00:11:10 #29815 [verbose] > │ |> fun x -> _v7 <- Some x │
00:11:10 #29816 [verbose] > │ let v25 : Async<int64> = _v7 |> Option.get │
00:11:10 #29817 [verbose] > │ v25 │
00:11:10 #29818 [verbose] > │ #endif │
00:11:10 #29819 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #29820 [verbose] > │ let v26 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29821 [verbose] > │ v26 │
00:11:10 #29822 [verbose] > │ #endif │
00:11:10 #29823 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #29824 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:11:10 #29825 [verbose] > │ #endif │
00:11:10 #29826 [verbose] > │ |> fun x -> _v3 <- Some x │
00:11:10 #29827 [verbose] > │ let v27 : Async<int64> = _v3.Value │
00:11:10 #29828 [verbose] > │ v27 │
00:11:10 #29829 [verbose] > │ and closure21 (v0 : string) (v1 : string) : Async<int64> = │
00:11:10 #29830 [verbose] > │ let v2 : Async<int64> option = None │
00:11:10 #29831 [verbose] > │ let mutable _v2 = v2 │
00:11:10 #29832 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #29833 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29834 [verbose] > │ v3 │
00:11:10 #29835 [verbose] > │ #endif │
00:11:10 #29836 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #29837 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29838 [verbose] > │ v4 │
00:11:10 #29839 [verbose] > │ #endif │
00:11:10 #29840 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #29841 [verbose] > │ let v5 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29842 [verbose] > │ v5 │
00:11:10 #29843 [verbose] > │ #endif │
00:11:10 #29844 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #29845 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #29846 [verbose] > │ let v6 : int64 = 0L │
00:11:10 #29847 [verbose] > │ let v7 : Async<int64> = method12(v0, v1, v6) │
00:11:10 #29848 [verbose] > │ v7 │
00:11:10 #29849 [verbose] > │ #endif │
00:11:10 #29850 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #29851 [verbose] > │ let v8 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29852 [verbose] > │ v8 │
00:11:10 #29853 [verbose] > │ #endif │
00:11:10 #29854 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #29855 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:11:10 #29856 [verbose] > │ #endif │
00:11:10 #29857 [verbose] > │ |> fun x -> _v2 <- Some x │
00:11:10 #29858 [verbose] > │ let v9 : Async<int64> = _v2.Value │
00:11:10 #29859 [verbose] > │ v9 │
00:11:10 #29860 [verbose] > │ and closure20 () (v0 : string) : (string -> Async<int64>) = │
00:11:10 #29861 [verbose] > │ closure21(v0) │
00:11:10 #29862 [verbose] > │ and closure25 () (v0 : int64) : US6 = │
00:11:10 #29863 [verbose] > │ US6_0(v0) │
00:11:10 #29864 [verbose] > │ and closure26 () (v0 : exn) : US6 = │
00:11:10 #29865 [verbose] > │ US6_1(v0) │
00:11:10 #29866 [verbose] > │ and closure27 () () : string = │
00:11:10 #29867 [verbose] > │ let v0 : string = "run_with_timeout_async" │
00:11:10 #29868 [verbose] > │ v0 │
00:11:10 #29869 [verbose] > │ and closure28 () () : string = │
00:11:10 #29870 [verbose] > │ let v0 : (unit -> string) = closure3() │
00:11:10 #29871 [verbose] > │ let v1 : string = $"timeout: {1000} / {v0 ()}" │
00:11:10 #29872 [verbose] > │ v1 │
00:11:10 #29873 [verbose] > │ and closure29 (v0 : string) () : string = │
00:11:10 #29874 [verbose] > │ let v1 : string = $"run_with_timeout_async** / ex: {v0}" │
00:11:10 #29875 [verbose] > │ v1 │
00:11:10 #29876 [verbose] > │ and closure30 () () : string = │
00:11:10 #29877 [verbose] > │ let v0 : string = "read_all_text_retry_async" │
00:11:10 #29878 [verbose] > │ v0 │
00:11:10 #29879 [verbose] > │ and method15 (v0 : int64, v1 : string) : string = │
00:11:10 #29880 [verbose] > │ let v2 : (unit -> string) = closure3() │
00:11:10 #29881 [verbose] > │ let v3 : string = $"retry: {v0} / ex: {v1} / {v2 ()}" │
00:11:10 #29882 [verbose] > │ v3 │
00:11:10 #29883 [verbose] > │ and closure31 (v0 : int64, v1 : string) () : string = │
00:11:10 #29884 [verbose] > │ method15(v0, v1) │
00:11:10 #29885 [verbose] > │ and method14 (v0 : string, v1 : int64) : Async<string option> = │
00:11:10 #29886 [verbose] > │ let v2 : Async<string option> option = None │
00:11:10 #29887 [verbose] > │ let mutable _v2 = v2 │
00:11:10 #29888 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #29889 [verbose] > │ let v3 : Async<string option> = null |> unbox<Async<string option>> │
00:11:10 #29890 [verbose] > │ v3 │
00:11:10 #29891 [verbose] > │ #endif │
00:11:10 #29892 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #29893 [verbose] > │ let v4 : Async<string option> = null |> unbox<Async<string option>> │
00:11:10 #29894 [verbose] > │ v4 │
00:11:10 #29895 [verbose] > │ #endif │
00:11:10 #29896 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #29897 [verbose] > │ let v5 : Async<string option> = null |> unbox<Async<string option>> │
00:11:10 #29898 [verbose] > │ v5 │
00:11:10 #29899 [verbose] > │ #endif │
00:11:10 #29900 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #29901 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #29902 [verbose] > │ let v6 : Async<string option> option = None │
00:11:10 #29903 [verbose] > │ let mutable _v6 = v6 │
00:11:10 #29904 [verbose] > │ async { │
00:11:10 #29905 [verbose] > │ try │
00:11:10 #29906 [verbose] > │ let v7 : bool = v1 > 0L │
00:11:10 #29907 [verbose] > │ if v7 then │
00:11:10 #29908 [verbose] > │ let v8 : Async<int64> option = None │
00:11:10 #29909 [verbose] > │ let mutable _v8 = v8 │
00:11:10 #29910 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #29911 [verbose] > │ let v9 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29912 [verbose] > │ v9 │
00:11:10 #29913 [verbose] > │ #endif │
00:11:10 #29914 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #29915 [verbose] > │ let v10 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29916 [verbose] > │ v10 │
00:11:10 #29917 [verbose] > │ #endif │
00:11:10 #29918 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #29919 [verbose] > │ let v11 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29920 [verbose] > │ v11 │
00:11:10 #29921 [verbose] > │ #endif │
00:11:10 #29922 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #29923 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #29924 [verbose] > │ let v12 : int64 = 0L │
00:11:10 #29925 [verbose] > │ let v13 : Async<int64> = method4(v0, v12) │
00:11:10 #29926 [verbose] > │ v13 │
00:11:10 #29927 [verbose] > │ #endif │
00:11:10 #29928 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #29929 [verbose] > │ let v14 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #29930 [verbose] > │ v14 │
00:11:10 #29931 [verbose] > │ #endif │
00:11:10 #29932 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #29933 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #29934 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:11:10 #29935 [verbose] > │ #endif │
00:11:10 #29936 [verbose] > │ |> fun x -> _v8 <- Some x │
00:11:10 #29937 [verbose] > │ let v15 : Async<int64> = _v8.Value │
00:11:10 #29938 [verbose] > │ let v16 : Async<US5> option = None │
00:11:10 #29939 [verbose] > │ let mutable _v16 = v16 │
00:11:10 #29940 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #29941 [verbose] > │ let v17 : Async<US5> = null |> unbox<Async<US5>> │
00:11:10 #29942 [verbose] > │ v17 │
00:11:10 #29943 [verbose] > │ #endif │
00:11:10 #29944 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #29945 [verbose] > │ let v18 : Async<US5> = null |> unbox<Async<US5>> │
00:11:10 #29946 [verbose] > │ v18 │
00:11:10 #29947 [verbose] > │ #endif │
00:11:10 #29948 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #29949 [verbose] > │ let v19 : Async<US5> = null |> unbox<Async<US5>> │
00:11:10 #29950 [verbose] > │ v19 │
00:11:10 #29951 [verbose] > │ #endif │
00:11:10 #29952 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #29953 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #29954 [verbose] > │ let v20 : Async<US5> option = None │
00:11:10 #29955 [verbose] > │ let mutable _v20 = v20 │
00:11:10 #29956 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #29957 [verbose] > │ let v21 : Async<US5> = null |> unbox<Async<US5>> │
00:11:10 #29958 [verbose] > │ v21 │
00:11:10 #29959 [verbose] > │ #endif │
00:11:10 #29960 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #29961 [verbose] > │ let v22 : Async<US5> = null |> unbox<Async<US5>> │
00:11:10 #29962 [verbose] > │ v22 │
00:11:10 #29963 [verbose] > │ #endif │
00:11:10 #29964 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #29965 [verbose] > │ let v23 : Async<US5> = null |> unbox<Async<US5>> │
00:11:10 #29966 [verbose] > │ v23 │
00:11:10 #29967 [verbose] > │ #endif │
00:11:10 #29968 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #29969 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #29970 [verbose] > │ let v24 : Async<US5> option = None │
00:11:10 #29971 [verbose] > │ let mutable _v24 = v24 │
00:11:10 #29972 [verbose] > │ async { │
00:11:10 #29973 [verbose] > │ let v25 : Async<Async<int64>> option = None │
00:11:10 #29974 [verbose] > │ let mutable _v25 = v25 │
00:11:10 #29975 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #29976 [verbose] > │ let v26 : Async<Async<int64>> = null |> unbox<Async<Async<int64>>> │
00:11:10 #29977 [verbose] > │ v26 │
00:11:10 #29978 [verbose] > │ #endif │
00:11:10 #29979 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #29980 [verbose] > │ let v27 : Async<Async<int64>> = null |> unbox<Async<Async<int64>>> │
00:11:10 #29981 [verbose] > │ v27 │
00:11:10 #29982 [verbose] > │ #endif │
00:11:10 #29983 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #29984 [verbose] > │ let v28 : Async<Async<int64>> = null |> unbox<Async<Async<int64>>> │
00:11:10 #29985 [verbose] > │ v28 │
00:11:10 #29986 [verbose] > │ #endif │
00:11:10 #29987 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #29988 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #29989 [verbose] > │ let v29 : Async<Async<int64>> = Async.StartChild (v15, 1000) │
00:11:10 #29990 [verbose] > │ v29 │
00:11:10 #29991 [verbose] > │ #endif │
00:11:10 #29992 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #29993 [verbose] > │ let v30 : Async<Async<int64>> = null |> unbox<Async<Async<int64>>> │
00:11:10 #29994 [verbose] > │ v30 │
00:11:10 #29995 [verbose] > │ #endif │
00:11:10 #29996 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #29997 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #29998 [verbose] > │ Unchecked.defaultof<Async<Async<int64>>> │
00:11:10 #29999 [verbose] > │ #endif │
00:11:10 #30000 [verbose] > │ |> fun x -> _v25 <- Some x │
00:11:10 #30001 [verbose] > │ let v31 : Async<Async<int64>> = _v25.Value │
00:11:10 #30002 [verbose] > │ let! v31 = v31 │
00:11:10 #30003 [verbose] > │ let v32 : Async<int64> = v31 │
00:11:10 #30004 [verbose] > │ let v33 : Async<Choice<int64, exn>> option = None │
00:11:10 #30005 [verbose] > │ let mutable _v33 = v33 │
00:11:10 #30006 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30007 [verbose] > │ let v34 : Async<Choice<int64, exn>> = null |> │
00:11:10 #30008 [verbose] > │ unbox<Async<Choice<int64, exn>>> │
00:11:10 #30009 [verbose] > │ v34 │
00:11:10 #30010 [verbose] > │ #endif │
00:11:10 #30011 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30012 [verbose] > │ let v35 : Async<Choice<int64, exn>> = null |> │
00:11:10 #30013 [verbose] > │ unbox<Async<Choice<int64, exn>>> │
00:11:10 #30014 [verbose] > │ v35 │
00:11:10 #30015 [verbose] > │ #endif │
00:11:10 #30016 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30017 [verbose] > │ let v36 : Async<Choice<int64, exn>> = null |> │
00:11:10 #30018 [verbose] > │ unbox<Async<Choice<int64, exn>>> │
00:11:10 #30019 [verbose] > │ v36 │
00:11:10 #30020 [verbose] > │ #endif │
00:11:10 #30021 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30022 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30023 [verbose] > │ let v37 : (Async<int64> -> Async<Choice<int64, exn>>) = Async.Catch │
00:11:10 #30024 [verbose] > │ let v38 : Async<Choice<int64, exn>> = v37 v32 │
00:11:10 #30025 [verbose] > │ v38 │
00:11:10 #30026 [verbose] > │ #endif │
00:11:10 #30027 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30028 [verbose] > │ let v39 : Async<Choice<int64, exn>> = null |> │
00:11:10 #30029 [verbose] > │ unbox<Async<Choice<int64, exn>>> │
00:11:10 #30030 [verbose] > │ v39 │
00:11:10 #30031 [verbose] > │ #endif │
00:11:10 #30032 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #30033 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #30034 [verbose] > │ Unchecked.defaultof<Async<Choice<int64, exn>>> │
00:11:10 #30035 [verbose] > │ #endif │
00:11:10 #30036 [verbose] > │ |> fun x -> _v33 <- Some x │
00:11:10 #30037 [verbose] > │ let v40 : Async<Choice<int64, exn>> = _v33.Value │
00:11:10 #30038 [verbose] > │ let v41 : Async<US6> option = None │
00:11:10 #30039 [verbose] > │ let mutable _v41 = v41 │
00:11:10 #30040 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30041 [verbose] > │ let v42 : Async<US6> = null |> unbox<Async<US6>> │
00:11:10 #30042 [verbose] > │ v42 │
00:11:10 #30043 [verbose] > │ #endif │
00:11:10 #30044 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30045 [verbose] > │ let v43 : Async<US6> = null |> unbox<Async<US6>> │
00:11:10 #30046 [verbose] > │ v43 │
00:11:10 #30047 [verbose] > │ #endif │
00:11:10 #30048 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30049 [verbose] > │ let v44 : Async<US6> = null |> unbox<Async<US6>> │
00:11:10 #30050 [verbose] > │ v44 │
00:11:10 #30051 [verbose] > │ #endif │
00:11:10 #30052 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30053 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30054 [verbose] > │ let v45 : Async<US6> option = None │
00:11:10 #30055 [verbose] > │ let mutable _v45 = v45 │
00:11:10 #30056 [verbose] > │ async { │
00:11:10 #30057 [verbose] > │ let! v40 = v40 │
00:11:10 #30058 [verbose] > │ let v46 : Choice<int64, exn> = v40 │
00:11:10 #30059 [verbose] > │ let v47 : US6 option = None │
00:11:10 #30060 [verbose] > │ let mutable _v47 = v47 │
00:11:10 #30061 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30062 [verbose] > │ let v48 : US6 = null |> unbox<US6> │
00:11:10 #30063 [verbose] > │ v48 │
00:11:10 #30064 [verbose] > │ #endif │
00:11:10 #30065 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30066 [verbose] > │ let v49 : US6 = null |> unbox<US6> │
00:11:10 #30067 [verbose] > │ v49 │
00:11:10 #30068 [verbose] > │ #endif │
00:11:10 #30069 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30070 [verbose] > │ let v50 : US6 = null |> unbox<US6> │
00:11:10 #30071 [verbose] > │ v50 │
00:11:10 #30072 [verbose] > │ #endif │
00:11:10 #30073 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30074 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30075 [verbose] > │ let v51 : (int64 -> US6) = closure25() │
00:11:10 #30076 [verbose] > │ let v52 : (exn -> US6) = closure26() │
00:11:10 #30077 [verbose] > │ let v53 : US6 = match v46 with Choice1Of2 x -> v51 x | Choice2Of2 x │
00:11:10 #30078 [verbose] > │ -> v52 x │
00:11:10 #30079 [verbose] > │ v53 │
00:11:10 #30080 [verbose] > │ #endif │
00:11:10 #30081 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30082 [verbose] > │ let v54 : US6 = null |> unbox<US6> │
00:11:10 #30083 [verbose] > │ v54 │
00:11:10 #30084 [verbose] > │ #endif │
00:11:10 #30085 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #30086 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #30087 [verbose] > │ Unchecked.defaultof<US6> │
00:11:10 #30088 [verbose] > │ #endif │
00:11:10 #30089 [verbose] > │ |> fun x -> _v47 <- Some x │
00:11:10 #30090 [verbose] > │ let v55 : US6 = _v47.Value │
00:11:10 #30091 [verbose] > │ return v55 │
00:11:10 #30092 [verbose] > │ } │
00:11:10 #30093 [verbose] > │ |> fun x -> _v45 <- Some x │
00:11:10 #30094 [verbose] > │ let v56 : Async<US6> = _v45 |> Option.get │
00:11:10 #30095 [verbose] > │ v56 │
00:11:10 #30096 [verbose] > │ #endif │
00:11:10 #30097 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30098 [verbose] > │ let v57 : Async<US6> = null |> unbox<Async<US6>> │
00:11:10 #30099 [verbose] > │ v57 │
00:11:10 #30100 [verbose] > │ #endif │
00:11:10 #30101 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #30102 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #30103 [verbose] > │ Unchecked.defaultof<Async<US6>> │
00:11:10 #30104 [verbose] > │ #endif │
00:11:10 #30105 [verbose] > │ |> fun x -> _v41 <- Some x │
00:11:10 #30106 [verbose] > │ let v58 : Async<US6> = _v41.Value │
00:11:10 #30107 [verbose] > │ let v59 : Async<US7> option = None │
00:11:10 #30108 [verbose] > │ let mutable _v59 = v59 │
00:11:10 #30109 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30110 [verbose] > │ let v60 : Async<US7> = null |> unbox<Async<US7>> │
00:11:10 #30111 [verbose] > │ v60 │
00:11:10 #30112 [verbose] > │ #endif │
00:11:10 #30113 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30114 [verbose] > │ let v61 : Async<US7> = null |> unbox<Async<US7>> │
00:11:10 #30115 [verbose] > │ v61 │
00:11:10 #30116 [verbose] > │ #endif │
00:11:10 #30117 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30118 [verbose] > │ let v62 : Async<US7> = null |> unbox<Async<US7>> │
00:11:10 #30119 [verbose] > │ v62 │
00:11:10 #30120 [verbose] > │ #endif │
00:11:10 #30121 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30122 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30123 [verbose] > │ let v63 : Async<US7> option = None │
00:11:10 #30124 [verbose] > │ let mutable _v63 = v63 │
00:11:10 #30125 [verbose] > │ async { │
00:11:10 #30126 [verbose] > │ let! v58 = v58 │
00:11:10 #30127 [verbose] > │ let v64 : US6 = v58 │
00:11:10 #30128 [verbose] > │ let v70 : US7 = │
00:11:10 #30129 [verbose] > │ match v64 with │
00:11:10 #30130 [verbose] > │ | US6_0(v65) -> (* Choice1Of2 *) │
00:11:10 #30131 [verbose] > │ US7_0(v65) │
00:11:10 #30132 [verbose] > │ | US6_1(v67) -> (* Choice2Of2 *) │
00:11:10 #30133 [verbose] > │ US7_1(v67) │
00:11:10 #30134 [verbose] > │ return v70 │
00:11:10 #30135 [verbose] > │ } │
00:11:10 #30136 [verbose] > │ |> fun x -> _v63 <- Some x │
00:11:10 #30137 [verbose] > │ let v71 : Async<US7> = _v63 |> Option.get │
00:11:10 #30138 [verbose] > │ v71 │
00:11:10 #30139 [verbose] > │ #endif │
00:11:10 #30140 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30141 [verbose] > │ let v72 : Async<US7> = null |> unbox<Async<US7>> │
00:11:10 #30142 [verbose] > │ v72 │
00:11:10 #30143 [verbose] > │ #endif │
00:11:10 #30144 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #30145 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #30146 [verbose] > │ Unchecked.defaultof<Async<US7>> │
00:11:10 #30147 [verbose] > │ #endif │
00:11:10 #30148 [verbose] > │ |> fun x -> _v59 <- Some x │
00:11:10 #30149 [verbose] > │ let v73 : Async<US7> = _v59.Value │
00:11:10 #30150 [verbose] > │ let v74 : Async<US5> option = None │
00:11:10 #30151 [verbose] > │ let mutable _v74 = v74 │
00:11:10 #30152 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30153 [verbose] > │ let v75 : Async<US5> = null |> unbox<Async<US5>> │
00:11:10 #30154 [verbose] > │ v75 │
00:11:10 #30155 [verbose] > │ #endif │
00:11:10 #30156 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30157 [verbose] > │ let v76 : Async<US5> = null |> unbox<Async<US5>> │
00:11:10 #30158 [verbose] > │ v76 │
00:11:10 #30159 [verbose] > │ #endif │
00:11:10 #30160 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30161 [verbose] > │ let v77 : Async<US5> = null |> unbox<Async<US5>> │
00:11:10 #30162 [verbose] > │ v77 │
00:11:10 #30163 [verbose] > │ #endif │
00:11:10 #30164 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30165 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30166 [verbose] > │ let v78 : Async<US5> option = None │
00:11:10 #30167 [verbose] > │ let mutable _v78 = v78 │
00:11:10 #30168 [verbose] > │ async { │
00:11:10 #30169 [verbose] > │ let! v73 = v73 │
00:11:10 #30170 [verbose] > │ let v79 : US7 = v73 │
00:11:10 #30171 [verbose] > │ let v103 : US5 = │
00:11:10 #30172 [verbose] > │ match v79 with │
00:11:10 #30173 [verbose] > │ | US7_1(v82) -> (* Error *) │
00:11:10 #30174 [verbose] > │ let v83 : string = $"%A{v82}" │
00:11:10 #30175 [verbose] > │ let v84 : string = "System.TimeoutException" │
00:11:10 #30176 [verbose] > │ let v85 : bool = v83.Contains v84 │
00:11:10 #30177 [verbose] > │ if v85 then │
00:11:10 #30178 [verbose] > │ let v86 : US3 = US3_1 │
00:11:10 #30179 [verbose] > │ let v87 : (unit -> string) = closure27() │
00:11:10 #30180 [verbose] > │ let v88 : (unit -> string) = closure28() │
00:11:10 #30181 [verbose] > │ method7(v86, v87, v88) │
00:11:10 #30182 [verbose] > │ US5_1 │
00:11:10 #30183 [verbose] > │ else │
00:11:10 #30184 [verbose] > │ let v90 : string option = None │
00:11:10 #30185 [verbose] > │ let mutable _v90 = v90 │
00:11:10 #30186 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30187 [verbose] > │ let v91 : string = $"%A{v82}" │
00:11:10 #30188 [verbose] > │ v91 │
00:11:10 #30189 [verbose] > │ #endif │
00:11:10 #30190 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30191 [verbose] > │ let v92 : string = $"%A{v82}" │
00:11:10 #30192 [verbose] > │ v92 │
00:11:10 #30193 [verbose] > │ #endif │
00:11:10 #30194 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30195 [verbose] > │ let v93 : string = $"%A{v82}" │
00:11:10 #30196 [verbose] > │ v93 │
00:11:10 #30197 [verbose] > │ #endif │
00:11:10 #30198 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30199 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30200 [verbose] > │ let v94 : string = $"{v82.GetType ()}: {v82.Message}" │
00:11:10 #30201 [verbose] > │ v94 │
00:11:10 #30202 [verbose] > │ #endif │
00:11:10 #30203 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30204 [verbose] > │ let v95 : string = $"%A{v82}" │
00:11:10 #30205 [verbose] > │ v95 │
00:11:10 #30206 [verbose] > │ #endif │
00:11:10 #30207 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #30208 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #30209 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #30210 [verbose] > │ #endif │
00:11:10 #30211 [verbose] > │ |> fun x -> _v90 <- Some x │
00:11:10 #30212 [verbose] > │ let v96 : string = _v90.Value │
00:11:10 #30213 [verbose] > │ let v97 : US3 = US3_4 │
00:11:10 #30214 [verbose] > │ let v98 : (unit -> string) = closure29(v96) │
00:11:10 #30215 [verbose] > │ let v99 : (unit -> string) = closure28() │
00:11:10 #30216 [verbose] > │ method7(v97, v98, v99) │
00:11:10 #30217 [verbose] > │ US5_1 │
00:11:10 #30218 [verbose] > │ | US7_0(v80) -> (* Ok *) │
00:11:10 #30219 [verbose] > │ US5_0(v80) │
00:11:10 #30220 [verbose] > │ return v103 │
00:11:10 #30221 [verbose] > │ } │
00:11:10 #30222 [verbose] > │ |> fun x -> _v78 <- Some x │
00:11:10 #30223 [verbose] > │ let v104 : Async<US5> = _v78 |> Option.get │
00:11:10 #30224 [verbose] > │ v104 │
00:11:10 #30225 [verbose] > │ #endif │
00:11:10 #30226 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30227 [verbose] > │ let v105 : Async<US5> = null |> unbox<Async<US5>> │
00:11:10 #30228 [verbose] > │ v105 │
00:11:10 #30229 [verbose] > │ #endif │
00:11:10 #30230 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #30231 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #30232 [verbose] > │ Unchecked.defaultof<Async<US5>> │
00:11:10 #30233 [verbose] > │ #endif │
00:11:10 #30234 [verbose] > │ |> fun x -> _v74 <- Some x │
00:11:10 #30235 [verbose] > │ let v106 : Async<US5> = _v74.Value │
00:11:10 #30236 [verbose] > │ return! v106 │
00:11:10 #30237 [verbose] > │ } │
00:11:10 #30238 [verbose] > │ |> fun x -> _v24 <- Some x │
00:11:10 #30239 [verbose] > │ let v107 : Async<US5> = _v24 |> Option.get │
00:11:10 #30240 [verbose] > │ v107 │
00:11:10 #30241 [verbose] > │ #endif │
00:11:10 #30242 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30243 [verbose] > │ let v108 : Async<US5> = null |> unbox<Async<US5>> │
00:11:10 #30244 [verbose] > │ v108 │
00:11:10 #30245 [verbose] > │ #endif │
00:11:10 #30246 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #30247 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #30248 [verbose] > │ Unchecked.defaultof<Async<US5>> │
00:11:10 #30249 [verbose] > │ #endif │
00:11:10 #30250 [verbose] > │ |> fun x -> _v20 <- Some x │
00:11:10 #30251 [verbose] > │ let v109 : Async<US5> = _v20.Value │
00:11:10 #30252 [verbose] > │ v109 │
00:11:10 #30253 [verbose] > │ #endif │
00:11:10 #30254 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30255 [verbose] > │ let v110 : Async<US5> = null |> unbox<Async<US5>> │
00:11:10 #30256 [verbose] > │ v110 │
00:11:10 #30257 [verbose] > │ #endif │
00:11:10 #30258 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #30259 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #30260 [verbose] > │ Unchecked.defaultof<Async<US5>> │
00:11:10 #30261 [verbose] > │ #endif │
00:11:10 #30262 [verbose] > │ |> fun x -> _v16 <- Some x │
00:11:10 #30263 [verbose] > │ let v111 : Async<US5> = _v16.Value │
00:11:10 #30264 [verbose] > │ let v112 : Async<unit> option = None │
00:11:10 #30265 [verbose] > │ let mutable _v112 = v112 │
00:11:10 #30266 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30267 [verbose] > │ let v113 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #30268 [verbose] > │ v113 │
00:11:10 #30269 [verbose] > │ #endif │
00:11:10 #30270 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30271 [verbose] > │ let v114 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #30272 [verbose] > │ v114 │
00:11:10 #30273 [verbose] > │ #endif │
00:11:10 #30274 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30275 [verbose] > │ let v115 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #30276 [verbose] > │ v115 │
00:11:10 #30277 [verbose] > │ #endif │
00:11:10 #30278 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30279 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30280 [verbose] > │ let v116 : (Async<US5> -> Async<unit>) = Async.Ignore │
00:11:10 #30281 [verbose] > │ let v117 : Async<unit> = v116 v111 │
00:11:10 #30282 [verbose] > │ v117 │
00:11:10 #30283 [verbose] > │ #endif │
00:11:10 #30284 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30285 [verbose] > │ let v118 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #30286 [verbose] > │ v118 │
00:11:10 #30287 [verbose] > │ #endif │
00:11:10 #30288 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #30289 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #30290 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:11:10 #30291 [verbose] > │ #endif │
00:11:10 #30292 [verbose] > │ |> fun x -> _v112 <- Some x │
00:11:10 #30293 [verbose] > │ let v119 : Async<unit> = _v112.Value │
00:11:10 #30294 [verbose] > │ do! v119 │
00:11:10 #30295 [verbose] > │ () │
00:11:10 #30296 [verbose] > │ let v120 : Async<string> option = None │
00:11:10 #30297 [verbose] > │ let mutable _v120 = v120 │
00:11:10 #30298 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30299 [verbose] > │ let v121 : Async<string> = null |> unbox<Async<string>> │
00:11:10 #30300 [verbose] > │ v121 │
00:11:10 #30301 [verbose] > │ #endif │
00:11:10 #30302 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30303 [verbose] > │ let v122 : Async<string> = null |> unbox<Async<string>> │
00:11:10 #30304 [verbose] > │ v122 │
00:11:10 #30305 [verbose] > │ #endif │
00:11:10 #30306 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30307 [verbose] > │ let v123 : Async<string> = null |> unbox<Async<string>> │
00:11:10 #30308 [verbose] > │ v123 │
00:11:10 #30309 [verbose] > │ #endif │
00:11:10 #30310 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30311 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30312 [verbose] > │ let v124 : (string -> System.Threading.Tasks.Task<string>) = │
00:11:10 #30313 [verbose] > │ System.IO.File.ReadAllTextAsync │
00:11:10 #30314 [verbose] > │ let v125 : System.Threading.Tasks.Task<string> = v124 v0 │
00:11:10 #30315 [verbose] > │ let v126 : Async<string> option = None │
00:11:10 #30316 [verbose] > │ let mutable _v126 = v126 │
00:11:10 #30317 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30318 [verbose] > │ let v127 : Async<string> = null |> unbox<Async<string>> │
00:11:10 #30319 [verbose] > │ v127 │
00:11:10 #30320 [verbose] > │ #endif │
00:11:10 #30321 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30322 [verbose] > │ let v128 : Async<string> = null |> unbox<Async<string>> │
00:11:10 #30323 [verbose] > │ v128 │
00:11:10 #30324 [verbose] > │ #endif │
00:11:10 #30325 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30326 [verbose] > │ let v129 : Async<string> = null |> unbox<Async<string>> │
00:11:10 #30327 [verbose] > │ v129 │
00:11:10 #30328 [verbose] > │ #endif │
00:11:10 #30329 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30330 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30331 [verbose] > │ let v130 : (System.Threading.Tasks.Task<string> -> Async<string>) = │
00:11:10 #30332 [verbose] > │ Async.AwaitTask │
00:11:10 #30333 [verbose] > │ let v131 : Async<string> = v130 v125 │
00:11:10 #30334 [verbose] > │ v131 │
00:11:10 #30335 [verbose] > │ #endif │
00:11:10 #30336 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30337 [verbose] > │ let v132 : Async<string> = null |> unbox<Async<string>> │
00:11:10 #30338 [verbose] > │ v132 │
00:11:10 #30339 [verbose] > │ #endif │
00:11:10 #30340 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30341 [verbose] > │ Unchecked.defaultof<Async<string>> │
00:11:10 #30342 [verbose] > │ #endif │
00:11:10 #30343 [verbose] > │ |> fun x -> _v126 <- Some x │
00:11:10 #30344 [verbose] > │ let v133 : Async<string> = _v126.Value │
00:11:10 #30345 [verbose] > │ v133 │
00:11:10 #30346 [verbose] > │ #endif │
00:11:10 #30347 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30348 [verbose] > │ let v134 : Async<string> = null |> unbox<Async<string>> │
00:11:10 #30349 [verbose] > │ v134 │
00:11:10 #30350 [verbose] > │ #endif │
00:11:10 #30351 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30352 [verbose] > │ Unchecked.defaultof<Async<string>> │
00:11:10 #30353 [verbose] > │ #endif │
00:11:10 #30354 [verbose] > │ |> fun x -> _v120 <- Some x │
00:11:10 #30355 [verbose] > │ let v135 : Async<string> = _v120.Value │
00:11:10 #30356 [verbose] > │ let v136 : Async<string option> option = None │
00:11:10 #30357 [verbose] > │ let mutable _v136 = v136 │
00:11:10 #30358 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30359 [verbose] > │ let v137 : Async<string option> = null |> unbox<Async<string option>> │
00:11:10 #30360 [verbose] > │ v137 │
00:11:10 #30361 [verbose] > │ #endif │
00:11:10 #30362 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30363 [verbose] > │ let v138 : Async<string option> = null |> unbox<Async<string option>> │
00:11:10 #30364 [verbose] > │ v138 │
00:11:10 #30365 [verbose] > │ #endif │
00:11:10 #30366 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30367 [verbose] > │ let v139 : Async<string option> = null |> unbox<Async<string option>> │
00:11:10 #30368 [verbose] > │ v139 │
00:11:10 #30369 [verbose] > │ #endif │
00:11:10 #30370 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30371 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30372 [verbose] > │ let v140 : Async<string option> option = None │
00:11:10 #30373 [verbose] > │ let mutable _v140 = v140 │
00:11:10 #30374 [verbose] > │ async { │
00:11:10 #30375 [verbose] > │ let! v135 = v135 │
00:11:10 #30376 [verbose] > │ let v141 : string = v135 │
00:11:10 #30377 [verbose] > │ let v142 : string option = Some v141 │
00:11:10 #30378 [verbose] > │ return v142 │
00:11:10 #30379 [verbose] > │ } │
00:11:10 #30380 [verbose] > │ |> fun x -> _v140 <- Some x │
00:11:10 #30381 [verbose] > │ let v143 : Async<string option> = _v140 |> Option.get │
00:11:10 #30382 [verbose] > │ v143 │
00:11:10 #30383 [verbose] > │ #endif │
00:11:10 #30384 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30385 [verbose] > │ let v144 : Async<string option> = null |> unbox<Async<string option>> │
00:11:10 #30386 [verbose] > │ v144 │
00:11:10 #30387 [verbose] > │ #endif │
00:11:10 #30388 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30389 [verbose] > │ Unchecked.defaultof<Async<string option>> │
00:11:10 #30390 [verbose] > │ #endif │
00:11:10 #30391 [verbose] > │ |> fun x -> _v136 <- Some x │
00:11:10 #30392 [verbose] > │ let v145 : Async<string option> = _v136.Value │
00:11:10 #30393 [verbose] > │ return! v145 │
00:11:10 #30394 [verbose] > │ with ex -> │
00:11:10 #30395 [verbose] > │ let v146 : exn = ex │
00:11:10 #30396 [verbose] > │ let v147 : bool = v1 = 0L │
00:11:10 #30397 [verbose] > │ let v148 : bool = v147 <> true │
00:11:10 #30398 [verbose] > │ if v148 then │
00:11:10 #30399 [verbose] > │ let v149 : string option = None │
00:11:10 #30400 [verbose] > │ let mutable _v149 = v149 │
00:11:10 #30401 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30402 [verbose] > │ let v150 : string = $"%A{v146}" │
00:11:10 #30403 [verbose] > │ v150 │
00:11:10 #30404 [verbose] > │ #endif │
00:11:10 #30405 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30406 [verbose] > │ let v151 : string = $"%A{v146}" │
00:11:10 #30407 [verbose] > │ v151 │
00:11:10 #30408 [verbose] > │ #endif │
00:11:10 #30409 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30410 [verbose] > │ let v152 : string = $"%A{v146}" │
00:11:10 #30411 [verbose] > │ v152 │
00:11:10 #30412 [verbose] > │ #endif │
00:11:10 #30413 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30414 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30415 [verbose] > │ let v153 : string = $"{v146.GetType ()}: {v146.Message}" │
00:11:10 #30416 [verbose] > │ v153 │
00:11:10 #30417 [verbose] > │ #endif │
00:11:10 #30418 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30419 [verbose] > │ let v154 : string = $"%A{v146}" │
00:11:10 #30420 [verbose] > │ v154 │
00:11:10 #30421 [verbose] > │ #endif │
00:11:10 #30422 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #30423 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #30424 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #30425 [verbose] > │ #endif │
00:11:10 #30426 [verbose] > │ |> fun x -> _v149 <- Some x │
00:11:10 #30427 [verbose] > │ let v155 : string = _v149.Value │
00:11:10 #30428 [verbose] > │ let v156 : US3 = US3_1 │
00:11:10 #30429 [verbose] > │ let v157 : (unit -> string) = closure30() │
00:11:10 #30430 [verbose] > │ let v158 : (unit -> string) = closure31(v1, v155) │
00:11:10 #30431 [verbose] > │ method7(v156, v157, v158) │
00:11:10 #30432 [verbose] > │ let v159 : string option = None │
00:11:10 #30433 [verbose] > │ return v159 │
00:11:10 #30434 [verbose] > │ (* │
00:11:10 #30435 [verbose] > │ () │
00:11:10 #30436 [verbose] > │ else │
00:11:10 #30437 [verbose] > │ *) else │
00:11:10 #30438 [verbose] > │ let v160 : int64 = v1 + 1L │
00:11:10 #30439 [verbose] > │ let v161 : Async<string option> = method14(v0, v160) │
00:11:10 #30440 [verbose] > │ return! v161 │
00:11:10 #30441 [verbose] > │ (* │
00:11:10 #30442 [verbose] > │ () │
00:11:10 #30443 [verbose] > │ *) │
00:11:10 #30444 [verbose] > │ (* │
00:11:10 #30445 [verbose] > │ let v162 : string option = *) │
00:11:10 #30446 [verbose] > │ } │
00:11:10 #30447 [verbose] > │ |> fun x -> _v6 <- Some x │
00:11:10 #30448 [verbose] > │ let v163 : Async<string option> = _v6 |> Option.get │
00:11:10 #30449 [verbose] > │ v163 │
00:11:10 #30450 [verbose] > │ #endif │
00:11:10 #30451 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30452 [verbose] > │ let v164 : Async<string option> = null |> unbox<Async<string option>> │
00:11:10 #30453 [verbose] > │ v164 │
00:11:10 #30454 [verbose] > │ #endif │
00:11:10 #30455 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30456 [verbose] > │ Unchecked.defaultof<Async<string option>> │
00:11:10 #30457 [verbose] > │ #endif │
00:11:10 #30458 [verbose] > │ |> fun x -> _v2 <- Some x │
00:11:10 #30459 [verbose] > │ let v165 : Async<string option> = _v2.Value │
00:11:10 #30460 [verbose] > │ v165 │
00:11:10 #30461 [verbose] > │ and closure24 () (v0 : string) : Async<string option> = │
00:11:10 #30462 [verbose] > │ let v1 : Async<string option> option = None │
00:11:10 #30463 [verbose] > │ let mutable _v1 = v1 │
00:11:10 #30464 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30465 [verbose] > │ let v2 : Async<string option> = null |> unbox<Async<string option>> │
00:11:10 #30466 [verbose] > │ v2 │
00:11:10 #30467 [verbose] > │ #endif │
00:11:10 #30468 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30469 [verbose] > │ let v3 : Async<string option> = null |> unbox<Async<string option>> │
00:11:10 #30470 [verbose] > │ v3 │
00:11:10 #30471 [verbose] > │ #endif │
00:11:10 #30472 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30473 [verbose] > │ let v4 : Async<string option> = null |> unbox<Async<string option>> │
00:11:10 #30474 [verbose] > │ v4 │
00:11:10 #30475 [verbose] > │ #endif │
00:11:10 #30476 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30477 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30478 [verbose] > │ let v5 : int64 = 0L │
00:11:10 #30479 [verbose] > │ let v6 : Async<string option> = method14(v0, v5) │
00:11:10 #30480 [verbose] > │ v6 │
00:11:10 #30481 [verbose] > │ #endif │
00:11:10 #30482 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30483 [verbose] > │ let v7 : Async<string option> = null |> unbox<Async<string option>> │
00:11:10 #30484 [verbose] > │ v7 │
00:11:10 #30485 [verbose] > │ #endif │
00:11:10 #30486 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30487 [verbose] > │ Unchecked.defaultof<Async<string option>> │
00:11:10 #30488 [verbose] > │ #endif │
00:11:10 #30489 [verbose] > │ |> fun x -> _v1 <- Some x │
00:11:10 #30490 [verbose] > │ let v8 : Async<string option> = _v1.Value │
00:11:10 #30491 [verbose] > │ v8 │
00:11:10 #30492 [verbose] > │ and closure33 () () : string = │
00:11:10 #30493 [verbose] > │ let v0 : string option = None │
00:11:10 #30494 [verbose] > │ let mutable _v0 = v0 │
00:11:10 #30495 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30496 [verbose] > │ let v1 : string = null |> unbox<string> │
00:11:10 #30497 [verbose] > │ v1 │
00:11:10 #30498 [verbose] > │ #endif │
00:11:10 #30499 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30500 [verbose] > │ let v2 : string = null |> unbox<string> │
00:11:10 #30501 [verbose] > │ v2 │
00:11:10 #30502 [verbose] > │ #endif │
00:11:10 #30503 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30504 [verbose] > │ let v3 : string = null |> unbox<string> │
00:11:10 #30505 [verbose] > │ v3 │
00:11:10 #30506 [verbose] > │ #endif │
00:11:10 #30507 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30508 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30509 [verbose] > │ let v4 : string = │
00:11:10 #30510 [verbose] > │ System.Reflection.Assembly.GetEntryAssembly().GetName().Name │
00:11:10 #30511 [verbose] > │ v4 │
00:11:10 #30512 [verbose] > │ #endif │
00:11:10 #30513 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30514 [verbose] > │ let v5 : string = null |> unbox<string> │
00:11:10 #30515 [verbose] > │ v5 │
00:11:10 #30516 [verbose] > │ #endif │
00:11:10 #30517 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30518 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #30519 [verbose] > │ #endif │
00:11:10 #30520 [verbose] > │ |> fun x -> _v0 <- Some x │
00:11:10 #30521 [verbose] > │ let v6 : string = _v0.Value │
00:11:10 #30522 [verbose] > │ v6 │
00:11:10 #30523 [verbose] > │ and closure32 () () : string = │
00:11:10 #30524 [verbose] > │ let v0 : string option = None │
00:11:10 #30525 [verbose] > │ let mutable _v0 = v0 │
00:11:10 #30526 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30527 [verbose] > │ let v1 : string = null |> unbox<string> │
00:11:10 #30528 [verbose] > │ v1 │
00:11:10 #30529 [verbose] > │ #endif │
00:11:10 #30530 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30531 [verbose] > │ let v2 : string = null |> unbox<string> │
00:11:10 #30532 [verbose] > │ v2 │
00:11:10 #30533 [verbose] > │ #endif │
00:11:10 #30534 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30535 [verbose] > │ let v3 : string = null |> unbox<string> │
00:11:10 #30536 [verbose] > │ v3 │
00:11:10 #30537 [verbose] > │ #endif │
00:11:10 #30538 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30539 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30540 [verbose] > │ let v4 : (unit -> string) = System.IO.Path.GetTempPath │
00:11:10 #30541 [verbose] > │ let v5 : string = v4 () │
00:11:10 #30542 [verbose] > │ let v6 : (unit -> string) = closure33() │
00:11:10 #30543 [verbose] > │ let v7 : string = $"!{v6 ()}" │
00:11:10 #30544 [verbose] > │ let v8 : string option = None │
00:11:10 #30545 [verbose] > │ let mutable _v8 = v8 │
00:11:10 #30546 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30547 [verbose] > │ let v9 : string = method5(v5) │
00:11:10 #30548 [verbose] > │ let v10 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #30549 [verbose] > │ let v11 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v9 v10 │
00:11:10 #30550 [verbose] > │ let v12 : string = "String::from($0)" │
00:11:10 #30551 [verbose] > │ let v13 : std_string_String = Fable.Core.RustInterop.emitRustExpr v11 │
00:11:10 #30552 [verbose] > │ v12 │
00:11:10 #30553 [verbose] > │ let v14 : string = "std::path::PathBuf::from($0)" │
00:11:10 #30554 [verbose] > │ let v15 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v13 v14 │
00:11:10 #30555 [verbose] > │ let v16 : string = method5(v7) │
00:11:10 #30556 [verbose] > │ let v17 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #30557 [verbose] > │ let v18 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v16 v17 │
00:11:10 #30558 [verbose] > │ let v19 : string = "String::from($0)" │
00:11:10 #30559 [verbose] > │ let v20 : std_string_String = Fable.Core.RustInterop.emitRustExpr v18 │
00:11:10 #30560 [verbose] > │ v19 │
00:11:10 #30561 [verbose] > │ let v21 : string = "$0.join($1)" │
00:11:10 #30562 [verbose] > │ let v22 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:11:10 #30563 [verbose] > │ (v15, v20) v21 │
00:11:10 #30564 [verbose] > │ let v23 : string = "$0.display().to_string()" │
00:11:10 #30565 [verbose] > │ let v24 : std_string_String = Fable.Core.RustInterop.emitRustExpr v22 │
00:11:10 #30566 [verbose] > │ v23 │
00:11:10 #30567 [verbose] > │ let v25 : string = "fable_library_rust::String_::fromString($0)" │
00:11:10 #30568 [verbose] > │ let v26 : string = Fable.Core.RustInterop.emitRustExpr v24 v25 │
00:11:10 #30569 [verbose] > │ v26 │
00:11:10 #30570 [verbose] > │ #endif │
00:11:10 #30571 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30572 [verbose] > │ let v27 : string = null |> unbox<string> │
00:11:10 #30573 [verbose] > │ v27 │
00:11:10 #30574 [verbose] > │ #endif │
00:11:10 #30575 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30576 [verbose] > │ let v28 : string = null |> unbox<string> │
00:11:10 #30577 [verbose] > │ v28 │
00:11:10 #30578 [verbose] > │ #endif │
00:11:10 #30579 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30580 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30581 [verbose] > │ let v29 : string = System.IO.Path.Combine (v5, v7) │
00:11:10 #30582 [verbose] > │ v29 │
00:11:10 #30583 [verbose] > │ #endif │
00:11:10 #30584 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30585 [verbose] > │ let v30 : string = "path" │
00:11:10 #30586 [verbose] > │ let v31 : IPathJoin = Fable.Core.JsInterop.importAll v30 │
00:11:10 #30587 [verbose] > │ let v32 : string = "v31.join($0, $1)" │
00:11:10 #30588 [verbose] > │ let v33 : string = Fable.Core.JsInterop.emitJsExpr struct (v5, v7) v32 │
00:11:10 #30589 [verbose] > │ v33 │
00:11:10 #30590 [verbose] > │ #endif │
00:11:10 #30591 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30592 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #30593 [verbose] > │ #endif │
00:11:10 #30594 [verbose] > │ |> fun x -> _v8 <- Some x │
00:11:10 #30595 [verbose] > │ let v34 : string = _v8.Value │
00:11:10 #30596 [verbose] > │ let v35 : System.DateTime = System.DateTime.Now │
00:11:10 #30597 [verbose] > │ let v36 : System.Guid = System.Guid.NewGuid () │
00:11:10 #30598 [verbose] > │ let v37 : (System.Guid -> string) = _.ToString() │
00:11:10 #30599 [verbose] > │ let v38 : string = v37 v36 │
00:11:10 #30600 [verbose] > │ let v39 : string = v35.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:11:10 #30601 [verbose] > │ let v40 : System.Guid = System.Guid $"{v39}{v38.[v39.Length..]}" │
00:11:10 #30602 [verbose] > │ let v41 : (System.Guid -> string) = _.ToString() │
00:11:10 #30603 [verbose] > │ let v42 : string = v41 v40 │
00:11:10 #30604 [verbose] > │ let v43 : string option = None │
00:11:10 #30605 [verbose] > │ let mutable _v43 = v43 │
00:11:10 #30606 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30607 [verbose] > │ let v44 : string = method5(v34) │
00:11:10 #30608 [verbose] > │ let v45 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #30609 [verbose] > │ let v46 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v44 v45 │
00:11:10 #30610 [verbose] > │ let v47 : string = "String::from($0)" │
00:11:10 #30611 [verbose] > │ let v48 : std_string_String = Fable.Core.RustInterop.emitRustExpr v46 │
00:11:10 #30612 [verbose] > │ v47 │
00:11:10 #30613 [verbose] > │ let v49 : string = "std::path::PathBuf::from($0)" │
00:11:10 #30614 [verbose] > │ let v50 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v48 v49 │
00:11:10 #30615 [verbose] > │ let v51 : string = method5(v42) │
00:11:10 #30616 [verbose] > │ let v52 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #30617 [verbose] > │ let v53 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v51 v52 │
00:11:10 #30618 [verbose] > │ let v54 : string = "String::from($0)" │
00:11:10 #30619 [verbose] > │ let v55 : std_string_String = Fable.Core.RustInterop.emitRustExpr v53 │
00:11:10 #30620 [verbose] > │ v54 │
00:11:10 #30621 [verbose] > │ let v56 : string = "$0.join($1)" │
00:11:10 #30622 [verbose] > │ let v57 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:11:10 #30623 [verbose] > │ (v50, v55) v56 │
00:11:10 #30624 [verbose] > │ let v58 : string = "$0.display().to_string()" │
00:11:10 #30625 [verbose] > │ let v59 : std_string_String = Fable.Core.RustInterop.emitRustExpr v57 │
00:11:10 #30626 [verbose] > │ v58 │
00:11:10 #30627 [verbose] > │ let v60 : string = "fable_library_rust::String_::fromString($0)" │
00:11:10 #30628 [verbose] > │ let v61 : string = Fable.Core.RustInterop.emitRustExpr v59 v60 │
00:11:10 #30629 [verbose] > │ v61 │
00:11:10 #30630 [verbose] > │ #endif │
00:11:10 #30631 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30632 [verbose] > │ let v62 : string = null |> unbox<string> │
00:11:10 #30633 [verbose] > │ v62 │
00:11:10 #30634 [verbose] > │ #endif │
00:11:10 #30635 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30636 [verbose] > │ let v63 : string = null |> unbox<string> │
00:11:10 #30637 [verbose] > │ v63 │
00:11:10 #30638 [verbose] > │ #endif │
00:11:10 #30639 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30640 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30641 [verbose] > │ let v64 : string = System.IO.Path.Combine (v34, v42) │
00:11:10 #30642 [verbose] > │ v64 │
00:11:10 #30643 [verbose] > │ #endif │
00:11:10 #30644 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30645 [verbose] > │ let v65 : IPathJoin = Fable.Core.JsInterop.importAll v30 │
00:11:10 #30646 [verbose] > │ let v66 : string = "v65.join($0, $1)" │
00:11:10 #30647 [verbose] > │ let v67 : string = Fable.Core.JsInterop.emitJsExpr struct (v34, v42) v66 │
00:11:10 #30648 [verbose] > │ v67 │
00:11:10 #30649 [verbose] > │ #endif │
00:11:10 #30650 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30651 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #30652 [verbose] > │ #endif │
00:11:10 #30653 [verbose] > │ |> fun x -> _v43 <- Some x │
00:11:10 #30654 [verbose] > │ let v68 : string = _v43.Value │
00:11:10 #30655 [verbose] > │ v68 │
00:11:10 #30656 [verbose] > │ #endif │
00:11:10 #30657 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30658 [verbose] > │ let v69 : string = null |> unbox<string> │
00:11:10 #30659 [verbose] > │ v69 │
00:11:10 #30660 [verbose] > │ #endif │
00:11:10 #30661 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30662 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #30663 [verbose] > │ #endif │
00:11:10 #30664 [verbose] > │ |> fun x -> _v0 <- Some x │
00:11:10 #30665 [verbose] > │ let v70 : string = _v0.Value │
00:11:10 #30666 [verbose] > │ v70 │
00:11:10 #30667 [verbose] > │ and closure35 (v0 : string, v1 : string) () : string = │
00:11:10 #30668 [verbose] > │ let v2 : (unit -> string) = closure3() │
00:11:10 #30669 [verbose] > │ let v3 : string = $"temp_folder: {v0} / result: {v1} {v2 ()}" │
00:11:10 #30670 [verbose] > │ v3 │
00:11:10 #30671 [verbose] > │ and closure36 (v0 : string) () : unit = │
00:11:10 #30672 [verbose] > │ let v1 : Async<int64> option = None │
00:11:10 #30673 [verbose] > │ let mutable _v1 = v1 │
00:11:10 #30674 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30675 [verbose] > │ let v2 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #30676 [verbose] > │ v2 │
00:11:10 #30677 [verbose] > │ #endif │
00:11:10 #30678 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30679 [verbose] > │ let v3 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #30680 [verbose] > │ v3 │
00:11:10 #30681 [verbose] > │ #endif │
00:11:10 #30682 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30683 [verbose] > │ let v4 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #30684 [verbose] > │ v4 │
00:11:10 #30685 [verbose] > │ #endif │
00:11:10 #30686 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30687 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30688 [verbose] > │ let v5 : int64 = 0L │
00:11:10 #30689 [verbose] > │ let v6 : Async<int64> = method0(v0, v5) │
00:11:10 #30690 [verbose] > │ v6 │
00:11:10 #30691 [verbose] > │ #endif │
00:11:10 #30692 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30693 [verbose] > │ let v7 : Async<int64> = null |> unbox<Async<int64>> │
00:11:10 #30694 [verbose] > │ v7 │
00:11:10 #30695 [verbose] > │ #endif │
00:11:10 #30696 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30697 [verbose] > │ Unchecked.defaultof<Async<int64>> │
00:11:10 #30698 [verbose] > │ #endif │
00:11:10 #30699 [verbose] > │ |> fun x -> _v1 <- Some x │
00:11:10 #30700 [verbose] > │ let v8 : Async<int64> = _v1.Value │
00:11:10 #30701 [verbose] > │ let v9 : Async<unit> option = None │
00:11:10 #30702 [verbose] > │ let mutable _v9 = v9 │
00:11:10 #30703 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30704 [verbose] > │ let v10 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #30705 [verbose] > │ v10 │
00:11:10 #30706 [verbose] > │ #endif │
00:11:10 #30707 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30708 [verbose] > │ let v11 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #30709 [verbose] > │ v11 │
00:11:10 #30710 [verbose] > │ #endif │
00:11:10 #30711 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30712 [verbose] > │ let v12 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #30713 [verbose] > │ v12 │
00:11:10 #30714 [verbose] > │ #endif │
00:11:10 #30715 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30716 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30717 [verbose] > │ let v13 : (Async<int64> -> Async<unit>) = Async.Ignore │
00:11:10 #30718 [verbose] > │ let v14 : Async<unit> = v13 v8 │
00:11:10 #30719 [verbose] > │ v14 │
00:11:10 #30720 [verbose] > │ #endif │
00:11:10 #30721 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30722 [verbose] > │ let v15 : Async<unit> = null |> unbox<Async<unit>> │
00:11:10 #30723 [verbose] > │ v15 │
00:11:10 #30724 [verbose] > │ #endif │
00:11:10 #30725 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30726 [verbose] > │ Unchecked.defaultof<Async<unit>> │
00:11:10 #30727 [verbose] > │ #endif │
00:11:10 #30728 [verbose] > │ |> fun x -> _v9 <- Some x │
00:11:10 #30729 [verbose] > │ let v16 : Async<unit> = _v9.Value │
00:11:10 #30730 [verbose] > │ let v17 : unit option = None │
00:11:10 #30731 [verbose] > │ let mutable _v17 = v17 │
00:11:10 #30732 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30733 [verbose] > │ null |> unbox<unit> │
00:11:10 #30734 [verbose] > │ () │
00:11:10 #30735 [verbose] > │ #endif │
00:11:10 #30736 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30737 [verbose] > │ null |> unbox<unit> │
00:11:10 #30738 [verbose] > │ () │
00:11:10 #30739 [verbose] > │ #endif │
00:11:10 #30740 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30741 [verbose] > │ null |> unbox<unit> │
00:11:10 #30742 [verbose] > │ () │
00:11:10 #30743 [verbose] > │ #endif │
00:11:10 #30744 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30745 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30746 [verbose] > │ let v18 : (Async<unit> -> unit) = Async.RunSynchronously │
00:11:10 #30747 [verbose] > │ v18 v16 │
00:11:10 #30748 [verbose] > │ () │
00:11:10 #30749 [verbose] > │ #endif │
00:11:10 #30750 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30751 [verbose] > │ null |> unbox<unit> │
00:11:10 #30752 [verbose] > │ () │
00:11:10 #30753 [verbose] > │ #endif │
00:11:10 #30754 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30755 [verbose] > │ Unchecked.defaultof<unit> │
00:11:10 #30756 [verbose] > │ #endif │
00:11:10 #30757 [verbose] > │ |> fun x -> _v17 <- Some x │
00:11:10 #30758 [verbose] > │ _v17.Value │
00:11:10 #30759 [verbose] > │ () │
00:11:10 #30760 [verbose] > │ and closure34 () () : struct (string * System.IDisposable) = │
00:11:10 #30761 [verbose] > │ let v0 : struct (string * System.IDisposable) option = None │
00:11:10 #30762 [verbose] > │ let mutable _v0 = v0 │
00:11:10 #30763 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30764 [verbose] > │ let struct (v1 : string, v2 : System.IDisposable) = null |> unbox<struct │
00:11:10 #30765 [verbose] > │ (string * System.IDisposable)> │
00:11:10 #30766 [verbose] > │ struct (v1, v2) │
00:11:10 #30767 [verbose] > │ #endif │
00:11:10 #30768 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30769 [verbose] > │ let struct (v3 : string, v4 : System.IDisposable) = null |> unbox<struct │
00:11:10 #30770 [verbose] > │ (string * System.IDisposable)> │
00:11:10 #30771 [verbose] > │ struct (v3, v4) │
00:11:10 #30772 [verbose] > │ #endif │
00:11:10 #30773 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30774 [verbose] > │ let struct (v5 : string, v6 : System.IDisposable) = null |> unbox<struct │
00:11:10 #30775 [verbose] > │ (string * System.IDisposable)> │
00:11:10 #30776 [verbose] > │ struct (v5, v6) │
00:11:10 #30777 [verbose] > │ #endif │
00:11:10 #30778 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30779 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30780 [verbose] > │ let v7 : string option = None │
00:11:10 #30781 [verbose] > │ let mutable _v7 = v7 │
00:11:10 #30782 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30783 [verbose] > │ let v8 : string = null |> unbox<string> │
00:11:10 #30784 [verbose] > │ v8 │
00:11:10 #30785 [verbose] > │ #endif │
00:11:10 #30786 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30787 [verbose] > │ let v9 : string = null |> unbox<string> │
00:11:10 #30788 [verbose] > │ v9 │
00:11:10 #30789 [verbose] > │ #endif │
00:11:10 #30790 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30791 [verbose] > │ let v10 : string = null |> unbox<string> │
00:11:10 #30792 [verbose] > │ v10 │
00:11:10 #30793 [verbose] > │ #endif │
00:11:10 #30794 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30795 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30796 [verbose] > │ let v11 : (unit -> string) = System.IO.Path.GetTempPath │
00:11:10 #30797 [verbose] > │ let v12 : string = v11 () │
00:11:10 #30798 [verbose] > │ let v13 : (unit -> string) = closure33() │
00:11:10 #30799 [verbose] > │ let v14 : string = $"!{v13 ()}" │
00:11:10 #30800 [verbose] > │ let v15 : string option = None │
00:11:10 #30801 [verbose] > │ let mutable _v15 = v15 │
00:11:10 #30802 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30803 [verbose] > │ let v16 : string = method5(v12) │
00:11:10 #30804 [verbose] > │ let v17 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #30805 [verbose] > │ let v18 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v16 v17 │
00:11:10 #30806 [verbose] > │ let v19 : string = "String::from($0)" │
00:11:10 #30807 [verbose] > │ let v20 : std_string_String = Fable.Core.RustInterop.emitRustExpr v18 │
00:11:10 #30808 [verbose] > │ v19 │
00:11:10 #30809 [verbose] > │ let v21 : string = "std::path::PathBuf::from($0)" │
00:11:10 #30810 [verbose] > │ let v22 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v20 v21 │
00:11:10 #30811 [verbose] > │ let v23 : string = method5(v14) │
00:11:10 #30812 [verbose] > │ let v24 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #30813 [verbose] > │ let v25 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v23 v24 │
00:11:10 #30814 [verbose] > │ let v26 : string = "String::from($0)" │
00:11:10 #30815 [verbose] > │ let v27 : std_string_String = Fable.Core.RustInterop.emitRustExpr v25 │
00:11:10 #30816 [verbose] > │ v26 │
00:11:10 #30817 [verbose] > │ let v28 : string = "$0.join($1)" │
00:11:10 #30818 [verbose] > │ let v29 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:11:10 #30819 [verbose] > │ (v22, v27) v28 │
00:11:10 #30820 [verbose] > │ let v30 : string = "$0.display().to_string()" │
00:11:10 #30821 [verbose] > │ let v31 : std_string_String = Fable.Core.RustInterop.emitRustExpr v29 │
00:11:10 #30822 [verbose] > │ v30 │
00:11:10 #30823 [verbose] > │ let v32 : string = "fable_library_rust::String_::fromString($0)" │
00:11:10 #30824 [verbose] > │ let v33 : string = Fable.Core.RustInterop.emitRustExpr v31 v32 │
00:11:10 #30825 [verbose] > │ v33 │
00:11:10 #30826 [verbose] > │ #endif │
00:11:10 #30827 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30828 [verbose] > │ let v34 : string = null |> unbox<string> │
00:11:10 #30829 [verbose] > │ v34 │
00:11:10 #30830 [verbose] > │ #endif │
00:11:10 #30831 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30832 [verbose] > │ let v35 : string = null |> unbox<string> │
00:11:10 #30833 [verbose] > │ v35 │
00:11:10 #30834 [verbose] > │ #endif │
00:11:10 #30835 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30836 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30837 [verbose] > │ let v36 : string = System.IO.Path.Combine (v12, v14) │
00:11:10 #30838 [verbose] > │ v36 │
00:11:10 #30839 [verbose] > │ #endif │
00:11:10 #30840 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30841 [verbose] > │ let v37 : string = "path" │
00:11:10 #30842 [verbose] > │ let v38 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:11:10 #30843 [verbose] > │ let v39 : string = "v38.join($0, $1)" │
00:11:10 #30844 [verbose] > │ let v40 : string = Fable.Core.JsInterop.emitJsExpr struct (v12, v14) v39 │
00:11:10 #30845 [verbose] > │ v40 │
00:11:10 #30846 [verbose] > │ #endif │
00:11:10 #30847 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30848 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #30849 [verbose] > │ #endif │
00:11:10 #30850 [verbose] > │ |> fun x -> _v15 <- Some x │
00:11:10 #30851 [verbose] > │ let v41 : string = _v15.Value │
00:11:10 #30852 [verbose] > │ let v42 : System.DateTime = System.DateTime.Now │
00:11:10 #30853 [verbose] > │ let v43 : System.Guid = System.Guid.NewGuid () │
00:11:10 #30854 [verbose] > │ let v44 : (System.Guid -> string) = _.ToString() │
00:11:10 #30855 [verbose] > │ let v45 : string = v44 v43 │
00:11:10 #30856 [verbose] > │ let v46 : string = v42.ToString "yyyyMMdd-HHmm-ssff-ffff-f" │
00:11:10 #30857 [verbose] > │ let v47 : System.Guid = System.Guid $"{v46}{v45.[v46.Length..]}" │
00:11:10 #30858 [verbose] > │ let v48 : (System.Guid -> string) = _.ToString() │
00:11:10 #30859 [verbose] > │ let v49 : string = v48 v47 │
00:11:10 #30860 [verbose] > │ let v50 : string option = None │
00:11:10 #30861 [verbose] > │ let mutable _v50 = v50 │
00:11:10 #30862 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30863 [verbose] > │ let v51 : string = method5(v41) │
00:11:10 #30864 [verbose] > │ let v52 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #30865 [verbose] > │ let v53 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v51 v52 │
00:11:10 #30866 [verbose] > │ let v54 : string = "String::from($0)" │
00:11:10 #30867 [verbose] > │ let v55 : std_string_String = Fable.Core.RustInterop.emitRustExpr v53 │
00:11:10 #30868 [verbose] > │ v54 │
00:11:10 #30869 [verbose] > │ let v56 : string = "std::path::PathBuf::from($0)" │
00:11:10 #30870 [verbose] > │ let v57 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v55 v56 │
00:11:10 #30871 [verbose] > │ let v58 : string = method5(v49) │
00:11:10 #30872 [verbose] > │ let v59 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #30873 [verbose] > │ let v60 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v58 v59 │
00:11:10 #30874 [verbose] > │ let v61 : string = "String::from($0)" │
00:11:10 #30875 [verbose] > │ let v62 : std_string_String = Fable.Core.RustInterop.emitRustExpr v60 │
00:11:10 #30876 [verbose] > │ v61 │
00:11:10 #30877 [verbose] > │ let v63 : string = "$0.join($1)" │
00:11:10 #30878 [verbose] > │ let v64 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:11:10 #30879 [verbose] > │ (v57, v62) v63 │
00:11:10 #30880 [verbose] > │ let v65 : string = "$0.display().to_string()" │
00:11:10 #30881 [verbose] > │ let v66 : std_string_String = Fable.Core.RustInterop.emitRustExpr v64 │
00:11:10 #30882 [verbose] > │ v65 │
00:11:10 #30883 [verbose] > │ let v67 : string = "fable_library_rust::String_::fromString($0)" │
00:11:10 #30884 [verbose] > │ let v68 : string = Fable.Core.RustInterop.emitRustExpr v66 v67 │
00:11:10 #30885 [verbose] > │ v68 │
00:11:10 #30886 [verbose] > │ #endif │
00:11:10 #30887 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30888 [verbose] > │ let v69 : string = null |> unbox<string> │
00:11:10 #30889 [verbose] > │ v69 │
00:11:10 #30890 [verbose] > │ #endif │
00:11:10 #30891 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30892 [verbose] > │ let v70 : string = null |> unbox<string> │
00:11:10 #30893 [verbose] > │ v70 │
00:11:10 #30894 [verbose] > │ #endif │
00:11:10 #30895 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30896 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30897 [verbose] > │ let v71 : string = System.IO.Path.Combine (v41, v49) │
00:11:10 #30898 [verbose] > │ v71 │
00:11:10 #30899 [verbose] > │ #endif │
00:11:10 #30900 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30901 [verbose] > │ let v72 : IPathJoin = Fable.Core.JsInterop.importAll v37 │
00:11:10 #30902 [verbose] > │ let v73 : string = "v72.join($0, $1)" │
00:11:10 #30903 [verbose] > │ let v74 : string = Fable.Core.JsInterop.emitJsExpr struct (v41, v49) v73 │
00:11:10 #30904 [verbose] > │ v74 │
00:11:10 #30905 [verbose] > │ #endif │
00:11:10 #30906 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30907 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #30908 [verbose] > │ #endif │
00:11:10 #30909 [verbose] > │ |> fun x -> _v50 <- Some x │
00:11:10 #30910 [verbose] > │ let v75 : string = _v50.Value │
00:11:10 #30911 [verbose] > │ v75 │
00:11:10 #30912 [verbose] > │ #endif │
00:11:10 #30913 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30914 [verbose] > │ let v76 : string = null |> unbox<string> │
00:11:10 #30915 [verbose] > │ v76 │
00:11:10 #30916 [verbose] > │ #endif │
00:11:10 #30917 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30918 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #30919 [verbose] > │ #endif │
00:11:10 #30920 [verbose] > │ |> fun x -> _v7 <- Some x │
00:11:10 #30921 [verbose] > │ let v77 : string = _v7.Value │
00:11:10 #30922 [verbose] > │ let v78 : System.IO.DirectoryInfo option = None │
00:11:10 #30923 [verbose] > │ let mutable _v78 = v78 │
00:11:10 #30924 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30925 [verbose] > │ let v79 : System.IO.DirectoryInfo = null |> │
00:11:10 #30926 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:11:10 #30927 [verbose] > │ v79 │
00:11:10 #30928 [verbose] > │ #endif │
00:11:10 #30929 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30930 [verbose] > │ let v80 : System.IO.DirectoryInfo = null |> │
00:11:10 #30931 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:11:10 #30932 [verbose] > │ v80 │
00:11:10 #30933 [verbose] > │ #endif │
00:11:10 #30934 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30935 [verbose] > │ let v81 : System.IO.DirectoryInfo = null |> │
00:11:10 #30936 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:11:10 #30937 [verbose] > │ v81 │
00:11:10 #30938 [verbose] > │ #endif │
00:11:10 #30939 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30940 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30941 [verbose] > │ let v82 : (string -> System.IO.DirectoryInfo) = │
00:11:10 #30942 [verbose] > │ System.IO.Directory.CreateDirectory │
00:11:10 #30943 [verbose] > │ let v83 : System.IO.DirectoryInfo = v82 v77 │
00:11:10 #30944 [verbose] > │ v83 │
00:11:10 #30945 [verbose] > │ #endif │
00:11:10 #30946 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30947 [verbose] > │ let v84 : System.IO.DirectoryInfo = null |> │
00:11:10 #30948 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:11:10 #30949 [verbose] > │ v84 │
00:11:10 #30950 [verbose] > │ #endif │
00:11:10 #30951 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30952 [verbose] > │ Unchecked.defaultof<System.IO.DirectoryInfo> │
00:11:10 #30953 [verbose] > │ #endif │
00:11:10 #30954 [verbose] > │ |> fun x -> _v78 <- Some x │
00:11:10 #30955 [verbose] > │ let v85 : System.IO.DirectoryInfo = _v78.Value │
00:11:10 #30956 [verbose] > │ let v86 : bool option = None │
00:11:10 #30957 [verbose] > │ let mutable _v86 = v86 │
00:11:10 #30958 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30959 [verbose] > │ let v87 : bool = null |> unbox<bool> │
00:11:10 #30960 [verbose] > │ v87 │
00:11:10 #30961 [verbose] > │ #endif │
00:11:10 #30962 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30963 [verbose] > │ let v88 : bool = null |> unbox<bool> │
00:11:10 #30964 [verbose] > │ v88 │
00:11:10 #30965 [verbose] > │ #endif │
00:11:10 #30966 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30967 [verbose] > │ let v89 : bool = null |> unbox<bool> │
00:11:10 #30968 [verbose] > │ v89 │
00:11:10 #30969 [verbose] > │ #endif │
00:11:10 #30970 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #30971 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #30972 [verbose] > │ let v90 : bool = v85.Exists │
00:11:10 #30973 [verbose] > │ v90 │
00:11:10 #30974 [verbose] > │ #endif │
00:11:10 #30975 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #30976 [verbose] > │ let v91 : bool = null |> unbox<bool> │
00:11:10 #30977 [verbose] > │ v91 │
00:11:10 #30978 [verbose] > │ #endif │
00:11:10 #30979 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #30980 [verbose] > │ Unchecked.defaultof<bool> │
00:11:10 #30981 [verbose] > │ #endif │
00:11:10 #30982 [verbose] > │ |> fun x -> _v86 <- Some x │
00:11:10 #30983 [verbose] > │ let v92 : bool = _v86.Value │
00:11:10 #30984 [verbose] > │ let v93 : bool = v92 = false │
00:11:10 #30985 [verbose] > │ if v93 then │
00:11:10 #30986 [verbose] > │ let v94 : System.DateTime option = None │
00:11:10 #30987 [verbose] > │ let mutable _v94 = v94 │
00:11:10 #30988 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #30989 [verbose] > │ let v95 : System.DateTime = null |> unbox<System.DateTime> │
00:11:10 #30990 [verbose] > │ v95 │
00:11:10 #30991 [verbose] > │ #endif │
00:11:10 #30992 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #30993 [verbose] > │ let v96 : System.DateTime = null |> unbox<System.DateTime> │
00:11:10 #30994 [verbose] > │ v96 │
00:11:10 #30995 [verbose] > │ #endif │
00:11:10 #30996 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #30997 [verbose] > │ let v97 : System.DateTime = null |> unbox<System.DateTime> │
00:11:10 #30998 [verbose] > │ v97 │
00:11:10 #30999 [verbose] > │ #endif │
00:11:10 #31000 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #31001 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #31002 [verbose] > │ let v98 : System.DateTime = v85.CreationTime │
00:11:10 #31003 [verbose] > │ v98 │
00:11:10 #31004 [verbose] > │ #endif │
00:11:10 #31005 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #31006 [verbose] > │ let v99 : System.DateTime = null |> unbox<System.DateTime> │
00:11:10 #31007 [verbose] > │ v99 │
00:11:10 #31008 [verbose] > │ #endif │
00:11:10 #31009 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #31010 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #31011 [verbose] > │ Unchecked.defaultof<System.DateTime> │
00:11:10 #31012 [verbose] > │ #endif │
00:11:10 #31013 [verbose] > │ |> fun x -> _v94 <- Some x │
00:11:10 #31014 [verbose] > │ let v100 : System.DateTime = _v94.Value │
00:11:10 #31015 [verbose] > │ let v101 : obj = {| Exists = v92; CreationTime = v100 |} │
00:11:10 #31016 [verbose] > │ let v102 : string = $"%A{v101}" │
00:11:10 #31017 [verbose] > │ let v103 : (unit -> string) = closure35(v77, v102) │
00:11:10 #31018 [verbose] > │ let v104 : string = $"create_temp_directory / {v103 ()}" │
00:11:10 #31019 [verbose] > │ System.Console.WriteLine v104 │
00:11:10 #31020 [verbose] > │ () │
00:11:10 #31021 [verbose] > │ let v105 : System.IDisposable option = None │
00:11:10 #31022 [verbose] > │ let mutable _v105 = v105 │
00:11:10 #31023 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #31024 [verbose] > │ let v106 : System.IDisposable = null |> unbox<System.IDisposable> │
00:11:10 #31025 [verbose] > │ v106 │
00:11:10 #31026 [verbose] > │ #endif │
00:11:10 #31027 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #31028 [verbose] > │ let v107 : System.IDisposable = null |> unbox<System.IDisposable> │
00:11:10 #31029 [verbose] > │ v107 │
00:11:10 #31030 [verbose] > │ #endif │
00:11:10 #31031 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #31032 [verbose] > │ let v108 : System.IDisposable = null |> unbox<System.IDisposable> │
00:11:10 #31033 [verbose] > │ v108 │
00:11:10 #31034 [verbose] > │ #endif │
00:11:10 #31035 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #31036 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #31037 [verbose] > │ let v109 : (unit -> unit) = closure36(v77) │
00:11:10 #31038 [verbose] > │ let v110 : System.IDisposable = { new System.IDisposable with member │
00:11:10 #31039 [verbose] > │ _.Dispose () = v109 () } │
00:11:10 #31040 [verbose] > │ v110 │
00:11:10 #31041 [verbose] > │ #endif │
00:11:10 #31042 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #31043 [verbose] > │ let v111 : System.IDisposable = null |> unbox<System.IDisposable> │
00:11:10 #31044 [verbose] > │ v111 │
00:11:10 #31045 [verbose] > │ #endif │
00:11:10 #31046 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #31047 [verbose] > │ Unchecked.defaultof<System.IDisposable> │
00:11:10 #31048 [verbose] > │ #endif │
00:11:10 #31049 [verbose] > │ |> fun x -> _v105 <- Some x │
00:11:10 #31050 [verbose] > │ let v112 : System.IDisposable = _v105.Value │
00:11:10 #31051 [verbose] > │ struct (v77, v112) │
00:11:10 #31052 [verbose] > │ #endif │
00:11:10 #31053 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #31054 [verbose] > │ let struct (v113 : string, v114 : System.IDisposable) = null |> │
00:11:10 #31055 [verbose] > │ unbox<struct (string * System.IDisposable)> │
00:11:10 #31056 [verbose] > │ struct (v113, v114) │
00:11:10 #31057 [verbose] > │ #endif │
00:11:10 #31058 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #31059 [verbose] > │ Unchecked.defaultof<struct (string * System.IDisposable)> │
00:11:10 #31060 [verbose] > │ #endif │
00:11:10 #31061 [verbose] > │ |> fun x -> _v0 <- Some x │
00:11:10 #31062 [verbose] > │ let struct (v115 : string, v116 : System.IDisposable) = _v0.Value │
00:11:10 #31063 [verbose] > │ struct (v115, v116) │
00:11:10 #31064 [verbose] > │ and closure37 () () : string = │
00:11:10 #31065 [verbose] > │ let v0 : string = __SOURCE_DIRECTORY__ │
00:11:10 #31066 [verbose] > │ v0 │
00:11:10 #31067 [verbose] > │ and closure41 () (v0 : string) : bool = │
00:11:10 #31068 [verbose] > │ let v1 : bool option = None │
00:11:10 #31069 [verbose] > │ let mutable _v1 = v1 │
00:11:10 #31070 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #31071 [verbose] > │ let v2 : string = method5(v0) │
00:11:10 #31072 [verbose] > │ let v3 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #31073 [verbose] > │ let v4 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v2 v3 │
00:11:10 #31074 [verbose] > │ let v5 : string = "String::from($0)" │
00:11:10 #31075 [verbose] > │ let v6 : std_string_String = Fable.Core.RustInterop.emitRustExpr v4 v5 │
00:11:10 #31076 [verbose] > │ let v7 : string = "std::path::PathBuf::from($0)" │
00:11:10 #31077 [verbose] > │ let v8 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v6 v7 │
00:11:10 #31078 [verbose] > │ let v9 : string = "$0.exists()" │
00:11:10 #31079 [verbose] > │ let v10 : bool = Fable.Core.RustInterop.emitRustExpr v8 v9 │
00:11:10 #31080 [verbose] > │ let v13 : bool = │
00:11:10 #31081 [verbose] > │ if v10 then │
00:11:10 #31082 [verbose] > │ let v11 : string = "$0.is_file()" │
00:11:10 #31083 [verbose] > │ let v12 : bool = Fable.Core.RustInterop.emitRustExpr v8 v11 │
00:11:10 #31084 [verbose] > │ v12 │
00:11:10 #31085 [verbose] > │ else │
00:11:10 #31086 [verbose] > │ false │
00:11:10 #31087 [verbose] > │ v13 │
00:11:10 #31088 [verbose] > │ #endif │
00:11:10 #31089 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #31090 [verbose] > │ let v14 : bool = null |> unbox<bool> │
00:11:10 #31091 [verbose] > │ v14 │
00:11:10 #31092 [verbose] > │ #endif │
00:11:10 #31093 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #31094 [verbose] > │ let v15 : bool = null |> unbox<bool> │
00:11:10 #31095 [verbose] > │ v15 │
00:11:10 #31096 [verbose] > │ #endif │
00:11:10 #31097 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #31098 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #31099 [verbose] > │ let v16 : (string -> bool) = System.IO.File.Exists │
00:11:10 #31100 [verbose] > │ let v17 : bool = v16 v0 │
00:11:10 #31101 [verbose] > │ v17 │
00:11:10 #31102 [verbose] > │ #endif │
00:11:10 #31103 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #31104 [verbose] > │ let v18 : string = "fs" │
00:11:10 #31105 [verbose] > │ let v19 : IFsExistsSync = Fable.Core.JsInterop.importAll v18 │
00:11:10 #31106 [verbose] > │ let v20 : string = "v19.existsSync($0)" │
00:11:10 #31107 [verbose] > │ let v21 : bool = Fable.Core.JsInterop.emitJsExpr v0 v20 │
00:11:10 #31108 [verbose] > │ v21 │
00:11:10 #31109 [verbose] > │ #endif │
00:11:10 #31110 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #31111 [verbose] > │ Unchecked.defaultof<bool> │
00:11:10 #31112 [verbose] > │ #endif │
00:11:10 #31113 [verbose] > │ |> fun x -> _v1 <- Some x │
00:11:10 #31114 [verbose] > │ let v22 : bool = _v1.Value │
00:11:10 #31115 [verbose] > │ v22 │
00:11:10 #31116 [verbose] > │ and closure42 () (v0 : string) : bool = │
00:11:10 #31117 [verbose] > │ let v1 : bool option = None │
00:11:10 #31118 [verbose] > │ let mutable _v1 = v1 │
00:11:10 #31119 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #31120 [verbose] > │ let v2 : string = method5(v0) │
00:11:10 #31121 [verbose] > │ let v3 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #31122 [verbose] > │ let v4 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v2 v3 │
00:11:10 #31123 [verbose] > │ let v5 : string = "String::from($0)" │
00:11:10 #31124 [verbose] > │ let v6 : std_string_String = Fable.Core.RustInterop.emitRustExpr v4 v5 │
00:11:10 #31125 [verbose] > │ let v7 : string = "std::path::PathBuf::from($0)" │
00:11:10 #31126 [verbose] > │ let v8 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v6 v7 │
00:11:10 #31127 [verbose] > │ let v9 : string = "$0.exists()" │
00:11:10 #31128 [verbose] > │ let v10 : bool = Fable.Core.RustInterop.emitRustExpr v8 v9 │
00:11:10 #31129 [verbose] > │ let v13 : bool = │
00:11:10 #31130 [verbose] > │ if v10 then │
00:11:10 #31131 [verbose] > │ let v11 : string = "$0.is_dir()" │
00:11:10 #31132 [verbose] > │ let v12 : bool = Fable.Core.RustInterop.emitRustExpr v8 v11 │
00:11:10 #31133 [verbose] > │ v12 │
00:11:10 #31134 [verbose] > │ else │
00:11:10 #31135 [verbose] > │ false │
00:11:10 #31136 [verbose] > │ v13 │
00:11:10 #31137 [verbose] > │ #endif │
00:11:10 #31138 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #31139 [verbose] > │ let v14 : bool = null |> unbox<bool> │
00:11:10 #31140 [verbose] > │ v14 │
00:11:10 #31141 [verbose] > │ #endif │
00:11:10 #31142 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #31143 [verbose] > │ let v15 : bool = null |> unbox<bool> │
00:11:10 #31144 [verbose] > │ v15 │
00:11:10 #31145 [verbose] > │ #endif │
00:11:10 #31146 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #31147 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #31148 [verbose] > │ let v16 : (string -> bool) = System.IO.Directory.Exists │
00:11:10 #31149 [verbose] > │ let v17 : bool = v16 v0 │
00:11:10 #31150 [verbose] > │ v17 │
00:11:10 #31151 [verbose] > │ #endif │
00:11:10 #31152 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #31153 [verbose] > │ let v18 : string = "fs" │
00:11:10 #31154 [verbose] > │ let v19 : IFsExistsSync = Fable.Core.JsInterop.importAll v18 │
00:11:10 #31155 [verbose] > │ let v20 : string = "v19.existsSync($0)" │
00:11:10 #31156 [verbose] > │ let v21 : bool = Fable.Core.JsInterop.emitJsExpr v0 v20 │
00:11:10 #31157 [verbose] > │ v21 │
00:11:10 #31158 [verbose] > │ #endif │
00:11:10 #31159 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #31160 [verbose] > │ Unchecked.defaultof<bool> │
00:11:10 #31161 [verbose] > │ #endif │
00:11:10 #31162 [verbose] > │ |> fun x -> _v1 <- Some x │
00:11:10 #31163 [verbose] > │ let v22 : bool = _v1.Value │
00:11:10 #31164 [verbose] > │ v22 │
00:11:10 #31165 [verbose] > │ and closure43 () (v0 : string) : string option = │
00:11:10 #31166 [verbose] > │ let v1 : US8 option = None │
00:11:10 #31167 [verbose] > │ let mutable _v1 = v1 │
00:11:10 #31168 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #31169 [verbose] > │ let v2 : string = method5(v0) │
00:11:10 #31170 [verbose] > │ let v3 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #31171 [verbose] > │ let v4 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v2 v3 │
00:11:10 #31172 [verbose] > │ let v5 : string = "String::from($0)" │
00:11:10 #31173 [verbose] > │ let v6 : std_string_String = Fable.Core.RustInterop.emitRustExpr v4 v5 │
00:11:10 #31174 [verbose] > │ let v7 : string = "std::path::PathBuf::from($0)" │
00:11:10 #31175 [verbose] > │ let v8 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v6 v7 │
00:11:10 #31176 [verbose] > │ let v9 : string = "$0.parent().map(std::path::PathBuf::from)" │
00:11:10 #31177 [verbose] > │ let v10 : std_path_PathBuf option = Fable.Core.RustInterop.emitRustExpr │
00:11:10 #31178 [verbose] > │ v8 v9 │
00:11:10 #31179 [verbose] > │ let v11 : string = "$0?" │
00:11:10 #31180 [verbose] > │ let v12 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v10 v11 │
00:11:10 #31181 [verbose] > │ let v13 : string = "$0.display().to_string()" │
00:11:10 #31182 [verbose] > │ let v14 : std_string_String = Fable.Core.RustInterop.emitRustExpr v12 │
00:11:10 #31183 [verbose] > │ v13 │
00:11:10 #31184 [verbose] > │ let v15 : string = "fable_library_rust::String_::fromString($0)" │
00:11:10 #31185 [verbose] > │ let v16 : string = Fable.Core.RustInterop.emitRustExpr v14 v15 │
00:11:10 #31186 [verbose] > │ let v17 : US8 = US8_0(v16) │
00:11:10 #31187 [verbose] > │ v17 │
00:11:10 #31188 [verbose] > │ #endif │
00:11:10 #31189 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #31190 [verbose] > │ let v18 : US8 = null |> unbox<US8> │
00:11:10 #31191 [verbose] > │ v18 │
00:11:10 #31192 [verbose] > │ #endif │
00:11:10 #31193 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #31194 [verbose] > │ let v19 : US8 = null |> unbox<US8> │
00:11:10 #31195 [verbose] > │ v19 │
00:11:10 #31196 [verbose] > │ #endif │
00:11:10 #31197 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #31198 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #31199 [verbose] > │ let v20 : (string -> System.IO.DirectoryInfo) = │
00:11:10 #31200 [verbose] > │ System.IO.Directory.GetParent │
00:11:10 #31201 [verbose] > │ let v21 : System.IO.DirectoryInfo = v20 v0 │
00:11:10 #31202 [verbose] > │ let v22 : System.IO.DirectoryInfo = null |> │
00:11:10 #31203 [verbose] > │ unbox<System.IO.DirectoryInfo> │
00:11:10 #31204 [verbose] > │ let v23 : bool = v21 = v22 │
00:11:10 #31205 [verbose] > │ let v33 : US8 = │
00:11:10 #31206 [verbose] > │ if v23 then │
00:11:10 #31207 [verbose] > │ US8_1 │
00:11:10 #31208 [verbose] > │ else │
00:11:10 #31209 [verbose] > │ let v25 : string option = None │
00:11:10 #31210 [verbose] > │ let mutable _v25 = v25 │
00:11:10 #31211 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #31212 [verbose] > │ let v26 : string = null |> unbox<string> │
00:11:10 #31213 [verbose] > │ v26 │
00:11:10 #31214 [verbose] > │ #endif │
00:11:10 #31215 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #31216 [verbose] > │ let v27 : string = null |> unbox<string> │
00:11:10 #31217 [verbose] > │ v27 │
00:11:10 #31218 [verbose] > │ #endif │
00:11:10 #31219 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #31220 [verbose] > │ let v28 : string = null |> unbox<string> │
00:11:10 #31221 [verbose] > │ v28 │
00:11:10 #31222 [verbose] > │ #endif │
00:11:10 #31223 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #31224 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #31225 [verbose] > │ let v29 : string = v21.FullName │
00:11:10 #31226 [verbose] > │ v29 │
00:11:10 #31227 [verbose] > │ #endif │
00:11:10 #31228 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #31229 [verbose] > │ let v30 : string = null |> unbox<string> │
00:11:10 #31230 [verbose] > │ v30 │
00:11:10 #31231 [verbose] > │ #endif │
00:11:10 #31232 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:11:10 #31233 [verbose] > │ FABLE_COMPILER_DART │
00:11:10 #31234 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #31235 [verbose] > │ #endif │
00:11:10 #31236 [verbose] > │ |> fun x -> _v25 <- Some x │
00:11:10 #31237 [verbose] > │ let v31 : string = _v25.Value │
00:11:10 #31238 [verbose] > │ US8_0(v31) │
00:11:10 #31239 [verbose] > │ v33 │
00:11:10 #31240 [verbose] > │ #endif │
00:11:10 #31241 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #31242 [verbose] > │ let v34 : string = "path" │
00:11:10 #31243 [verbose] > │ let v35 : IPathDirname = Fable.Core.JsInterop.importAll v34 │
00:11:10 #31244 [verbose] > │ let v36 : string = "v35.dirname($0)" │
00:11:10 #31245 [verbose] > │ let v37 : string = Fable.Core.JsInterop.emitJsExpr v0 v36 │
00:11:10 #31246 [verbose] > │ let v38 : US8 = US8_0(v37) │
00:11:10 #31247 [verbose] > │ v38 │
00:11:10 #31248 [verbose] > │ #endif │
00:11:10 #31249 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #31250 [verbose] > │ Unchecked.defaultof<US8> │
00:11:10 #31251 [verbose] > │ #endif │
00:11:10 #31252 [verbose] > │ |> fun x -> _v1 <- Some x │
00:11:10 #31253 [verbose] > │ let v39 : US8 = _v1.Value │
00:11:10 #31254 [verbose] > │ match v39 with │
00:11:10 #31255 [verbose] > │ | US8_1 -> (* None *) │
00:11:10 #31256 [verbose] > │ let v42 : string option = None │
00:11:10 #31257 [verbose] > │ v42 │
00:11:10 #31258 [verbose] > │ | US8_0(v40) -> (* Some *) │
00:11:10 #31259 [verbose] > │ let v41 : string option = Some v40 │
00:11:10 #31260 [verbose] > │ v41 │
00:11:10 #31261 [verbose] > │ and method17 () : (string -> string option) = │
00:11:10 #31262 [verbose] > │ closure43() │
00:11:10 #31263 [verbose] > │ and closure44 () (v0 : string) : US8 = │
00:11:10 #31264 [verbose] > │ US8_0(v0) │
00:11:10 #31265 [verbose] > │ and method18 () : (string -> US8) = │
00:11:10 #31266 [verbose] > │ closure44() │
00:11:10 #31267 [verbose] > │ and method19 (v0 : string, v1 : bool, v2 : string, v3 : string) : string = │
00:11:10 #31268 [verbose] > │ let v4 : string option = None │
00:11:10 #31269 [verbose] > │ let mutable _v4 = v4 │
00:11:10 #31270 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #31271 [verbose] > │ let v5 : string = method5(v3) │
00:11:10 #31272 [verbose] > │ let v6 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #31273 [verbose] > │ let v7 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v5 v6 │
00:11:10 #31274 [verbose] > │ let v8 : string = "String::from($0)" │
00:11:10 #31275 [verbose] > │ let v9 : std_string_String = Fable.Core.RustInterop.emitRustExpr v7 v8 │
00:11:10 #31276 [verbose] > │ let v10 : string = "std::path::PathBuf::from($0)" │
00:11:10 #31277 [verbose] > │ let v11 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v9 v10 │
00:11:10 #31278 [verbose] > │ let v12 : string = method5(v0) │
00:11:10 #31279 [verbose] > │ let v13 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #31280 [verbose] > │ let v14 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v12 v13 │
00:11:10 #31281 [verbose] > │ let v15 : string = "String::from($0)" │
00:11:10 #31282 [verbose] > │ let v16 : std_string_String = Fable.Core.RustInterop.emitRustExpr v14 │
00:11:10 #31283 [verbose] > │ v15 │
00:11:10 #31284 [verbose] > │ let v17 : string = "$0.join($1)" │
00:11:10 #31285 [verbose] > │ let v18 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:11:10 #31286 [verbose] > │ (v11, v16) v17 │
00:11:10 #31287 [verbose] > │ let v19 : string = "$0.display().to_string()" │
00:11:10 #31288 [verbose] > │ let v20 : std_string_String = Fable.Core.RustInterop.emitRustExpr v18 │
00:11:10 #31289 [verbose] > │ v19 │
00:11:10 #31290 [verbose] > │ let v21 : string = "fable_library_rust::String_::fromString($0)" │
00:11:10 #31291 [verbose] > │ let v22 : string = Fable.Core.RustInterop.emitRustExpr v20 v21 │
00:11:10 #31292 [verbose] > │ v22 │
00:11:10 #31293 [verbose] > │ #endif │
00:11:10 #31294 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #31295 [verbose] > │ let v23 : string = null |> unbox<string> │
00:11:10 #31296 [verbose] > │ v23 │
00:11:10 #31297 [verbose] > │ #endif │
00:11:10 #31298 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #31299 [verbose] > │ let v24 : string = null |> unbox<string> │
00:11:10 #31300 [verbose] > │ v24 │
00:11:10 #31301 [verbose] > │ #endif │
00:11:10 #31302 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #31303 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #31304 [verbose] > │ let v25 : string = System.IO.Path.Combine (v3, v0) │
00:11:10 #31305 [verbose] > │ v25 │
00:11:10 #31306 [verbose] > │ #endif │
00:11:10 #31307 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #31308 [verbose] > │ let v26 : string = "path" │
00:11:10 #31309 [verbose] > │ let v27 : IPathJoin = Fable.Core.JsInterop.importAll v26 │
00:11:10 #31310 [verbose] > │ let v28 : string = "v27.join($0, $1)" │
00:11:10 #31311 [verbose] > │ let v29 : string = Fable.Core.JsInterop.emitJsExpr struct (v3, v0) v28 │
00:11:10 #31312 [verbose] > │ v29 │
00:11:10 #31313 [verbose] > │ #endif │
00:11:10 #31314 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #31315 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #31316 [verbose] > │ #endif │
00:11:10 #31317 [verbose] > │ |> fun x -> _v4 <- Some x │
00:11:10 #31318 [verbose] > │ let v30 : string = _v4.Value │
00:11:10 #31319 [verbose] > │ let v33 : (string -> bool) = │
00:11:10 #31320 [verbose] > │ if v1 then │
00:11:10 #31321 [verbose] > │ closure41() │
00:11:10 #31322 [verbose] > │ else │
00:11:10 #31323 [verbose] > │ closure42() │
00:11:10 #31324 [verbose] > │ let v34 : bool = v33 v30 │
00:11:10 #31325 [verbose] > │ if v34 then │
00:11:10 #31326 [verbose] > │ v3 │
00:11:10 #31327 [verbose] > │ else │
00:11:10 #31328 [verbose] > │ let v35 : (string -> string option) = method17() │
00:11:10 #31329 [verbose] > │ let v36 : string option = v35 v3 │
00:11:10 #31330 [verbose] > │ let v37 : (string -> US8) = method18() │
00:11:10 #31331 [verbose] > │ let v38 : US8 = US8_1 │
00:11:10 #31332 [verbose] > │ let v39 : US8 = v36 |> Option.map v37 |> Option.defaultValue v38 │
00:11:10 #31333 [verbose] > │ match v39 with │
00:11:10 #31334 [verbose] > │ | US8_1 -> (* None *) │
00:11:10 #31335 [verbose] > │ let v42 : string = $"""No parent for {if v1 then "file" else │
00:11:10 #31336 [verbose] > │ "dir"} '{v0}' at '{v2}'""" │
00:11:10 #31337 [verbose] > │ failwith<string> v42 │
00:11:10 #31338 [verbose] > │ | US8_0(v40) -> (* Some *) │
00:11:10 #31339 [verbose] > │ method19(v0, v1, v2, v40) │
00:11:10 #31340 [verbose] > │ and method16 (v0 : string, v1 : bool, v2 : string) : string = │
00:11:10 #31341 [verbose] > │ let v3 : string option = None │
00:11:10 #31342 [verbose] > │ let mutable _v3 = v3 │
00:11:10 #31343 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #31344 [verbose] > │ let v4 : string = method5(v2) │
00:11:10 #31345 [verbose] > │ let v5 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #31346 [verbose] > │ let v6 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v4 v5 │
00:11:10 #31347 [verbose] > │ let v7 : string = "String::from($0)" │
00:11:10 #31348 [verbose] > │ let v8 : std_string_String = Fable.Core.RustInterop.emitRustExpr v6 v7 │
00:11:10 #31349 [verbose] > │ let v9 : string = "std::path::PathBuf::from($0)" │
00:11:10 #31350 [verbose] > │ let v10 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v8 v9 │
00:11:10 #31351 [verbose] > │ let v11 : string = method5(v0) │
00:11:10 #31352 [verbose] > │ let v12 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #31353 [verbose] > │ let v13 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v11 v12 │
00:11:10 #31354 [verbose] > │ let v14 : string = "String::from($0)" │
00:11:10 #31355 [verbose] > │ let v15 : std_string_String = Fable.Core.RustInterop.emitRustExpr v13 │
00:11:10 #31356 [verbose] > │ v14 │
00:11:10 #31357 [verbose] > │ let v16 : string = "$0.join($1)" │
00:11:10 #31358 [verbose] > │ let v17 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:11:10 #31359 [verbose] > │ (v10, v15) v16 │
00:11:10 #31360 [verbose] > │ let v18 : string = "$0.display().to_string()" │
00:11:10 #31361 [verbose] > │ let v19 : std_string_String = Fable.Core.RustInterop.emitRustExpr v17 │
00:11:10 #31362 [verbose] > │ v18 │
00:11:10 #31363 [verbose] > │ let v20 : string = "fable_library_rust::String_::fromString($0)" │
00:11:10 #31364 [verbose] > │ let v21 : string = Fable.Core.RustInterop.emitRustExpr v19 v20 │
00:11:10 #31365 [verbose] > │ v21 │
00:11:10 #31366 [verbose] > │ #endif │
00:11:10 #31367 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #31368 [verbose] > │ let v22 : string = null |> unbox<string> │
00:11:10 #31369 [verbose] > │ v22 │
00:11:10 #31370 [verbose] > │ #endif │
00:11:10 #31371 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #31372 [verbose] > │ let v23 : string = null |> unbox<string> │
00:11:10 #31373 [verbose] > │ v23 │
00:11:10 #31374 [verbose] > │ #endif │
00:11:10 #31375 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #31376 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #31377 [verbose] > │ let v24 : string = System.IO.Path.Combine (v2, v0) │
00:11:10 #31378 [verbose] > │ v24 │
00:11:10 #31379 [verbose] > │ #endif │
00:11:10 #31380 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #31381 [verbose] > │ let v25 : string = "path" │
00:11:10 #31382 [verbose] > │ let v26 : IPathJoin = Fable.Core.JsInterop.importAll v25 │
00:11:10 #31383 [verbose] > │ let v27 : string = "v26.join($0, $1)" │
00:11:10 #31384 [verbose] > │ let v28 : string = Fable.Core.JsInterop.emitJsExpr struct (v2, v0) v27 │
00:11:10 #31385 [verbose] > │ v28 │
00:11:10 #31386 [verbose] > │ #endif │
00:11:10 #31387 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #31388 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #31389 [verbose] > │ #endif │
00:11:10 #31390 [verbose] > │ |> fun x -> _v3 <- Some x │
00:11:10 #31391 [verbose] > │ let v29 : string = _v3.Value │
00:11:10 #31392 [verbose] > │ let v32 : (string -> bool) = │
00:11:10 #31393 [verbose] > │ if v1 then │
00:11:10 #31394 [verbose] > │ closure41() │
00:11:10 #31395 [verbose] > │ else │
00:11:10 #31396 [verbose] > │ closure42() │
00:11:10 #31397 [verbose] > │ let v33 : bool = v32 v29 │
00:11:10 #31398 [verbose] > │ if v33 then │
00:11:10 #31399 [verbose] > │ v2 │
00:11:10 #31400 [verbose] > │ else │
00:11:10 #31401 [verbose] > │ let v34 : (string -> string option) = method17() │
00:11:10 #31402 [verbose] > │ let v35 : string option = v34 v2 │
00:11:10 #31403 [verbose] > │ let v36 : (string -> US8) = method18() │
00:11:10 #31404 [verbose] > │ let v37 : US8 = US8_1 │
00:11:10 #31405 [verbose] > │ let v38 : US8 = v35 |> Option.map v36 |> Option.defaultValue v37 │
00:11:10 #31406 [verbose] > │ match v38 with │
00:11:10 #31407 [verbose] > │ | US8_1 -> (* None *) │
00:11:10 #31408 [verbose] > │ let v41 : string = $"""No parent for {if v1 then "file" else │
00:11:10 #31409 [verbose] > │ "dir"} '{v0}' at '{v2}'""" │
00:11:10 #31410 [verbose] > │ failwith<string> v41 │
00:11:10 #31411 [verbose] > │ | US8_0(v39) -> (* Some *) │
00:11:10 #31412 [verbose] > │ method19(v0, v1, v2, v39) │
00:11:10 #31413 [verbose] > │ and closure40 (v0 : string, v1 : bool) (v2 : string) : string = │
00:11:10 #31414 [verbose] > │ method16(v0, v1, v2) │
00:11:10 #31415 [verbose] > │ and closure39 (v0 : string) (v1 : bool) : (string -> string) = │
00:11:10 #31416 [verbose] > │ closure40(v0, v1) │
00:11:10 #31417 [verbose] > │ and closure38 () (v0 : string) : (bool -> (string -> string)) = │
00:11:10 #31418 [verbose] > │ closure39(v0) │
00:11:10 #31419 [verbose] > │ and closure46 (v0 : string) (v1 : string) : string = │
00:11:10 #31420 [verbose] > │ let v2 : string option = None │
00:11:10 #31421 [verbose] > │ let mutable _v2 = v2 │
00:11:10 #31422 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #31423 [verbose] > │ let v3 : string = method5(v0) │
00:11:10 #31424 [verbose] > │ let v4 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #31425 [verbose] > │ let v5 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v3 v4 │
00:11:10 #31426 [verbose] > │ let v6 : string = "String::from($0)" │
00:11:10 #31427 [verbose] > │ let v7 : std_string_String = Fable.Core.RustInterop.emitRustExpr v5 v6 │
00:11:10 #31428 [verbose] > │ let v8 : string = "std::path::PathBuf::from($0)" │
00:11:10 #31429 [verbose] > │ let v9 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr v7 v8 │
00:11:10 #31430 [verbose] > │ let v10 : string = method5(v1) │
00:11:10 #31431 [verbose] > │ let v11 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:11:10 #31432 [verbose] > │ let v12 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v10 v11 │
00:11:10 #31433 [verbose] > │ let v13 : string = "String::from($0)" │
00:11:10 #31434 [verbose] > │ let v14 : std_string_String = Fable.Core.RustInterop.emitRustExpr v12 │
00:11:10 #31435 [verbose] > │ v13 │
00:11:10 #31436 [verbose] > │ let v15 : string = "$0.join($1)" │
00:11:10 #31437 [verbose] > │ let v16 : std_path_PathBuf = Fable.Core.RustInterop.emitRustExpr struct │
00:11:10 #31438 [verbose] > │ (v9, v14) v15 │
00:11:10 #31439 [verbose] > │ let v17 : string = "$0.display().to_string()" │
00:11:10 #31440 [verbose] > │ let v18 : std_string_String = Fable.Core.RustInterop.emitRustExpr v16 │
00:11:10 #31441 [verbose] > │ v17 │
00:11:10 #31442 [verbose] > │ let v19 : string = "fable_library_rust::String_::fromString($0)" │
00:11:10 #31443 [verbose] > │ let v20 : string = Fable.Core.RustInterop.emitRustExpr v18 v19 │
00:11:10 #31444 [verbose] > │ v20 │
00:11:10 #31445 [verbose] > │ #endif │
00:11:10 #31446 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #31447 [verbose] > │ let v21 : string = null |> unbox<string> │
00:11:10 #31448 [verbose] > │ v21 │
00:11:10 #31449 [verbose] > │ #endif │
00:11:10 #31450 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #31451 [verbose] > │ let v22 : string = null |> unbox<string> │
00:11:10 #31452 [verbose] > │ v22 │
00:11:10 #31453 [verbose] > │ #endif │
00:11:10 #31454 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:11:10 #31455 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:11:10 #31456 [verbose] > │ let v23 : string = System.IO.Path.Combine (v0, v1) │
00:11:10 #31457 [verbose] > │ v23 │
00:11:10 #31458 [verbose] > │ #endif │
00:11:10 #31459 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #31460 [verbose] > │ let v24 : string = "path" │
00:11:10 #31461 [verbose] > │ let v25 : IPathJoin = Fable.Core.JsInterop.importAll v24 │
00:11:10 #31462 [verbose] > │ let v26 : string = "v25.join($0, $1)" │
00:11:10 #31463 [verbose] > │ let v27 : string = Fable.Core.JsInterop.emitJsExpr struct (v0, v1) v26 │
00:11:10 #31464 [verbose] > │ v27 │
00:11:10 #31465 [verbose] > │ #endif │
00:11:10 #31466 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #31467 [verbose] > │ Unchecked.defaultof<string> │
00:11:10 #31468 [verbose] > │ #endif │
00:11:10 #31469 [verbose] > │ |> fun x -> _v2 <- Some x │
00:11:10 #31470 [verbose] > │ let v28 : string = _v2.Value │
00:11:10 #31471 [verbose] > │ v28 │
00:11:10 #31472 [verbose] > │ and closure45 () (v0 : string) : (string -> string) = │
00:11:10 #31473 [verbose] > │ closure46(v0) │
00:11:10 #31474 [verbose] > │ let v0 : unit option = None │
00:11:10 #31475 [verbose] > │ let mutable _v0 = v0 │
00:11:10 #31476 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:11:10 #31477 [verbose] > │ () │
00:11:10 #31478 [verbose] > │ #endif │
00:11:10 #31479 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:11:10 #31480 [verbose] > │ () │
00:11:10 #31481 [verbose] > │ #endif │
00:11:10 #31482 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:11:10 #31483 [verbose] > │ () │
00:11:10 #31484 [verbose] > │ #endif │
00:11:10 #31485 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT && │
00:11:10 #31486 [verbose] > │ !WASM && !CONTRACT │
00:11:10 #31487 [verbose] > │ let v1 : (string -> Async<int64>) = closure0() │
00:11:10 #31488 [verbose] > │ let delete_directory_async x = v1 x │
00:11:10 #31489 [verbose] > │ let v2 : (US0 -> (string -> Async<int64>)) = closure4() │
00:11:10 #31490 [verbose] > │ let wait_for_file_access x = v2 x │
00:11:10 #31491 [verbose] > │ let v3 : (string -> Async<int64>) = closure7() │
00:11:10 #31492 [verbose] > │ let wait_for_file_access_read x = v3 x │
00:11:10 #31493 [verbose] > │ let v4 : (string -> Async<string>) = closure8() │
00:11:10 #31494 [verbose] > │ let read_all_text_async x = v4 x │
00:11:10 #31495 [verbose] > │ let v5 : (string -> (string -> Async<bool>)) = closure9() │
00:11:10 #31496 [verbose] > │ let file_exists_content x = v5 x │
00:11:10 #31497 [verbose] > │ let v6 : (string -> (string -> Async<unit>)) = closure11() │
00:11:10 #31498 [verbose] > │ let write_all_text_async x = v6 x │
00:11:10 #31499 [verbose] > │ let v7 : (string -> (string -> Async<unit>)) = closure13() │
00:11:10 #31500 [verbose] > │ let write_all_text_exists x = v7 x │
00:11:10 #31501 [verbose] > │ let v8 : (string -> Async<int64>) = closure15() │
00:11:10 #31502 [verbose] > │ let delete_file_async x = v8 x │
00:11:10 #31503 [verbose] > │ let v9 : (string -> (string -> Async<int64>)) = closure20() │
00:11:10 #31504 [verbose] > │ let move_file_async x = v9 x │
00:11:10 #31505 [verbose] > │ let v10 : (string -> Async<string option>) = closure24() │
00:11:10 #31506 [verbose] > │ let read_all_text_retry_async x = v10 x │
00:11:10 #31507 [verbose] > │ () │
00:11:10 #31508 [verbose] > │ #endif │
00:11:10 #31509 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:11:10 #31510 [verbose] > │ () │
00:11:10 #31511 [verbose] > │ #endif │
00:11:10 #31512 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || FABLE_COMPILER_DART │
00:11:10 #31513 [verbose] > │ Unchecked.defaultof<unit> │
00:11:10 #31514 [verbose] > │ #endif │
00:11:10 #31515 [verbose] > │ |> fun x -> _v0 <- Some x │
00:11:10 #31516 [verbose] > │ _v0.Value │
00:11:10 #31517 [verbose] > │ let v11 : (unit -> string) = closure32() │
00:11:10 #31518 [verbose] > │ let create_temp_directory_name () = v11 () │
00:11:10 #31519 [verbose] > │ let v12 : (unit -> struct (string * System.IDisposable)) = closure34() │
00:11:10 #31520 [verbose] > │ let create_temp_directory () = v12 () │
00:11:10 #31521 [verbose] > │ let v13 : (unit -> string) = closure37() │
00:11:10 #31522 [verbose] > │ let get_source_directory () = v13 () │
00:11:10 #31523 [verbose] > │ let v14 : (string -> (bool -> (string -> string))) = closure38() │
00:11:10 #31524 [verbose] > │ let find_parent x = v14 x │
00:11:10 #31525 [verbose] > │ let v15 : (string -> (string -> string)) = closure45() │
00:11:10 #31526 [verbose] > │ let (</>) x = v15 x │
00:11:10 #31527 [verbose] > │ () │
00:11:10 #31528 [verbose] > │ │
00:11:10 #31529 [verbose] > │ │
00:11:10 #31530 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:12 #31531 [verbose] > [NbConvertApp] Converting notebook file_system.dib.ipynb to html
00:11:12 #31532 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:11:12 #31533 [verbose] > validate(nb)
00:11:13 #31534 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:11:13 #31535 [verbose] > return _pygments_highlight(
00:11:14 #31536 [verbose] > [NbConvertApp] Writing 930414 bytes to file_system.dib.html
00:11:15 #31537 [debug] executeAsync / exitCode: 0 / output.Length: 1088159
00:11:15 #31538 [debug] main / executeCommand / exitCode: 0
00:11:15 #31539 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 rust.dib" -Retries 3"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:11:17 #31540 [verbose] >
00:11:17 #31541 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:17 #31542 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:17 #31543 [verbose] > │ # rust │
00:11:17 #31544 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:18 #31545 [verbose] >
00:11:18 #31546 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:18 #31547 [verbose] > // // test
00:11:18 #31548 [verbose] >
00:11:18 #31549 [verbose] > open testing
00:11:21 #31550 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:11:22 #31551 [verbose] >
00:11:22 #31552 [verbose] > ╭─[ 4.27s - stdout ]───────────────────────────────────────────────────────────╮
00:11:22 #31553 [verbose] > │ () │
00:11:22 #31554 [verbose] > │ │
00:11:22 #31555 [verbose] > │ │
00:11:22 #31556 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:22 #31557 [verbose] >
00:11:22 #31558 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:22 #31559 [verbose] > inl types () =
00:11:22 #31560 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"Func0<$0>\")>]] type
00:11:22 #31561 [verbose] > Func0<'T> = class end"
00:11:22 #31562 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"Func1<$0, $1>\")>]] type
00:11:22 #31563 [verbose] > Func0<'T, 'U> = class end"
00:11:22 #31564 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"Box<$0>\")>]] type Box<'T> =
00:11:22 #31565 [verbose] > class end"
00:11:22 #31566 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"dyn $0\")>]] type Dyn<'T> =
00:11:22 #31567 [verbose] > class end"
00:11:22 #31568 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"Fn() -> $0\")>]] type Fn<'T>
00:11:22 #31569 [verbose] > = class end"
00:11:22 #31570 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"Fn()\")>]] type FnUnit =
00:11:22 #31571 [verbose] > class end"
00:11:22 #31572 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"FnOnce() -> $0\")>]] type
00:11:22 #31573 [verbose] > FnOnce<'T> = class end"
00:11:22 #31574 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"Fn($0, $1)\")>]] type
00:11:22 #31575 [verbose] > ActionFn2<'T, 'U> = class end"
00:11:22 #31576 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"impl $0\")>]] type Impl<'T> =
00:11:22 #31577 [verbose] > class end"
00:11:22 #31578 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"mut $0\")>]] type Mut<'T> =
00:11:22 #31579 [verbose] > class end"
00:11:22 #31580 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"&$0\")>]] type Ref<'T> =
00:11:22 #31581 [verbose] > class end"
00:11:22 #31582 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"&'static $0\")>]] type
00:11:22 #31583 [verbose] > StaticRef<'T> = class end"
00:11:22 #31584 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"MutCell<$0>\")>]] type
00:11:22 #31585 [verbose] > MutCell<'T> = class end"
00:11:22 #31586 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::any::Any\")>]] type
00:11:22 #31587 [verbose] > std_any_Any = class end"
00:11:22 #31588 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::cell::RefCell<$0>\")>]]
00:11:22 #31589 [verbose] > type std_cell_RefCell<'T> = class end"
00:11:22 #31590 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::pin::Pin<$0>\")>]] type
00:11:22 #31591 [verbose] > std_pin_Pin<'T> = class end"
00:11:22 #31592 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::rc::Rc<$0>\")>]] type
00:11:22 #31593 [verbose] > std_rc_Rc<'T> = class end"
00:11:22 #31594 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::rc::Weak<$0>\")>]] type
00:11:22 #31595 [verbose] > std_rc_Weak<'T> = class end"
00:11:22 #31596 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::sync::Arc<$0>\")>]] type
00:11:22 #31597 [verbose] > std_sync_Arc<'T> = class end"
00:11:22 #31598 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3e20d3e3caeadf90605cf83818836a8b0dcdcf1b00a032a9e93bfb17b605aefb\main.spi
00:11:22 #31599 [verbose] >
00:11:22 #31600 [verbose] > ╭─[ 288.21ms - stdout ]────────────────────────────────────────────────────────╮
00:11:22 #31601 [verbose] > │ () │
00:11:22 #31602 [verbose] > │ │
00:11:22 #31603 [verbose] > │ │
00:11:22 #31604 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:22 #31605 [verbose] >
00:11:22 #31606 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:22 #31607 [verbose] > nominal ref_cell t = $"std_cell_RefCell<`t>"
00:11:22 #31608 [verbose] > nominal rc t = $"std_rc_Rc<`t>"
00:11:22 #31609 [verbose] > nominal weak_rc t = $"std_rc_Weak<`t>"
00:11:22 #31610 [verbose] > nominal box t = $"Box<`t>"
00:11:22 #31611 [verbose] > nominal mut_cell t = $"MutCell<`t>"
00:11:22 #31612 [verbose] > nominal pin t = $"std_pin_Pin<`t>"
00:11:22 #31613 [verbose] > nominal arc t = $"std_sync_Arc<`t>"
00:11:22 #31614 [verbose] > nominal dyn' t = $"Dyn<`t>"
00:11:22 #31615 [verbose] > nominal fn' t = $"Fn<`t>"
00:11:22 #31616 [verbose] > nominal action_fn2 t u = $"ActionFn2<`t, `u>"
00:11:22 #31617 [verbose] > nominal fn_once t = $"FnOnce<`t>"
00:11:22 #31618 [verbose] > nominal fn_unit = $"FnUnit"
00:11:22 #31619 [verbose] > nominal func0 t = $"Func0<`t>"
00:11:22 #31620 [verbose] > nominal func1 t u = $"Func0<`t, `u>"
00:11:22 #31621 [verbose] > nominal impl t = $"Impl<`t>"
00:11:22 #31622 [verbose] > nominal mut' t = $"Mut<`t>"
00:11:22 #31623 [verbose] > nominal ref' t = $"Ref<`t>"
00:11:22 #31624 [verbose] > nominal static_ref' t = $"StaticRef<`t>"
00:11:22 #31625 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\df9de4a83d249a050dd047d71fcda7af056c90e88daebc86b809bc739c47e9fd\main.spi
00:11:22 #31626 [verbose] >
00:11:22 #31627 [verbose] > ╭─[ 276.27ms - stdout ]────────────────────────────────────────────────────────╮
00:11:22 #31628 [verbose] > │ () │
00:11:22 #31629 [verbose] > │ │
00:11:22 #31630 [verbose] > │ │
00:11:22 #31631 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:22 #31632 [verbose] >
00:11:22 #31633 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:22 #31634 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:22 #31635 [verbose] > │ ## emit_expr │
00:11:22 #31636 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:22 #31637 [verbose] >
00:11:22 #31638 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:22 #31639 [verbose] > inl emit_expr forall a t. (args : a) (code : string) : t =
00:11:22 #31640 [verbose] > real
00:11:22 #31641 [verbose] > $"Fable.Core.RustInterop.emitRustExpr !args !code" : t
00:11:22 #31642 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\713ea7ed29648ee169800dcb141af81be3a4cbf4a6b811a1ede2bf02689796a0\main.spi
00:11:23 #31643 [verbose] >
00:11:23 #31644 [verbose] > ╭─[ 280.66ms - stdout ]────────────────────────────────────────────────────────╮
00:11:23 #31645 [verbose] > │ () │
00:11:23 #31646 [verbose] > │ │
00:11:23 #31647 [verbose] > │ │
00:11:23 #31648 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:23 #31649 [verbose] >
00:11:23 #31650 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:23 #31651 [verbose] > inl (~!\) forall t. (code : string) : t =
00:11:23 #31652 [verbose] > emit_expr () code
00:11:23 #31653 [verbose] >
00:11:23 #31654 [verbose] > inl (~!\\) forall t u. ((args : t), (code : string)) : u =
00:11:23 #31655 [verbose] > emit_expr args code
00:11:23 #31656 [verbose] >
00:11:23 #31657 [verbose] > inl emit forall t. (x : t) : t =
00:11:23 #31658 [verbose] > !\\(x, $'"$0"')
00:11:23 #31659 [verbose] >
00:11:23 #31660 [verbose] > inl emit' forall t. (x : t) : t =
00:11:23 #31661 [verbose] > !\\(x, $'"let !x = $0"')
00:11:23 #31662 [verbose] > x
00:11:23 #31663 [verbose] >
00:11:23 #31664 [verbose] > inl new_box forall t. (x : t) : box t =
00:11:23 #31665 [verbose] > inl x = join x
00:11:23 #31666 [verbose] > !\($'"Box::new(!x)"')
00:11:23 #31667 [verbose] >
00:11:23 #31668 [verbose] > inl new_rc forall t. (x : t) : rc t =
00:11:23 #31669 [verbose] > inl x = join x
00:11:23 #31670 [verbose] > !\($'"std::rc::Rc::new(!x)"')
00:11:23 #31671 [verbose] >
00:11:23 #31672 [verbose] > inl rc_clone forall t. (x : rc t) : rc t =
00:11:23 #31673 [verbose] > inl x = join x
00:11:23 #31674 [verbose] > !\($'"std::rc::Rc::clone(&!x)"')
00:11:23 #31675 [verbose] >
00:11:23 #31676 [verbose] > inl rc_downgrade forall t. (x : rc t) : weak_rc t =
00:11:23 #31677 [verbose] > inl x = join x
00:11:23 #31678 [verbose] > !\($'"std::rc::Rc::downgrade(&!x)"')
00:11:23 #31679 [verbose] >
00:11:23 #31680 [verbose] > inl new_ref_cell forall t. (x : t) : ref_cell t =
00:11:23 #31681 [verbose] > inl x = join x
00:11:23 #31682 [verbose] > !\($'"std::cell::RefCell::new(!x)"')
00:11:23 #31683 [verbose] >
00:11:23 #31684 [verbose] > inl ref_cell_borrow forall t. (x : rc (ref_cell t)) : t =
00:11:23 #31685 [verbose] > inl x = join x
00:11:23 #31686 [verbose] > !\($'"*std::cell::RefCell::borrow(&std::rc::Rc::clone(&!x))"')
00:11:23 #31687 [verbose] >
00:11:23 #31688 [verbose] > inl ref_cell_borrow_mut forall t. (x : rc (ref_cell t)) : mut' t =
00:11:23 #31689 [verbose] > inl x = join x
00:11:23 #31690 [verbose] > !\($'"*std::cell::RefCell::borrow_mut(&std::rc::Rc::clone(&!x))"')
00:11:23 #31691 [verbose] >
00:11:23 #31692 [verbose] > inl to_mut forall t. (x : t) : mut' t =
00:11:23 #31693 [verbose] > // !\($'"let mut !x = !x"')
00:11:23 #31694 [verbose] > // !\($'"!x"')
00:11:23 #31695 [verbose] > emit_expr () $"\"let mut !x = !x\""
00:11:23 #31696 [verbose] > emit_expr () $"\"!x\""
00:11:23 #31697 [verbose] >
00:11:23 #31698 [verbose] > inl ref_map forall t u. (fn : t -> u) (x : ref' t) : ref' u =
00:11:23 #31699 [verbose] > !\($'"!fn(!x)"')
00:11:23 #31700 [verbose] >
00:11:23 #31701 [verbose] > inl from_mut forall t. (x : mut' t) : t =
00:11:23 #31702 [verbose] > !\($'"!x"')
00:11:23 #31703 [verbose] >
00:11:23 #31704 [verbose] > inl new_arc forall t. (x : t) : arc t =
00:11:23 #31705 [verbose] > inl x = join x
00:11:23 #31706 [verbose] > !\($'"std::sync::Arc::new(!x)"')
00:11:23 #31707 [verbose] >
00:11:23 #31708 [verbose] > inl box_fn forall t. (x : () -> ()) : box t =
00:11:23 #31709 [verbose] > inl x = join x
00:11:23 #31710 [verbose] > !\($'"Box::new(move || !x())"')
00:11:23 #31711 [verbose] >
00:11:23 #31712 [verbose] > inl new_pin forall t. (x : t) : pin (box t) =
00:11:23 #31713 [verbose] > inl x = join x
00:11:23 #31714 [verbose] > !\($'"Box::pin(!x)"')
00:11:23 #31715 [verbose] >
00:11:23 #31716 [verbose] > inl deref forall t. (ref : ref' t) : t =
00:11:23 #31717 [verbose] > inl ref = join ref
00:11:23 #31718 [verbose] > !\($'"*!ref"')
00:11:23 #31719 [verbose] >
00:11:23 #31720 [verbose] > inl ops_deref forall t. (ref : t) : t =
00:11:23 #31721 [verbose] > inl ref = join ref
00:11:23 #31722 [verbose] > !\($'"core::ops::Deref::deref(&!ref)"')
00:11:23 #31723 [verbose] >
00:11:23 #31724 [verbose] > inl func0_get forall t. (x : func0 t) : t =
00:11:23 #31725 [verbose] > inl x = join x
00:11:23 #31726 [verbose] > !\($'"!x()"')
00:11:23 #31727 [verbose] >
00:11:23 #31728 [verbose] > inl func0_move forall t. (fn : func0 t) : t =
00:11:23 #31729 [verbose] > inl fn = join fn
00:11:23 #31730 [verbose] > !\($'"(move || !fn())()"')
00:11:23 #31731 [verbose] >
00:11:23 #31732 [verbose] > inl move forall t. (fn : () -> t) : func0 t =
00:11:23 #31733 [verbose] > !\\(fn, $'"Func0::new(move || $0())"')
00:11:23 #31734 [verbose] >
00:11:23 #31735 [verbose] > inl to_static_ref_unbox forall t. (x : ref' t) : static_ref' t =
00:11:23 #31736 [verbose] > $"!x |> unbox"
00:11:23 #31737 [verbose] >
00:11:23 #31738 [verbose] > inl from_static_ref_unbox forall t. (x : static_ref' t) : ref' t =
00:11:23 #31739 [verbose] > $"!x |> unbox"
00:11:23 #31740 [verbose] >
00:11:23 #31741 [verbose] > inl box_leak forall t. (x : box t) : static_ref' (mut' t) =
00:11:23 #31742 [verbose] > emit_expr () $"\"Box::leak(!x)\""
00:11:23 #31743 [verbose] >
00:11:23 #31744 [verbose] >
00:11:23 #31745 [verbose] > inl fix_closure depth' x' =
00:11:23 #31746 [verbose] > inl depth = depth' |> fst
00:11:23 #31747 [verbose] > if depth = 1
00:11:23 #31748 [verbose] > then !\($'"!x' })"')
00:11:23 #31749 [verbose] > elif depth = 2
00:11:23 #31750 [verbose] > then !\($'"!x' }})"')
00:11:23 #31751 [verbose] > elif depth = 3
00:11:23 #31752 [verbose] > then !\($'"!x' }}})"')
00:11:23 #31753 [verbose] > elif depth = 4
00:11:23 #31754 [verbose] > then !\($'"!x' }}}})"')
00:11:23 #31755 [verbose] > elif depth = 5
00:11:23 #31756 [verbose] > then !\($'"!x' }}}}})"')
00:11:23 #31757 [verbose] > elif depth = 6 // , 4) // ?
00:11:23 #31758 [verbose] > then !\($'"!x' }}}}}})"')
00:11:23 #31759 [verbose] > elif depth = 7 // , 5) // 7
00:11:23 #31760 [verbose] > then !\($'"!x' }}}}}}})"')
00:11:23 #31761 [verbose] > elif depth = 8 // , 5) // 7
00:11:23 #31762 [verbose] > then !\($'"!x' }}}}}}}})"')
00:11:23 #31763 [verbose] >
00:11:23 #31764 [verbose] > inl depth = depth' |> snd
00:11:23 #31765 [verbose] > if depth = 1
00:11:23 #31766 [verbose] > then !\($'"{ //"')
00:11:23 #31767 [verbose] > elif depth = 2
00:11:23 #31768 [verbose] > then !\($'"{{ //"')
00:11:23 #31769 [verbose] > elif depth = 3
00:11:23 #31770 [verbose] > then !\($'"{{{ //"')
00:11:23 #31771 [verbose] > elif depth = 4
00:11:23 #31772 [verbose] > then !\($'"{{{{ //"')
00:11:23 #31773 [verbose] > elif depth = 5
00:11:23 #31774 [verbose] > then !\($'"{{{{{ //"')
00:11:23 #31775 [verbose] > elif depth = 6
00:11:23 #31776 [verbose] > then !\($'"{{{{{{ //"')
00:11:23 #31777 [verbose] > elif depth = 7
00:11:23 #31778 [verbose] > then !\($'"{{{{{{{ //"')
00:11:23 #31779 [verbose] > elif depth = 8
00:11:23 #31780 [verbose] > then !\($'"{{{{{{{{ //"')
00:11:23 #31781 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b75c03298c9ae011648653395674b57e5031fdbafcb6cddff0b0eeb5b7431661\main.spi
00:11:23 #31782 [verbose] >
00:11:23 #31783 [verbose] > ╭─[ 214.38ms - stdout ]────────────────────────────────────────────────────────╮
00:11:23 #31784 [verbose] > │ () │
00:11:23 #31785 [verbose] > │ │
00:11:23 #31786 [verbose] > │ │
00:11:23 #31787 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:25 #31788 [verbose] > [NbConvertApp] Converting notebook rust.dib.ipynb to html
00:11:25 #31789 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:11:25 #31790 [verbose] > validate(nb)
00:11:25 #31791 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:11:25 #31792 [verbose] > return _pygments_highlight(
00:11:25 #31793 [verbose] > [NbConvertApp] Writing 305573 bytes to rust.dib.html
00:11:26 #31794 [debug] executeAsync / exitCode: 0 / output.Length: 9782
00:11:26 #31795 [debug] main / executeCommand / exitCode: 0
00:11:26 #31796 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 physics.dib" -Retries 3"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:11:29 #31797 [verbose] >
00:11:29 #31798 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:29 #31799 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:29 #31800 [verbose] > │ # physics │
00:11:29 #31801 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:29 #31802 [verbose] >
00:11:29 #31803 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:11:29 #31804 [verbose] > #!import ../../lib/fsharp/Plotting.dib
00:11:29 #31805 [verbose] >
00:11:29 #31806 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:29 #31807 [verbose] > #r
00:11:29 #31808 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:11:29 #31809 [verbose] > spNetCore.Html.Abstractions.dll"
00:11:29 #31810 [verbose] > #r
00:11:29 #31811 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:11:29 #31812 [verbose] > otNet.Interactive.dll"
00:11:29 #31813 [verbose] > #r
00:11:29 #31814 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:11:29 #31815 [verbose] > otNet.Interactive.FSharp.dll"
00:11:29 #31816 [verbose] > #r
00:11:29 #31817 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:11:29 #31818 [verbose] > otNet.Interactive.Formatting.dll"
00:11:29 #31819 [verbose] > open System
00:11:29 #31820 [verbose] > open System.IO
00:11:29 #31821 [verbose] > open System.Text
00:11:29 #31822 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:11:33 #31823 [verbose] >
00:11:33 #31824 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:33 #31825 [verbose] > #r
00:11:33 #31826 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:11:33 #31827 [verbose] > otNet.Interactive.FSharp.dll"
00:11:33 #31828 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:11:33 #31829 [verbose] > #r
00:11:33 #31830 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:11:33 #31831 [verbose] > otNet.Interactive.dll"
00:11:33 #31832 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:11:33 #31833 [verbose] >
00:11:33 #31834 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:33 #31835 [verbose] > //// test
00:11:33 #31836 [verbose] >
00:11:33 #31837 [verbose] > Formatter.ListExpansionLimit <- 100
00:11:33 #31838 [verbose] >
00:11:33 #31839 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:33 #31840 [verbose] > #r
00:11:33 #31841 [verbose] > @"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan
00:11:33 #31842 [verbose] > dard2.1/FSharp.Control.AsyncSeq.dll"
00:11:33 #31843 [verbose] > #r
00:11:33 #31844 [verbose] > @"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.
00:11:33 #31845 [verbose] > 0/System.Reactive.dll"
00:11:33 #31846 [verbose] > #r
00:11:33 #31847 [verbose] > @"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib
00:11:33 #31848 [verbose] > netstandard2.0/System.Reactive.Linq.dll"
00:11:33 #31849 [verbose] > #r
00:11:33 #31850 [verbose] > @"../../../../../../../.nuget/packages/argu/6.2.2/lib/netstandard2.0/Argu.dll"
00:11:33 #31851 [verbose] > #r
00:11:33 #31852 [verbose] > @"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li
00:11:33 #31853 [verbose] > b/net6.0/System.CommandLine.dll"
00:11:33 #31854 [verbose] > #r
00:11:33 #31855 [verbose] > @"../../../../../../../.nuget/packages/fsharp.json/0.4.1/lib/netstandard2.0/FSha
00:11:33 #31856 [verbose] > rp.Json.dll"
00:11:34 #31857 [verbose] >
00:11:34 #31858 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:34 #31859 [verbose] > type [[<Struct>]] US0 =
00:11:34 #31860 [verbose] > | US0_0
00:11:34 #31861 [verbose] > | US0_1
00:11:34 #31862 [verbose] > and [[<Struct>]] US1 =
00:11:34 #31863 [verbose] > | US1_0 of f0_0 : US0
00:11:34 #31864 [verbose] > | US1_1
00:11:34 #31865 [verbose] > let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
00:11:34 #31866 [verbose] > let v1 : System.IDisposable option = None
00:11:34 #31867 [verbose] > let mutable _v1 = v1
00:11:34 #31868 [verbose] > #if FABLE_COMPILER_RUST && !WASM && !CONTRACT
00:11:34 #31869 [verbose] > let v2 : System.IDisposable = null |> unbox<System.IDisposable>
00:11:34 #31870 [verbose] > v2
00:11:34 #31871 [verbose] > #endif
00:11:34 #31872 [verbose] > #if FABLE_COMPILER_RUST && WASM
00:11:34 #31873 [verbose] > let v3 : System.IDisposable = null |> unbox<System.IDisposable>
00:11:34 #31874 [verbose] > v3
00:11:34 #31875 [verbose] > #endif
00:11:34 #31876 [verbose] > #if FABLE_COMPILER_RUST && CONTRACT
00:11:34 #31877 [verbose] > let v4 : System.IDisposable = null |> unbox<System.IDisposable>
00:11:34 #31878 [verbose] > v4
00:11:34 #31879 [verbose] > #endif
00:11:34 #31880 [verbose] > #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
00:11:34 #31881 [verbose] > !WASM && !CONTRACT
00:11:34 #31882 [verbose] > let v5 : System.ID...
00:11:35 #31883 [verbose] >
00:11:35 #31884 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:35 #31885 [verbose] > type Mut0 = {mutable l0 : int32; mutable l1 : string}
00:11:35 #31886 [verbose] > and Mut1 = {mutable l0 : int32}
00:11:35 #31887 [verbose] > let rec closure1 (v0 : string) (v1 : string) : bool =
00:11:35 #31888 [verbose] > let v2 : bool = v1.Contains v0
00:11:35 #31889 [verbose] > v2
00:11:35 #31890 [verbose] > and closure0 () (v0 : string) : (string -> bool) =
00:11:35 #31891 [verbose] > closure1(v0)
00:11:35 #31892 [verbose] > and closure3 (v0 : string) (v1 : string) : bool =
00:11:35 #31893 [verbose] > let v2 : bool = v1.EndsWith v0
00:11:35 #31894 [verbose] > v2
00:11:35 #31895 [verbose] > and closure2 () (v0 : string) : (string -> bool) =
00:11:35 #31896 [verbose] > closure3(v0)
00:11:35 #31897 [verbose] > and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
00:11:35 #31898 [verbose] > let v3 : string = v2.PadLeft (v0, v1)
00:11:35 #31899 [verbose] > v3
00:11:35 #31900 [verbose] > and closure5 (v0 : int32) (v1 : char) : (string -> string) =
00:11:35 #31901 [verbose] > closure6(v0, v1)
00:11:35 #31902 [verbose] > and closure4 () (v0 : int32) : (char -> (string -> string)) =
00:11:35 #31903 [verbose] > closure5(v0)
00:11:35 #31904 [verbose] > and closure8 (v0 : int32) (v1 : string) : string =
00:11:35 #31905 [verbose] > let v2 : stri...
00:11:36 #31906 [verbose] >
00:11:36 #31907 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:36 #31908 [verbose] > let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
00:11:36 #31909 [verbose] > let v2 : (System.Guid -> string) = _.ToString()
00:11:36 #31910 [verbose] > let v3 : string = v2 v0
00:11:36 #31911 [verbose] > let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
00:11:36 #31912 [verbose] > let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
00:11:36 #31913 [verbose] > v5
00:11:36 #31914 [verbose] > and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
00:11:36 #31915 [verbose] > closure1(v0)
00:11:36 #31916 [verbose] > and closure5 (v0 : string, v1 : string) (v2 : string) : string =
00:11:36 #31917 [verbose] > let v3 : string = v2.Replace (v0, v1)
00:11:36 #31918 [verbose] > v3
00:11:36 #31919 [verbose] > and closure4 (v0 : string) (v1 : string) : (string -> string) =
00:11:36 #31920 [verbose] > closure5(v0, v1)
00:11:36 #31921 [verbose] > and closure3 () (v0 : string) : (string -> (string -> string)) =
00:11:36 #31922 [verbose] > closure4(v0)
00:11:36 #31923 [verbose] > and method0 () : (string -> (string -> (string -> string))) =
00:11:36 #31924 [verbose] > closure3()
00:11:36 #31925 [verbose] > and closure2 (...
00:11:36 #31926 [verbose] >
00:11:36 #31927 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:36 #31928 [verbose] > #if FABLE_COMPILER // file_system.types
00:11:36 #31929 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
00:11:36 #31930 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
00:11:36 #31931 [verbose] > base64_DecodeError = class end
00:11:36 #31932 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
00:11:36 #31933 [verbose] > = class end
00:11:36 #31934 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
00:11:36 #31935 [verbose] > = class end
00:11:36 #31936 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
00:11:36 #31937 [verbose] > serde_json_Error = class end
00:11:36 #31938 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
00:11:36 #31939 [verbose] > serde_json_Value = class end
00:11:36 #31940 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
00:11:36 #31941 [verbose] > serde_wasm_bindgen_Error = class end
00:11:36 #31942 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
00:11:37 #31943 [verbose] >
00:11:37 #31944 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:37 #31945 [verbose] > module State = let mutable trace_state = None
00:11:37 #31946 [verbose] > type [[<Struct>]] US0 =
00:11:37 #31947 [verbose] > | US0_0
00:11:37 #31948 [verbose] > | US0_1
00:11:37 #31949 [verbose] > | US0_2
00:11:37 #31950 [verbose] > | US0_3
00:11:37 #31951 [verbose] > | US0_4
00:11:37 #31952 [verbose] > and Mut0 = {mutable l0 : int64}
00:11:37 #31953 [verbose] > and Mut1 = {mutable l0 : bool}
00:11:37 #31954 [verbose] > and Mut2 = {mutable l0 : US0}
00:11:37 #31955 [verbose] > and [[<Struct>]] US1 =
00:11:37 #31956 [verbose] > | US1_0 of f0_0 : int64
00:11:37 #31957 [verbose] > | US1_1
00:11:37 #31958 [verbose] > and [[<Struct>]] US2 =
00:11:37 #31959 [verbose] > | US2_0 of f0_0 : int64
00:11:37 #31960 [verbose] > | US2_1
00:11:37 #31961 [verbose] > let rec method1 (v0 : int64 option) : int64 option =
00:11:37 #31962 [verbose] > v0
00:11:37 #31963 [verbose] > and method2 (v0 : int64 option) : int64 option =
00:11:37 #31964 [verbose] > v0
00:11:37 #31965 [verbose] > and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
00:11:37 #31966 [verbose] > let v0 : Mut1 = {l0 = true} : Mut1
00:11:37 #31967 [verbose] > let v1 : Mut0 = {l0 = 0L} : Mut0
00:11:37 #31968 [verbose] > let v2 : US0 = US0_0
00:11:37 #31969 [verbose] > let v3 : Mut2 = {l0 = v2} : Mut2
00:11:37 #31970 [verbose] > let v4 : Mut1 = {l0 = false} : Mut1
00:11:37 #31971 [verbose] > let v5 : int64 option option = None
00:11:37 #31972 [verbose] > ...
00:11:38 #31973 [verbose] >
00:11:38 #31974 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:38 #31975 [verbose] > module SpiralTrace =
00:11:38 #31976 [verbose] > let get_trace_state () =
00:11:38 #31977 [verbose] > #if !INTERACTIVE
00:11:38 #31978 [verbose] > Trace.get_trace_state ()
00:11:38 #31979 [verbose] > #else
00:11:38 #31980 [verbose] > get_trace_state ()
00:11:38 #31981 [verbose] > #endif
00:11:38 #31982 [verbose] > let trace x =
00:11:38 #31983 [verbose] > #if !INTERACTIVE
00:11:38 #31984 [verbose] > Trace.trace x
00:11:38 #31985 [verbose] > #else
00:11:38 #31986 [verbose] > trace x
00:11:38 #31987 [verbose] > #endif
00:11:38 #31988 [verbose] >
00:11:38 #31989 [verbose] > let US0_0 =
00:11:38 #31990 [verbose] > #if !INTERACTIVE
00:11:38 #31991 [verbose] > Trace.US0_0
00:11:38 #31992 [verbose] > #else
00:11:38 #31993 [verbose] > US0_0
00:11:38 #31994 [verbose] > #endif
00:11:38 #31995 [verbose] >
00:11:38 #31996 [verbose] > let US0_1 =
00:11:38 #31997 [verbose] > #if !INTERACTIVE
00:11:38 #31998 [verbose] > Trace.US0_1
00:11:38 #31999 [verbose] > #else
00:11:38 #32000 [verbose] > US0_1
00:11:38 #32001 [verbose] > #endif
00:11:38 #32002 [verbose] >
00:11:38 #32003 [verbose] > let US0_2 =
00:11:38 #32004 [verbose] > #if !INTERACTIVE
00:11:38 #32005 [verbose] > Trace.US0_2
00:11:38 #32006 [verbose] > #else
00:11:38 #32007 [verbose] > US0_2
00:11:38 #32008 [verbose] > #endif
00:11:38 #32009 [verbose] >
00:11:38 #32010 [verbose] > let US0_3 =
00:11:38 #32011 [verbose] > #if !INTERACTIVE
00:11:38 #32012 [verbose] > Trace.US0_3
00:11:38 #32013 [verbose] > #else
00:11:38 #32014 [verbose] > US0_3
00:11:38 #32015 [verbose] > #endif
00:11:38 #32016 [verbose] >
00:11:38 #32017 [verbose] > let US0_4 =
00:11:38 #32018 [verbose] > #if !INTERACTIVE
00:11:38 #32019 [verbose] > Trace.US0_4
00:11:38 #32020 [verbose] > #else
00:11:38 #32021 [verbose] > US0_4
00:11:38 #32022 [verbose] > #endif
00:11:38 #32023 [verbose] >
00:11:38 #32024 [verbose] >
00:11:38 #32025 [verbose] > #if !FABLE_COMPILER && !WASM && !CONTRACT
00:11:38 #32026 [verbose] > module SpiralDateTime =
00:11:38 #32027 [verbose] > let format x =
00:11:38 #32028 [verbose] > #if !INTERACTIVE
00:11:38 #32029 [verbose] > Date_ti...
00:11:38 #32030 [verbose] >
00:11:38 #32031 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:38 #32032 [verbose] > #if !INTERACTIVE
00:11:38 #32033 [verbose] > namespace Polyglot
00:11:38 #32034 [verbose] > #endif
00:11:38 #32035 [verbose] >
00:11:38 #32036 [verbose] > module Common =
00:11:38 #32037 [verbose] >
00:11:38 #32038 [verbose] > #if !INTERACTIVE
00:11:38 #32039 [verbose] > open Lib
00:11:38 #32040 [verbose] > #endif
00:11:38 #32041 [verbose] >
00:11:38 #32042 [verbose] > let nl = System.Environment.NewLine
00:11:38 #32043 [verbose] > let q = @""""
00:11:38 #32044 [verbose] >
00:11:38 #32045 [verbose] > let inline cons head tail = head :: tail
00:11:38 #32046 [verbose] >
00:11:38 #32047 [verbose] > /// ## memoize
00:11:38 #32048 [verbose] >
00:11:38 #32049 [verbose] > let inline memoize fn =
00:11:38 #32050 [verbose] > let result = lazy fn ()
00:11:38 #32051 [verbose] > fun () -> result.Value
00:11:38 #32052 [verbose] >
00:11:38 #32053 [verbose] > /// ## TraceLevel
00:11:38 #32054 [verbose] >
00:11:38 #32055 [verbose] > type TraceLevel =
00:11:38 #32056 [verbose] > | Verbose
00:11:38 #32057 [verbose] > | Debug
00:11:38 #32058 [verbose] > | Info
00:11:38 #32059 [verbose] > | Warning
00:11:38 #32060 [verbose] > | Critical
00:11:38 #32061 [verbose] >
00:11:38 #32062 [verbose] > let inline getLocals () = ""
00:11:38 #32063 [verbose] >
00:11:38 #32064 [verbose] > /// ## trace
00:11:38 #32065 [verbose] >
00:11:38 #32066 [verbose] > let to_trace_level = function
00:11:38 #32067 [verbose] > | Verbose -> SpiralTrace.US0_0
00:11:38 #32068 [verbose] > | Debug -> SpiralTrace.US0_1
00:11:38 #32069 [verbose] > | Info -> SpiralTrace.US0_2
00:11:38 #32070 [verbose] > | Warning -> SpiralTrace.US0_3
00:11:38 #32071 [verbose] > | Critical -> SpiralTrace.US0_4
00:11:38 #32072 [verbose] >
00:11:38 #32073 [verbose] > let trace level fn g...
00:11:38 #32074 [verbose] >
00:11:38 #32075 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:38 #32076 [verbose] > #if !INTERACTIVE
00:11:38 #32077 [verbose] > namespace Polyglot
00:11:38 #32078 [verbose] > #endif
00:11:38 #32079 [verbose] >
00:11:38 #32080 [verbose] > module CommonFSharp =
00:11:38 #32081 [verbose] >
00:11:38 #32082 [verbose] > open Common
00:11:38 #32083 [verbose] >
00:11:38 #32084 [verbose] > /// ## getUnionCaseName
00:11:38 #32085 [verbose] >
00:11:38 #32086 [verbose] > let inline getUnionCaseName<'T> (x: 'T) =
00:11:38 #32087 [verbose] > match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with
00:11:38 #32088 [verbose] > | case, _ -> case.Name
00:11:38 #32089 [verbose] >
00:11:38 #32090 [verbose] >
00:11:38 #32091 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:38 #32092 [verbose] > #if !INTERACTIVE
00:11:38 #32093 [verbose] > namespace Polyglot
00:11:38 #32094 [verbose] > #endif
00:11:38 #32095 [verbose] >
00:11:38 #32096 [verbose] > module Crypto =
00:11:38 #32097 [verbose] >
00:11:38 #32098 [verbose] > #if !INTERACTIVE
00:11:38 #32099 [verbose] > open Lib
00:11:38 #32100 [verbose] > #endif
00:11:38 #32101 [verbose] >
00:11:38 #32102 [verbose] > open Common
00:11:38 #32103 [verbose] >
00:11:38 #32104 [verbose] > /// ## hashText
00:11:38 #32105 [verbose] >
00:11:38 #32106 [verbose] > let hashText (input : string) =
00:11:38 #32107 [verbose] > use sha256 = System.Security.Cryptography.SHA256.Create ()
00:11:38 #32108 [verbose] > input
00:11:38 #32109 [verbose] > |> System.Text.Encoding.UTF8.GetBytes
00:11:38 #32110 [verbose] > |> sha256.ComputeHash
00:11:38 #32111 [verbose] > |> Array.map (fun b -> b.ToString "x2")
00:11:38 #32112 [verbose] > |> SpiralSm.concat ""
00:11:38 #32113 [verbose] >
00:11:38 #32114 [verbose] >
00:11:38 #32115 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:38 #32116 [verbose] > #if !INTERACTIVE
00:11:38 #32117 [verbose] > namespace Polyglot
00:11:38 #32118 [verbose] > #endif
00:11:38 #32119 [verbose] >
00:11:38 #32120 [verbose] > module Async =
00:11:38 #32121 [verbose] >
00:11:38 #32122 [verbose] > #if !INTERACTIVE
00:11:38 #32123 [verbose] > open Lib
00:11:38 #32124 [verbose] > #endif
00:11:38 #32125 [verbose] >
00:11:38 #32126 [verbose] > open Common
00:11:38 #32127 [verbose] >
00:11:38 #32128 [verbose] > /// ## choice
00:11:38 #32129 [verbose] >
00:11:38 #32130 [verbose] > let inline choice asyncs = async {
00:11:38 #32131 [verbose] > let e = Event<_> ()
00:11:38 #32132 [verbose] > use cts = new System.Threading.CancellationTokenSource ()
00:11:38 #32133 [verbose] > let fn =
00:11:38 #32134 [verbose] > asyncs
00:11:38 #32135 [verbose] > |> Seq.map (fun a -> async {
00:11:38 #32136 [verbose] > let! x = a
00:11:38 #32137 [verbose] > e.Trigger x
00:11:38 #32138 [verbose] > })
00:11:38 #32139 [verbose] > |> Async.Parallel
00:11:38 #32140 [verbose] > |> Async.Ignore
00:11:38 #32141 [verbose] > Async.Start (fn, cts.Token)
00:11:38 #32142 [verbose] > let! result = Async.AwaitEvent e.Publish
00:11:38 #32143 [verbose] > cts.Cancel ()
00:11:38 #32144 [verbose] > return result
00:11:38 #32145 [verbose] > }
00:11:38 #32146 [verbose] >
00:11:38 #32147 [verbose] > /// ## map
00:11:38 #32148 [verbose] >
00:11:38 #32149 [verbose] > let inline map fn a = async {
00:11:38 #32150 [verbose] > let! x = a
00:11:38 #32151 [verbose] > return fn x
00:11:38 #32152 [verbose] > }
00:11:38 #32153 [verbose] >
00:11:38 #32154 [verbose] > /// ## catch
00:11:38 #32155 [verbose] >
00:11:38 #32156 [verbose] > let inline catch a =
00:11:38 #32157 [verbose] > ...
00:11:38 #32158 [verbose] >
00:11:39 #32159 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:39 #32160 [verbose] > #if !INTERACTIVE
00:11:39 #32161 [verbose] > namespace Polyglot
00:11:39 #32162 [verbose] > #endif
00:11:39 #32163 [verbose] >
00:11:39 #32164 [verbose] > module AsyncSeq =
00:11:39 #32165 [verbose] >
00:11:39 #32166 [verbose] > #if !INTERACTIVE
00:11:39 #32167 [verbose] > open Lib
00:11:39 #32168 [verbose] > #endif
00:11:39 #32169 [verbose] >
00:11:39 #32170 [verbose] > open Common
00:11:39 #32171 [verbose] >
00:11:39 #32172 [verbose] > /// ## subscribeEvent
00:11:39 #32173 [verbose] >
00:11:39 #32174 [verbose] > let inline subscribeEvent (event: IEvent<'H, 'A>) map =
00:11:39 #32175 [verbose] > let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,
00:11:39 #32176 [verbose] > 'A>(event.AddHandler, event.RemoveHandler)
00:11:39 #32177 [verbose] > System.Reactive.Linq.Observable.Select (observable, fun event -> map
00:11:39 #32178 [verbose] > event.EventArgs)
00:11:39 #32179 [verbose] > |> FSharp.Control.AsyncSeq.ofObservableBuffered
00:11:39 #32180 [verbose] >
00:11:39 #32181 [verbose] > let subscribeToken (token : System.Threading.CancellationToken) =
00:11:39 #32182 [verbose] > let tcs = new System.Threading.Tasks.TaskCompletionSource ()
00:11:39 #32183 [verbose] > System.Action tcs.SetResult |> token.Register |> ignore
00:11:39 #32184 [verbose] > let start = System.DateTime.Now.Ticks
00:11:39 #32185 [verbose] > FSharp.Control.A...
00:11:39 #32186 [verbose] >
00:11:39 #32187 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:39 #32188 [verbose] > #if !INTERACTIVE
00:11:39 #32189 [verbose] > namespace Polyglot
00:11:39 #32190 [verbose] > #endif
00:11:39 #32191 [verbose] >
00:11:39 #32192 [verbose] > module Networking =
00:11:39 #32193 [verbose] >
00:11:39 #32194 [verbose] > #if !INTERACTIVE
00:11:39 #32195 [verbose] > open Lib
00:11:39 #32196 [verbose] > #endif
00:11:39 #32197 [verbose] >
00:11:39 #32198 [verbose] > open Common
00:11:39 #32199 [verbose] >
00:11:39 #32200 [verbose] > /// ## testPortOpen
00:11:39 #32201 [verbose] >
00:11:39 #32202 [verbose] > let inline testPortOpen port = async {
00:11:39 #32203 [verbose] > let! ct = Async.CancellationToken
00:11:39 #32204 [verbose] > use client = new System.Net.Sockets.TcpClient ()
00:11:39 #32205 [verbose] > try
00:11:39 #32206 [verbose] > do! client.ConnectAsync ("127.0.0.1", port, ct) |>
00:11:39 #32207 [verbose] > Async.awaitValueTaskUnit
00:11:39 #32208 [verbose] > return true
00:11:39 #32209 [verbose] > with ex ->
00:11:39 #32210 [verbose] > trace Verbose (fun () -> $"testPortOpen / ex: {ex |>
00:11:39 #32211 [verbose] > SpiralSm.format_exception}") getLocals
00:11:39 #32212 [verbose] > return false
00:11:39 #32213 [verbose] > }
00:11:39 #32214 [verbose] >
00:11:39 #32215 [verbose] > let inline testPortOpenTimeout timeout port = async {
00:11:39 #32216 [verbose] > let! result =
00:11:39 #32217 [verbose] > testPortOpen port
00:11:39 #32218 [verbose] > |> Async.runWithTimeoutAsync timeout
00:11:39 #32219 [verbose] > return
00:11:39 #32220 [verbose] > ...
00:11:39 #32221 [verbose] >
00:11:39 #32222 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:39 #32223 [verbose] > #if !INTERACTIVE
00:11:39 #32224 [verbose] > namespace Polyglot
00:11:39 #32225 [verbose] > #endif
00:11:39 #32226 [verbose] >
00:11:39 #32227 [verbose] > module Runtime =
00:11:39 #32228 [verbose] >
00:11:39 #32229 [verbose] > #if !INTERACTIVE
00:11:39 #32230 [verbose] > open Lib
00:11:39 #32231 [verbose] > #endif
00:11:39 #32232 [verbose] >
00:11:39 #32233 [verbose] > open Common
00:11:39 #32234 [verbose] >
00:11:39 #32235 [verbose] > /// ## isWindows
00:11:39 #32236 [verbose] >
00:11:39 #32237 [verbose] > let isWindows =
00:11:39 #32238 [verbose] > fun () ->
00:11:39 #32239 [verbose] > System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform
00:11:39 #32240 [verbose] > System.Runtime.InteropServices.OSPlatform.Windows
00:11:39 #32241 [verbose] > |> memoize
00:11:39 #32242 [verbose] >
00:11:39 #32243 [verbose] > /// ## getExecutableSuffix
00:11:39 #32244 [verbose] >
00:11:39 #32245 [verbose] > let inline getExecutableSuffix () =
00:11:39 #32246 [verbose] > if isWindows ()
00:11:39 #32247 [verbose] > then ".exe"
00:11:39 #32248 [verbose] > else ""
00:11:39 #32249 [verbose] >
00:11:39 #32250 [verbose] > /// ## splitCommand
00:11:39 #32251 [verbose] >
00:11:39 #32252 [verbose] > type private CommandParseStep =
00:11:39 #32253 [verbose] > | Start
00:11:39 #32254 [verbose] > | Path of quoted: bool
00:11:39 #32255 [verbose] > | Arguments
00:11:39 #32256 [verbose] >
00:11:39 #32257 [verbose] > let splitCommand (command: string) =
00:11:39 #32258 [verbose] > let rec loop (path, args) chars step =
00:11:39 #32259 [verbose] > match chars, step with
00:11:39 #32260 [verbose] > | ('"' | '\'') ...
00:11:40 #32261 [verbose] >
00:11:40 #32262 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:40 #32263 [verbose] > #if !INTERACTIVE
00:11:40 #32264 [verbose] > namespace Polyglot
00:11:40 #32265 [verbose] > #endif
00:11:40 #32266 [verbose] >
00:11:40 #32267 [verbose] > module FileSystem =
00:11:40 #32268 [verbose] >
00:11:40 #32269 [verbose] > #if !INTERACTIVE
00:11:40 #32270 [verbose] > open Lib
00:11:40 #32271 [verbose] > #endif
00:11:40 #32272 [verbose] >
00:11:40 #32273 [verbose] > open Common
00:11:40 #32274 [verbose] > open SpiralFileSystem.Operators
00:11:40 #32275 [verbose] >
00:11:40 #32276 [verbose] > /// ## watchDirectory
00:11:40 #32277 [verbose] >
00:11:40 #32278 [verbose] > [[<RequireQualifiedAccess>]]
00:11:40 #32279 [verbose] > type FileSystemChangeType =
00:11:40 #32280 [verbose] > | Failure
00:11:40 #32281 [verbose] > | Changed
00:11:40 #32282 [verbose] > | Created
00:11:40 #32283 [verbose] > | Deleted
00:11:40 #32284 [verbose] > | Renamed
00:11:40 #32285 [verbose] >
00:11:40 #32286 [verbose] > [[<RequireQualifiedAccess>]]
00:11:40 #32287 [verbose] > type FileSystemChange =
00:11:40 #32288 [verbose] > | Failure of exn: exn
00:11:40 #32289 [verbose] > | Changed of path: string * content: string option
00:11:40 #32290 [verbose] > | Created of path: string * content: string option
00:11:40 #32291 [verbose] > | Deleted of path: string
00:11:40 #32292 [verbose] > | Renamed of oldPath: string * (string * string option)
00:11:40 #32293 [verbose] >
00:11:40 #32294 [verbose] >
00:11:40 #32295 [verbose] > let inline watchDirectoryWithFilter filter shouldReadContent path =
00:11:40 #32296 [verbose] > let fullPath = path |> Sys...
00:11:40 #32297 [verbose] >
00:11:40 #32298 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:40 #32299 [verbose] > #if !INTERACTIVE
00:11:40 #32300 [verbose] > open Lib
00:11:40 #32301 [verbose] > #endif
00:11:40 #32302 [verbose] >
00:11:40 #32303 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:40 #32304 [verbose] > open Common
00:11:40 #32305 [verbose] > open SpiralFileSystem.Operators
00:11:40 #32306 [verbose] >
00:11:40 #32307 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:11:40 #32308 [verbose] > let repositoryRoot = SpiralFileSystem.get_source_directory () |>
00:11:40 #32309 [verbose] > SpiralFileSystem.find_parent ".paket" false
00:11:40 #32310 [verbose] > let tmpSpiralPath = repositoryRoot </> "target/polyglot/plotting"
00:11:40 #32311 [verbose] > let linePlotsDataPath = tmpSpiralPath </> "line-data"
00:11:40 #32312 [verbose] > let linePlotsSvgPath = tmpSpiralPath </> "line-svg"
00:11:40 #32313 [verbose] >
00:11:40 #32314 [verbose] > [[ tmpSpiralPath; linePlotsDataPath; linePlotsSvgPath ]]
00:11:40 #32315 [verbose] > |> List.iter (fun dir -> if Directory.Exists dir |> not then
00:11:40 #32316 [verbose] > Directory.CreateDirectory dir |> ignore)
00:11:40 #32317 [verbose] >
00:11:40 #32318 [verbose] > Formatter.Register<struct (string * string * string * struct (string * float
00:11:40 #32319 [verbose] > array * float array) array)> (
00:11:40 #32320 [verbose] > (fun struct (caption, x_desc, y_desc, ys) ->
00:11:40 #32321 [verbose] > let json = (caption, x_desc, y_desc, ys) |> FSharp.Json.Json.serialize
00:11:40 #32322 [verbose] > async {
00:11:40 #32323 [verbose] > let hashHex = json |> Crypto.hashText
00:11:40 #32324 [verbose] > ...
00:11:41 #32325 [verbose] >
00:11:41 #32326 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:41 #32327 [verbose] > // // test
00:11:41 #32328 [verbose] >
00:11:41 #32329 [verbose] > open testing
00:11:42 #32330 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:11:42 #32331 [verbose] >
00:11:42 #32332 [verbose] > ╭─[ 1.40s - stdout ]───────────────────────────────────────────────────────────╮
00:11:42 #32333 [verbose] > │ () │
00:11:42 #32334 [verbose] > │ │
00:11:42 #32335 [verbose] > │ │
00:11:42 #32336 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:42 #32337 [verbose] >
00:11:42 #32338 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:42 #32339 [verbose] > open listm'_operators
00:11:42 #32340 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\57b3e233f8078b43cef5d98551cf98bae9dc3b21df53bed25f284d199ff708dd\main.spi
00:11:43 #32341 [verbose] >
00:11:43 #32342 [verbose] > ╭─[ 349.87ms - stdout ]────────────────────────────────────────────────────────╮
00:11:43 #32343 [verbose] > │ () │
00:11:43 #32344 [verbose] > │ │
00:11:43 #32345 [verbose] > │ │
00:11:43 #32346 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:43 #32347 [verbose] >
00:11:43 #32348 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:43 #32349 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:43 #32350 [verbose] > │ ## init_series │
00:11:43 #32351 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:43 #32352 [verbose] >
00:11:43 #32353 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:43 #32354 [verbose] > // // test
00:11:43 #32355 [verbose] >
00:11:43 #32356 [verbose] > inl x : a _ f64 = am'.init_series -3 3 0.01
00:11:43 #32357 [verbose] > inl y = x |> am.map math.square
00:11:43 #32358 [verbose] > "square", "x", "y", ;[[ "square", x, y ]]
00:11:43 #32359 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0449c0f87005948ff44a52881eaf559cb5510130812aa8fa45a5c226ff0d315b\main.spi
00:11:43 #32360 [verbose] >
00:11:43 #32361 [verbose] > ╭─[ 381.32ms - return value ]──────────────────────────────────────────────────╮
00:11:43 #32362 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:11:43 #32363 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:11:43 #32364 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:11:43 #32365 [verbose] > │ stroke="none"/> │
00:11:43 #32366 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:11:43 #32367 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:11:43 #32368 [verbose] > │ fill="#FFFFFF"> │
00:11:43 #32369 [verbose] > │ square │
00:11:43 #32370 [verbose] > │ </text> │
00:11:43 #32371 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │
00:11:43 #32372 [verbose] > │ y2="75"/> │
00:11:43 #32373 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:11:43 #32374 [verbose] > │ y2="75"/> │
00:11:43 #32375 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │
00:11:43 #32376 [verbose] > │ y2="75"/> │
00:11:43 #32377 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │
00:11:43 #32378 [verbose] > │ y2="75"/> │
00:11:43 #32379 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x2="94" │
00:11:43 #32380 [verbose] > │ ... │
00:11:43 #32381 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:43 #32382 [verbose] >
00:11:43 #32383 [verbose] > ╭─[ 399.69ms - stdout ]────────────────────────────────────────────────────────╮
00:11:43 #32384 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:11:43 #32385 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:11:43 #32386 [verbose] > │ let v1 : int32 = v0.l0 │
00:11:43 #32387 [verbose] > │ let v2 : bool = v1 < 601 │
00:11:43 #32388 [verbose] > │ v2 │
00:11:43 #32389 [verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool = │
00:11:43 #32390 [verbose] > │ let v2 : int32 = v1.l0 │
00:11:43 #32391 [verbose] > │ let v3 : bool = v2 < v0 │
00:11:43 #32392 [verbose] > │ v3 │
00:11:43 #32393 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:11:43 #32394 [verbose] > │ []) * (float [])) [])) = │
00:11:43 #32395 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (601) │
00:11:43 #32396 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:11:43 #32397 [verbose] > │ while method1(v1) do │
00:11:43 #32398 [verbose] > │ let v3 : int32 = v1.l0 │
00:11:43 #32399 [verbose] > │ let v4 : float = float v3 │
00:11:43 #32400 [verbose] > │ let v5 : float = 0.01 * v4 │
00:11:43 #32401 [verbose] > │ let v6 : float = -3.0 + v5 │
00:11:43 #32402 [verbose] > │ v0.[int v3] <- v6 │
00:11:43 #32403 [verbose] > │ let v7 : int32 = v3 + 1 │
00:11:43 #32404 [verbose] > │ v1.l0 <- v7 │
00:11:43 #32405 [verbose] > │ () │
00:11:43 #32406 [verbose] > │ let v8 : int32 = v0.Length │
00:11:43 #32407 [verbose] > │ let v9 : (float []) = Array.zeroCreate<float> (v8) │
00:11:43 #32408 [verbose] > │ let v10 : Mut0 = {l0 = 0} : Mut0 │
00:11:43 #32409 [verbose] > │ while method2(v8, v10) do │
00:11:43 #32410 [verbose] > │ let v12 : int32 = v10.l0 │
00:11:43 #32411 [verbose] > │ let v13 : float = v0.[int v12] │
00:11:43 #32412 [verbose] > │ let v14 : float = v13 ** 2.0 │
00:11:43 #32413 [verbose] > │ v9.[int v12] <- v14 │
00:11:43 #32414 [verbose] > │ let v15 : int32 = v12 + 1 │
00:11:43 #32415 [verbose] > │ v10.l0 <- v15 │
00:11:43 #32416 [verbose] > │ () │
00:11:43 #32417 [verbose] > │ let v16 : string = "square" │
00:11:43 #32418 [verbose] > │ let v17 : (struct (string * (float []) * (float [])) []) = [|struct │
00:11:43 #32419 [verbose] > │ (v16, v0, v9)|] │
00:11:43 #32420 [verbose] > │ let v18 : string = "x" │
00:11:43 #32421 [verbose] > │ let v19 : string = "y" │
00:11:43 #32422 [verbose] > │ struct (v16, v18, v19, v17) │
00:11:43 #32423 [verbose] > │ method0() │
00:11:43 #32424 [verbose] > │ │
00:11:43 #32425 [verbose] > │ │
00:11:43 #32426 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:43 #32427 [verbose] >
00:11:43 #32428 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:43 #32429 [verbose] > // // test
00:11:43 #32430 [verbose] >
00:11:43 #32431 [verbose] > inl x : a _ f64 = am'.init_series -10 10 0.1
00:11:43 #32432 [verbose] > inl y_sin = x |> am.map sin
00:11:43 #32433 [verbose] > inl y_cos = x |> am.map cos
00:11:43 #32434 [verbose] > "sin cos", "x", "y", ;[[ "sin", x, y_sin; "cos", x, y_cos ]]
00:11:43 #32435 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\31935fcb7a36c7d27e2a6736430fd8585c36b2dd921469c03f41118dbacd488c\main.spi
00:11:43 #32436 [verbose] >
00:11:43 #32437 [verbose] > ╭─[ 318.01ms - return value ]──────────────────────────────────────────────────╮
00:11:43 #32438 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:11:43 #32439 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:11:43 #32440 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:11:43 #32441 [verbose] > │ stroke="none"/> │
00:11:43 #32442 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:11:43 #32443 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:11:43 #32444 [verbose] > │ fill="#FFFFFF"> │
00:11:43 #32445 [verbose] > │ sin cos │
00:11:43 #32446 [verbose] > │ </text> │
00:11:43 #32447 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="57" y1="424" x2="57" │
00:11:43 #32448 [verbose] > │ y2="75"/> │
00:11:43 #32449 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:11:43 #32450 [verbose] > │ y2="75"/> │
00:11:43 #32451 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="82" y1="424" x2="82" │
00:11:43 #32452 [verbose] > │ y2="75"/> │
00:11:43 #32453 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x2="94" │
00:11:43 #32454 [verbose] > │ y2="75"/> │
00:11:43 #32455 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="107" y1="424" │
00:11:43 #32456 [verbose] > │ x2="10... │
00:11:43 #32457 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:43 #32458 [verbose] >
00:11:43 #32459 [verbose] > ╭─[ 332.17ms - stdout ]────────────────────────────────────────────────────────╮
00:11:43 #32460 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:11:43 #32461 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:11:43 #32462 [verbose] > │ let v1 : int32 = v0.l0 │
00:11:43 #32463 [verbose] > │ let v2 : bool = v1 < 201 │
00:11:43 #32464 [verbose] > │ v2 │
00:11:43 #32465 [verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool = │
00:11:43 #32466 [verbose] > │ let v2 : int32 = v1.l0 │
00:11:43 #32467 [verbose] > │ let v3 : bool = v2 < v0 │
00:11:43 #32468 [verbose] > │ v3 │
00:11:43 #32469 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:11:43 #32470 [verbose] > │ []) * (float [])) [])) = │
00:11:43 #32471 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (201) │
00:11:43 #32472 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:11:43 #32473 [verbose] > │ while method1(v1) do │
00:11:43 #32474 [verbose] > │ let v3 : int32 = v1.l0 │
00:11:43 #32475 [verbose] > │ let v4 : float = float v3 │
00:11:43 #32476 [verbose] > │ let v5 : float = 0.1 * v4 │
00:11:43 #32477 [verbose] > │ let v6 : float = -10.0 + v5 │
00:11:43 #32478 [verbose] > │ v0.[int v3] <- v6 │
00:11:43 #32479 [verbose] > │ let v7 : int32 = v3 + 1 │
00:11:43 #32480 [verbose] > │ v1.l0 <- v7 │
00:11:43 #32481 [verbose] > │ () │
00:11:43 #32482 [verbose] > │ let v8 : int32 = v0.Length │
00:11:43 #32483 [verbose] > │ let v9 : (float []) = Array.zeroCreate<float> (v8) │
00:11:43 #32484 [verbose] > │ let v10 : Mut0 = {l0 = 0} : Mut0 │
00:11:43 #32485 [verbose] > │ while method2(v8, v10) do │
00:11:43 #32486 [verbose] > │ let v12 : int32 = v10.l0 │
00:11:43 #32487 [verbose] > │ let v13 : float = v0.[int v12] │
00:11:43 #32488 [verbose] > │ let v14 : float = sin v13 │
00:11:43 #32489 [verbose] > │ v9.[int v12] <- v14 │
00:11:43 #32490 [verbose] > │ let v15 : int32 = v12 + 1 │
00:11:43 #32491 [verbose] > │ v10.l0 <- v15 │
00:11:43 #32492 [verbose] > │ () │
00:11:43 #32493 [verbose] > │ let v16 : (float []) = Array.zeroCreate<float> (v8) │
00:11:43 #32494 [verbose] > │ let v17 : Mut0 = {l0 = 0} : Mut0 │
00:11:43 #32495 [verbose] > │ while method2(v8, v17) do │
00:11:43 #32496 [verbose] > │ let v19 : int32 = v17.l0 │
00:11:43 #32497 [verbose] > │ let v20 : float = v0.[int v19] │
00:11:43 #32498 [verbose] > │ let v21 : float = cos v20 │
00:11:43 #32499 [verbose] > │ v16.[int v19] <- v21 │
00:11:43 #32500 [verbose] > │ let v22 : int32 = v19 + 1 │
00:11:43 #32501 [verbose] > │ v17.l0 <- v22 │
00:11:43 #32502 [verbose] > │ () │
00:11:43 #32503 [verbose] > │ let v23 : string = "sin" │
00:11:43 #32504 [verbose] > │ let v24 : string = "cos" │
00:11:43 #32505 [verbose] > │ let v25 : (struct (string * (float []) * (float [])) []) = [|struct │
00:11:43 #32506 [verbose] > │ (v23, v0, v9); struct (v24, v0, v16)|] │
00:11:43 #32507 [verbose] > │ let v26 : string = "sin cos" │
00:11:43 #32508 [verbose] > │ let v27 : string = "x" │
00:11:43 #32509 [verbose] > │ let v28 : string = "y" │
00:11:43 #32510 [verbose] > │ struct (v26, v27, v28, v25) │
00:11:43 #32511 [verbose] > │ method0() │
00:11:43 #32512 [verbose] > │ │
00:11:43 #32513 [verbose] > │ │
00:11:43 #32514 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:43 #32515 [verbose] >
00:11:43 #32516 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:43 #32517 [verbose] > // // test
00:11:43 #32518 [verbose] >
00:11:43 #32519 [verbose] > inl y_pos y0 vy0 ay t =
00:11:43 #32520 [verbose] > y0 + vy0 * t + ay * (t |> math.square) / 2
00:11:43 #32521 [verbose] >
00:11:43 #32522 [verbose] > inl x : a _ f64 = am'.init_series 0 5 0.01
00:11:43 #32523 [verbose] > inl y = x |> am.map (y_pos 0 20 -9.8)
00:11:43 #32524 [verbose] > "projectile motion", "time (s)", "", ;[[ "height of projectile (m)", x, y ]]
00:11:44 #32525 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\10da5a316a98dd9c8e1fdbf98aea21ef7dfc06e1d55ef490be6c36784f69a323\main.spi
00:11:44 #32526 [verbose] >
00:11:44 #32527 [verbose] > ╭─[ 337.19ms - return value ]──────────────────────────────────────────────────╮
00:11:44 #32528 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:11:44 #32529 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:11:44 #32530 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:11:44 #32531 [verbose] > │ stroke="none"/> │
00:11:44 #32532 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:11:44 #32533 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:11:44 #32534 [verbose] > │ fill="#FFFFFF"> │
00:11:44 #32535 [verbose] > │ projectile motion │
00:11:44 #32536 [verbose] > │ </text> │
00:11:44 #32537 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │
00:11:44 #32538 [verbose] > │ y2="75"/> │
00:11:44 #32539 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:11:44 #32540 [verbose] > │ y2="75"/> │
00:11:44 #32541 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │
00:11:44 #32542 [verbose] > │ y2="75"/> │
00:11:44 #32543 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │
00:11:44 #32544 [verbose] > │ y2="75"/> │
00:11:44 #32545 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="99" y1="42... │
00:11:44 #32546 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:44 #32547 [verbose] >
00:11:44 #32548 [verbose] > ╭─[ 347.48ms - stdout ]────────────────────────────────────────────────────────╮
00:11:44 #32549 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:11:44 #32550 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:11:44 #32551 [verbose] > │ let v1 : int32 = v0.l0 │
00:11:44 #32552 [verbose] > │ let v2 : bool = v1 < 501 │
00:11:44 #32553 [verbose] > │ v2 │
00:11:44 #32554 [verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool = │
00:11:44 #32555 [verbose] > │ let v2 : int32 = v1.l0 │
00:11:44 #32556 [verbose] > │ let v3 : bool = v2 < v0 │
00:11:44 #32557 [verbose] > │ v3 │
00:11:44 #32558 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:11:44 #32559 [verbose] > │ []) * (float [])) [])) = │
00:11:44 #32560 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (501) │
00:11:44 #32561 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:11:44 #32562 [verbose] > │ while method1(v1) do │
00:11:44 #32563 [verbose] > │ let v3 : int32 = v1.l0 │
00:11:44 #32564 [verbose] > │ let v4 : float = float v3 │
00:11:44 #32565 [verbose] > │ let v5 : float = 0.01 * v4 │
00:11:44 #32566 [verbose] > │ v0.[int v3] <- v5 │
00:11:44 #32567 [verbose] > │ let v6 : int32 = v3 + 1 │
00:11:44 #32568 [verbose] > │ v1.l0 <- v6 │
00:11:44 #32569 [verbose] > │ () │
00:11:44 #32570 [verbose] > │ let v7 : int32 = v0.Length │
00:11:44 #32571 [verbose] > │ let v8 : (float []) = Array.zeroCreate<float> (v7) │
00:11:44 #32572 [verbose] > │ let v9 : Mut0 = {l0 = 0} : Mut0 │
00:11:44 #32573 [verbose] > │ while method2(v7, v9) do │
00:11:44 #32574 [verbose] > │ let v11 : int32 = v9.l0 │
00:11:44 #32575 [verbose] > │ let v12 : float = v0.[int v11] │
00:11:44 #32576 [verbose] > │ let v13 : float = 20.0 * v12 │
00:11:44 #32577 [verbose] > │ let v14 : float = v12 ** 2.0 │
00:11:44 #32578 [verbose] > │ let v15 : float = -9.8 * v14 │
00:11:44 #32579 [verbose] > │ let v16 : float = v15 / 2.0 │
00:11:44 #32580 [verbose] > │ let v17 : float = v13 + v16 │
00:11:44 #32581 [verbose] > │ v8.[int v11] <- v17 │
00:11:44 #32582 [verbose] > │ let v18 : int32 = v11 + 1 │
00:11:44 #32583 [verbose] > │ v9.l0 <- v18 │
00:11:44 #32584 [verbose] > │ () │
00:11:44 #32585 [verbose] > │ let v19 : string = "height of projectile (m)" │
00:11:44 #32586 [verbose] > │ let v20 : (struct (string * (float []) * (float [])) []) = [|struct │
00:11:44 #32587 [verbose] > │ (v19, v0, v8)|] │
00:11:44 #32588 [verbose] > │ let v21 : string = "projectile motion" │
00:11:44 #32589 [verbose] > │ let v22 : string = "time (s)" │
00:11:44 #32590 [verbose] > │ let v23 : string = "" │
00:11:44 #32591 [verbose] > │ struct (v21, v22, v23, v20) │
00:11:44 #32592 [verbose] > │ method0() │
00:11:44 #32593 [verbose] > │ │
00:11:44 #32594 [verbose] > │ │
00:11:44 #32595 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:44 #32596 [verbose] >
00:11:44 #32597 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:44 #32598 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:44 #32599 [verbose] > │ ## velocity_cf │
00:11:44 #32600 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:44 #32601 [verbose] >
00:11:44 #32602 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:44 #32603 [verbose] > type mass = f64
00:11:44 #32604 [verbose] > type time = f64
00:11:44 #32605 [verbose] > type position = f64
00:11:44 #32606 [verbose] > type velocity = f64
00:11:44 #32607 [verbose] > type force = f64
00:11:44 #32608 [verbose] >
00:11:44 #32609 [verbose] > type velocity_cf = mass -> velocity -> list force -> (time -> velocity)
00:11:44 #32610 [verbose] >
00:11:44 #32611 [verbose] > inl velocity_cf m v0 fs =
00:11:44 #32612 [verbose] > inl f_net = fs |> listm'.sum
00:11:44 #32613 [verbose] > inl a0 = f_net / m
00:11:44 #32614 [verbose] > inl v t = v0 + a0 * t
00:11:44 #32615 [verbose] > v
00:11:44 #32616 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\09c46f40acfcb898ae8e6b8843d59ab5917f50368e1d383a0c2270178c7e7b6c\main.spi
00:11:44 #32617 [verbose] >
00:11:44 #32618 [verbose] > ╭─[ 273.24ms - stdout ]────────────────────────────────────────────────────────╮
00:11:44 #32619 [verbose] > │ () │
00:11:44 #32620 [verbose] > │ │
00:11:44 #32621 [verbose] > │ │
00:11:44 #32622 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:44 #32623 [verbose] >
00:11:44 #32624 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:44 #32625 [verbose] > // // test
00:11:44 #32626 [verbose] >
00:11:44 #32627 [verbose] > velocity_cf 0.1f64 0.6 [[ 0.04; -0.08 ]] 0
00:11:44 #32628 [verbose] > |> _assert_eq 0.6
00:11:44 #32629 [verbose] >
00:11:44 #32630 [verbose] > velocity_cf 0.1f64 0.6 [[ 0.04; -0.08 ]] 1
00:11:44 #32631 [verbose] > |> _assert_eq 0.2
00:11:44 #32632 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\14c86fb6f214ea352e7ce11a5862e32020c1068108dab1e39900e0cf320dc2f8\main.spi
00:11:44 #32633 [verbose] >
00:11:44 #32634 [verbose] > ╭─[ 294.25ms - stdout ]────────────────────────────────────────────────────────╮
00:11:44 #32635 [verbose] > │ let rec method0 () : unit = │
00:11:44 #32636 [verbose] > │ let v0 : string = $"%A{0.6}" │
00:11:44 #32637 [verbose] > │ System.Console.WriteLine v0 │
00:11:44 #32638 [verbose] > │ let v1 : string = $"__expect / actual: %A{0.6} / expected: %A{0.6}" │
00:11:44 #32639 [verbose] > │ let v2 : string = $"%A{0.2}" │
00:11:44 #32640 [verbose] > │ System.Console.WriteLine v2 │
00:11:44 #32641 [verbose] > │ let v3 : string = $"__expect / actual: %A{0.2} / expected: %A{0.2}" │
00:11:44 #32642 [verbose] > │ () │
00:11:44 #32643 [verbose] > │ method0() │
00:11:44 #32644 [verbose] > │ │
00:11:44 #32645 [verbose] > │ 0.6 │
00:11:44 #32646 [verbose] > │ 0.2 │
00:11:44 #32647 [verbose] > │ │
00:11:44 #32648 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:44 #32649 [verbose] >
00:11:44 #32650 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:44 #32651 [verbose] > // // test
00:11:44 #32652 [verbose] >
00:11:44 #32653 [verbose] > inl x = am'.init_series 0 4 0.1
00:11:44 #32654 [verbose] > inl y = x |> am.map (velocity_cf 0.1f64 0.6 [[ 0.04; -0.08 ]])
00:11:44 #32655 [verbose] > "car on an air track", "time (s)", "", ;[[ "velocity of car (m/s)", x, y ]]
00:11:44 #32656 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3a87803d3d74cd12d200b974dc0c5a09f3dbbe67ab571f44f693ca5185327052\main.spi
00:11:45 #32657 [verbose] >
00:11:45 #32658 [verbose] > ╭─[ 352.88ms - return value ]──────────────────────────────────────────────────╮
00:11:45 #32659 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:11:45 #32660 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:11:45 #32661 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:11:45 #32662 [verbose] > │ stroke="none"/> │
00:11:45 #32663 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:11:45 #32664 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:11:45 #32665 [verbose] > │ fill="#FFFFFF"> │
00:11:45 #32666 [verbose] > │ car on an air track │
00:11:45 #32667 [verbose] > │ </text> │
00:11:45 #32668 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="57" y1="424" x2="57" │
00:11:45 #32669 [verbose] > │ y2="75"/> │
00:11:45 #32670 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:11:45 #32671 [verbose] > │ y2="75"/> │
00:11:45 #32672 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="82" y1="424" x2="82" │
00:11:45 #32673 [verbose] > │ y2="75"/> │
00:11:45 #32674 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x2="94" │
00:11:45 #32675 [verbose] > │ y2="75"/> │
00:11:45 #32676 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="107" y1=... │
00:11:45 #32677 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:45 #32678 [verbose] >
00:11:45 #32679 [verbose] > ╭─[ 363.22ms - stdout ]────────────────────────────────────────────────────────╮
00:11:45 #32680 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:11:45 #32681 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:11:45 #32682 [verbose] > │ let v1 : int32 = v0.l0 │
00:11:45 #32683 [verbose] > │ let v2 : bool = v1 < 41 │
00:11:45 #32684 [verbose] > │ v2 │
00:11:45 #32685 [verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool = │
00:11:45 #32686 [verbose] > │ let v2 : int32 = v1.l0 │
00:11:45 #32687 [verbose] > │ let v3 : bool = v2 < v0 │
00:11:45 #32688 [verbose] > │ v3 │
00:11:45 #32689 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:11:45 #32690 [verbose] > │ []) * (float [])) [])) = │
00:11:45 #32691 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (41) │
00:11:45 #32692 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:11:45 #32693 [verbose] > │ while method1(v1) do │
00:11:45 #32694 [verbose] > │ let v3 : int32 = v1.l0 │
00:11:45 #32695 [verbose] > │ let v4 : float = float v3 │
00:11:45 #32696 [verbose] > │ let v5 : float = 0.1 * v4 │
00:11:45 #32697 [verbose] > │ v0.[int v3] <- v5 │
00:11:45 #32698 [verbose] > │ let v6 : int32 = v3 + 1 │
00:11:45 #32699 [verbose] > │ v1.l0 <- v6 │
00:11:45 #32700 [verbose] > │ () │
00:11:45 #32701 [verbose] > │ let v7 : int32 = v0.Length │
00:11:45 #32702 [verbose] > │ let v8 : (float []) = Array.zeroCreate<float> (v7) │
00:11:45 #32703 [verbose] > │ let v9 : Mut0 = {l0 = 0} : Mut0 │
00:11:45 #32704 [verbose] > │ while method2(v7, v9) do │
00:11:45 #32705 [verbose] > │ let v11 : int32 = v9.l0 │
00:11:45 #32706 [verbose] > │ let v12 : float = v0.[int v11] │
00:11:45 #32707 [verbose] > │ let v13 : float = -0.39999999999999997 * v12 │
00:11:45 #32708 [verbose] > │ let v14 : float = 0.6 + v13 │
00:11:45 #32709 [verbose] > │ v8.[int v11] <- v14 │
00:11:45 #32710 [verbose] > │ let v15 : int32 = v11 + 1 │
00:11:45 #32711 [verbose] > │ v9.l0 <- v15 │
00:11:45 #32712 [verbose] > │ () │
00:11:45 #32713 [verbose] > │ let v16 : string = "velocity of car (m/s)" │
00:11:45 #32714 [verbose] > │ let v17 : (struct (string * (float []) * (float [])) []) = [|struct │
00:11:45 #32715 [verbose] > │ (v16, v0, v8)|] │
00:11:45 #32716 [verbose] > │ let v18 : string = "car on an air track" │
00:11:45 #32717 [verbose] > │ let v19 : string = "time (s)" │
00:11:45 #32718 [verbose] > │ let v20 : string = "" │
00:11:45 #32719 [verbose] > │ struct (v18, v19, v20, v17) │
00:11:45 #32720 [verbose] > │ method0() │
00:11:45 #32721 [verbose] > │ │
00:11:45 #32722 [verbose] > │ │
00:11:45 #32723 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:45 #32724 [verbose] >
00:11:45 #32725 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:45 #32726 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:45 #32727 [verbose] > │ ## derivative │
00:11:45 #32728 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:45 #32729 [verbose] >
00:11:45 #32730 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:45 #32731 [verbose] > type derivative = (f64 -> f64) -> f64 -> f64
00:11:45 #32732 [verbose] >
00:11:45 #32733 [verbose] > inl derivative dt : derivative =
00:11:45 #32734 [verbose] > fun x t =>
00:11:45 #32735 [verbose] > (x (t + dt / 2) - x (t - dt / 2)) / dt
00:11:45 #32736 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f62fa942fd54a23fb7d2a7760f27a8763e2ec5d1b3de90d76f0fad52176c6146\main.spi
00:11:45 #32737 [verbose] >
00:11:45 #32738 [verbose] > ╭─[ 239.12ms - stdout ]────────────────────────────────────────────────────────╮
00:11:45 #32739 [verbose] > │ () │
00:11:45 #32740 [verbose] > │ │
00:11:45 #32741 [verbose] > │ │
00:11:45 #32742 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:45 #32743 [verbose] >
00:11:45 #32744 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:45 #32745 [verbose] > // // test
00:11:45 #32746 [verbose] >
00:11:45 #32747 [verbose] > derivative 1 (fun x => x ** 4 / 4) 1 - 1
00:11:45 #32748 [verbose] > |> _assert_approx_eq None 0.25
00:11:45 #32749 [verbose] >
00:11:45 #32750 [verbose] > derivative 0.001 (fun x => x ** 4 / 4) 1 - 1
00:11:45 #32751 [verbose] > |> _assert_approx_eq None 0.0000002499998827953931
00:11:45 #32752 [verbose] >
00:11:45 #32753 [verbose] > derivative 0.000001 (fun x => x ** 4 / 4) 1 - 1
00:11:45 #32754 [verbose] > |> _assert_approx_eq None 0.000000000001000088900582341
00:11:45 #32755 [verbose] >
00:11:45 #32756 [verbose] > derivative 0.000000001 (fun x => x ** 4 / 4) 1 - 1
00:11:45 #32757 [verbose] > |> _assert_approx_eq None 0.00000008274037099909037
00:11:45 #32758 [verbose] >
00:11:45 #32759 [verbose] > derivative 0.000000000001 (fun x => x ** 4 / 4) 1 - 1
00:11:45 #32760 [verbose] > |> _assert_approx_eq None 0.00008890058234101161
00:11:45 #32761 [verbose] >
00:11:45 #32762 [verbose] > derivative 0.000000000000001 (fun x => x ** 4 / 4) 1 - 1
00:11:45 #32763 [verbose] > |> _assert_approx_eq None -0.0007992778373592246
00:11:45 #32764 [verbose] >
00:11:45 #32765 [verbose] > derivative 0.000000000000000001 (fun x => x ** 4 / 4) 1 - 1
00:11:45 #32766 [verbose] > |> _assert_approx_eq None -1
00:11:45 #32767 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ac36a4f469df9844cbf6dbfe2fa3f4dde2f8c4db9f26b779c87fde0ee50f0795\main.spi
00:11:45 #32768 [verbose] >
00:11:45 #32769 [verbose] > ╭─[ 290.75ms - stdout ]────────────────────────────────────────────────────────╮
00:11:45 #32770 [verbose] > │ let rec method0 () : unit = │
00:11:45 #32771 [verbose] > │ let v0 : string = $"%A{0.25}" │
00:11:45 #32772 [verbose] > │ System.Console.WriteLine v0 │
00:11:45 #32773 [verbose] > │ let v1 : string = $"__expect / actual: %A{0.25} / expected: %A{0.25}" │
00:11:45 #32774 [verbose] > │ let v2 : string = $"%A{2.499998827953931E-07}" │
00:11:45 #32775 [verbose] > │ System.Console.WriteLine v2 │
00:11:45 #32776 [verbose] > │ let v3 : string = $"__expect / actual: %A{2.499998827953931E-07} / │
00:11:45 #32777 [verbose] > │ expected: %A{2.499998827953931E-07}" │
00:11:45 #32778 [verbose] > │ let v4 : string = $"%A{1.000088900582341E-12}" │
00:11:45 #32779 [verbose] > │ System.Console.WriteLine v4 │
00:11:45 #32780 [verbose] > │ let v5 : string = $"__expect / actual: %A{1.000088900582341E-12} / │
00:11:45 #32781 [verbose] > │ expected: %A{1.000088900582341E-12}" │
00:11:45 #32782 [verbose] > │ let v6 : string = $"%A{8.274037099909037E-08}" │
00:11:45 #32783 [verbose] > │ System.Console.WriteLine v6 │
00:11:45 #32784 [verbose] > │ let v7 : string = $"__expect / actual: %A{8.274037099909037E-08} / │
00:11:45 #32785 [verbose] > │ expected: %A{8.274037099909037E-08}" │
00:11:45 #32786 [verbose] > │ let v8 : string = $"%A{8.890058234101161E-05}" │
00:11:45 #32787 [verbose] > │ System.Console.WriteLine v8 │
00:11:45 #32788 [verbose] > │ let v9 : string = $"__expect / actual: %A{8.890058234101161E-05} / │
00:11:45 #32789 [verbose] > │ expected: %A{8.890058234101161E-05}" │
00:11:45 #32790 [verbose] > │ let v10 : string = $"%A{-0.0007992778373592246}" │
00:11:45 #32791 [verbose] > │ System.Console.WriteLine v10 │
00:11:45 #32792 [verbose] > │ let v11 : string = $"__expect / actual: %A{-0.0007992778373592246} / │
00:11:45 #32793 [verbose] > │ expected: %A{-0.0007992778373592246}" │
00:11:45 #32794 [verbose] > │ let v12 : string = $"%A{-1.0}" │
00:11:45 #32795 [verbose] > │ System.Console.WriteLine v12 │
00:11:45 #32796 [verbose] > │ let v13 : string = $"__expect / actual: %A{-1.0} / expected: %A{-1.0}" │
00:11:45 #32797 [verbose] > │ () │
00:11:45 #32798 [verbose] > │ method0() │
00:11:45 #32799 [verbose] > │ │
00:11:45 #32800 [verbose] > │ 0.25 │
00:11:45 #32801 [verbose] > │ 2.499998828e-07 │
00:11:45 #32802 [verbose] > │ 1.000088901e-12 │
00:11:45 #32803 [verbose] > │ 8.2740371e-08 │
00:11:45 #32804 [verbose] > │ 8.890058234e-05 │
00:11:45 #32805 [verbose] > │ -0.0007992778374 │
00:11:45 #32806 [verbose] > │ -1.0 │
00:11:45 #32807 [verbose] > │ │
00:11:45 #32808 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:45 #32809 [verbose] >
00:11:45 #32810 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:45 #32811 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:45 #32812 [verbose] > │ ## integration │
00:11:45 #32813 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:45 #32814 [verbose] >
00:11:45 #32815 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:45 #32816 [verbose] > type integration = (f64 -> f64) -> f64 -> f64 -> f64
00:11:45 #32817 [verbose] >
00:11:45 #32818 [verbose] > inl integral dt : integration =
00:11:45 #32819 [verbose] > fun f a b =>
00:11:45 #32820 [verbose] > inl rec loop t y =
00:11:45 #32821 [verbose] > if t < b
00:11:45 #32822 [verbose] > then loop (t + dt) (y + f t * dt)
00:11:45 #32823 [verbose] > else t, y
00:11:45 #32824 [verbose] > loop (a + dt / 2) 0
00:11:45 #32825 [verbose] > |> snd
00:11:45 #32826 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a59da5f2a573ab66d523c994153baf17bdc48fb399ba5dde006aef94787f9f06\main.spi
00:11:46 #32827 [verbose] >
00:11:46 #32828 [verbose] > ╭─[ 303.64ms - stdout ]────────────────────────────────────────────────────────╮
00:11:46 #32829 [verbose] > │ () │
00:11:46 #32830 [verbose] > │ │
00:11:46 #32831 [verbose] > │ │
00:11:46 #32832 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:46 #32833 [verbose] >
00:11:46 #32834 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:46 #32835 [verbose] > // // test
00:11:46 #32836 [verbose] >
00:11:46 #32837 [verbose] > integral 0.01 math.square 0 1
00:11:46 #32838 [verbose] > |> _assert_approx_eq None 0.33332500000000004
00:11:46 #32839 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\17fd69da1bc84f350e91e67dc11421a58185fcd5b1d9ce173535944c4e9f36c1\main.spi
00:11:46 #32840 [verbose] >
00:11:46 #32841 [verbose] > ╭─[ 272.70ms - stdout ]────────────────────────────────────────────────────────╮
00:11:46 #32842 [verbose] > │ let rec method0 () : unit = │
00:11:46 #32843 [verbose] > │ let v0 : string = $"%A{0.3333250000000004}" │
00:11:46 #32844 [verbose] > │ System.Console.WriteLine v0 │
00:11:46 #32845 [verbose] > │ let v1 : string = $"__expect / actual: %A{0.3333250000000004} / │
00:11:46 #32846 [verbose] > │ expected: %A{0.33332500000000004}" │
00:11:46 #32847 [verbose] > │ () │
00:11:46 #32848 [verbose] > │ method0() │
00:11:46 #32849 [verbose] > │ │
00:11:46 #32850 [verbose] > │ 0.333325 │
00:11:46 #32851 [verbose] > │ │
00:11:46 #32852 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:46 #32853 [verbose] >
00:11:46 #32854 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:46 #32855 [verbose] > inl integral' dt : integration =
00:11:46 #32856 [verbose] > fun f a b =>
00:11:46 #32857 [verbose] > listm'.init_series (a + dt / 2) (b - dt / 2) dt
00:11:46 #32858 [verbose] > |> listm.map (f >> (*) dt)
00:11:46 #32859 [verbose] > |> listm'.sum
00:11:46 #32860 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\4f971dd297fd5181766262311dfee64da39d5f78e2272647a3dec805c5bb3e6d\main.spi
00:11:46 #32861 [verbose] >
00:11:46 #32862 [verbose] > ╭─[ 223.11ms - stdout ]────────────────────────────────────────────────────────╮
00:11:46 #32863 [verbose] > │ () │
00:11:46 #32864 [verbose] > │ │
00:11:46 #32865 [verbose] > │ │
00:11:46 #32866 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:46 #32867 [verbose] >
00:11:46 #32868 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:46 #32869 [verbose] > // // test
00:11:46 #32870 [verbose] >
00:11:46 #32871 [verbose] > integral' 0.1 math.square 0 1
00:11:46 #32872 [verbose] > |> _assert_approx_eq None (integral 0.1 math.square 0 1)
00:11:46 #32873 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8698d12c80dec9294f9bd43001744dfc2d6c60269ed9ab48cd04dc2cf29b6dcf\main.spi
00:11:46 #32874 [verbose] >
00:11:46 #32875 [verbose] > ╭─[ 294.15ms - stdout ]────────────────────────────────────────────────────────╮
00:11:46 #32876 [verbose] > │ let rec method0 () : unit = │
00:11:46 #32877 [verbose] > │ let v0 : string = $"%A{0.3325000000000001}" │
00:11:46 #32878 [verbose] > │ System.Console.WriteLine v0 │
00:11:46 #32879 [verbose] > │ let v1 : string = $"__expect / actual: %A{0.3325000000000001} / │
00:11:46 #32880 [verbose] > │ expected: %A{0.33249999999999996}" │
00:11:46 #32881 [verbose] > │ () │
00:11:46 #32882 [verbose] > │ method0() │
00:11:46 #32883 [verbose] > │ │
00:11:46 #32884 [verbose] > │ 0.3325 │
00:11:46 #32885 [verbose] > │ │
00:11:46 #32886 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:46 #32887 [verbose] >
00:11:46 #32888 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:46 #32889 [verbose] > inl integral'' dt : integration =
00:11:46 #32890 [verbose] > fun f a b =>
00:11:46 #32891 [verbose] > am'.init_series (a + dt / 2) (b - dt / 2) dt
00:11:46 #32892 [verbose] > |> am.map (f >> (*) dt)
00:11:46 #32893 [verbose] > |> am'.sum
00:11:46 #32894 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\78707b950bbad05cafdb65ad98fb71b35b8ba53cb718406bdb5db88f6a7acfd4\main.spi
00:11:47 #32895 [verbose] >
00:11:47 #32896 [verbose] > ╭─[ 213.11ms - stdout ]────────────────────────────────────────────────────────╮
00:11:47 #32897 [verbose] > │ () │
00:11:47 #32898 [verbose] > │ │
00:11:47 #32899 [verbose] > │ │
00:11:47 #32900 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:47 #32901 [verbose] >
00:11:47 #32902 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:47 #32903 [verbose] > // // test
00:11:47 #32904 [verbose] >
00:11:47 #32905 [verbose] > integral'' 0.01 math.square 0 1
00:11:47 #32906 [verbose] > |> _assert_approx_eq None (integral 0.01 math.square 0 1)
00:11:47 #32907 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d410ee738c976ed4f88dc813ca9600392b0cef7251c96047f666c78e5457fa1e\main.spi
00:11:47 #32908 [verbose] >
00:11:47 #32909 [verbose] > ╭─[ 309.07ms - stdout ]────────────────────────────────────────────────────────╮
00:11:47 #32910 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:11:47 #32911 [verbose] > │ and Mut1 = {mutable l0 : int32; mutable l1 : float} │
00:11:47 #32912 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:11:47 #32913 [verbose] > │ let v1 : int32 = v0.l0 │
00:11:47 #32914 [verbose] > │ let v2 : bool = v1 < 100 │
00:11:47 #32915 [verbose] > │ v2 │
00:11:47 #32916 [verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool = │
00:11:47 #32917 [verbose] > │ let v2 : int32 = v1.l0 │
00:11:47 #32918 [verbose] > │ let v3 : bool = v2 < v0 │
00:11:47 #32919 [verbose] > │ v3 │
00:11:47 #32920 [verbose] > │ and method3 (v0 : int32, v1 : Mut1) : bool = │
00:11:47 #32921 [verbose] > │ let v2 : int32 = v1.l0 │
00:11:47 #32922 [verbose] > │ let v3 : bool = v2 < v0 │
00:11:47 #32923 [verbose] > │ v3 │
00:11:47 #32924 [verbose] > │ and method4 (v0 : bool) : bool = │
00:11:47 #32925 [verbose] > │ v0 │
00:11:47 #32926 [verbose] > │ and method0 () : unit = │
00:11:47 #32927 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (100) │
00:11:47 #32928 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:11:47 #32929 [verbose] > │ while method1(v1) do │
00:11:47 #32930 [verbose] > │ let v3 : int32 = v1.l0 │
00:11:47 #32931 [verbose] > │ let v4 : float = float v3 │
00:11:47 #32932 [verbose] > │ let v5 : float = 0.01 * v4 │
00:11:47 #32933 [verbose] > │ let v6 : float = 0.005 + v5 │
00:11:47 #32934 [verbose] > │ v0.[int v3] <- v6 │
00:11:47 #32935 [verbose] > │ let v7 : int32 = v3 + 1 │
00:11:47 #32936 [verbose] > │ v1.l0 <- v7 │
00:11:47 #32937 [verbose] > │ () │
00:11:47 #32938 [verbose] > │ let v8 : int32 = v0.Length │
00:11:47 #32939 [verbose] > │ let v9 : (float []) = Array.zeroCreate<float> (v8) │
00:11:47 #32940 [verbose] > │ let v10 : Mut0 = {l0 = 0} : Mut0 │
00:11:47 #32941 [verbose] > │ while method2(v8, v10) do │
00:11:47 #32942 [verbose] > │ let v12 : int32 = v10.l0 │
00:11:47 #32943 [verbose] > │ let v13 : float = v0.[int v12] │
00:11:47 #32944 [verbose] > │ let v14 : float = v13 ** 2.0 │
00:11:47 #32945 [verbose] > │ let v15 : float = 0.01 * v14 │
00:11:47 #32946 [verbose] > │ v9.[int v12] <- v15 │
00:11:47 #32947 [verbose] > │ let v16 : int32 = v12 + 1 │
00:11:47 #32948 [verbose] > │ v10.l0 <- v16 │
00:11:47 #32949 [verbose] > │ () │
00:11:47 #32950 [verbose] > │ let v17 : int32 = v9.Length │
00:11:47 #32951 [verbose] > │ let v18 : Mut1 = {l0 = 0; l1 = 0.0} : Mut1 │
00:11:47 #32952 [verbose] > │ while method3(v17, v18) do │
00:11:47 #32953 [verbose] > │ let v20 : int32 = v18.l0 │
00:11:47 #32954 [verbose] > │ let v21 : float = v18.l1 │
00:11:47 #32955 [verbose] > │ let v22 : float = v9.[int v20] │
00:11:47 #32956 [verbose] > │ let v23 : float = v21 + v22 │
00:11:47 #32957 [verbose] > │ let v24 : int32 = v20 + 1 │
00:11:47 #32958 [verbose] > │ v18.l0 <- v24 │
00:11:47 #32959 [verbose] > │ v18.l1 <- v23 │
00:11:47 #32960 [verbose] > │ () │
00:11:47 #32961 [verbose] > │ let v25 : float = v18.l1 │
00:11:47 #32962 [verbose] > │ let v26 : string = $"%A{v25}" │
00:11:47 #32963 [verbose] > │ System.Console.WriteLine v26 │
00:11:47 #32964 [verbose] > │ let v27 : float = 0.3333250000000004 - v25 │
00:11:47 #32965 [verbose] > │ let v28 : float = -v27 │
00:11:47 #32966 [verbose] > │ let v29 : bool = v27 >= v28 │
00:11:47 #32967 [verbose] > │ let v30 : float = │
00:11:47 #32968 [verbose] > │ if v29 then │
00:11:47 #32969 [verbose] > │ v27 │
00:11:47 #32970 [verbose] > │ else │
00:11:47 #32971 [verbose] > │ v28 │
00:11:47 #32972 [verbose] > │ let v31 : bool = v30 < 1E-08 │
00:11:47 #32973 [verbose] > │ let v33 : bool = │
00:11:47 #32974 [verbose] > │ if v31 then │
00:11:47 #32975 [verbose] > │ true │
00:11:47 #32976 [verbose] > │ else │
00:11:47 #32977 [verbose] > │ method4(v31) │
00:11:47 #32978 [verbose] > │ let v34 : string = $"__expect / actual: %A{v25} / expected: │
00:11:47 #32979 [verbose] > │ %A{0.3333250000000004}" │
00:11:47 #32980 [verbose] > │ let v35 : bool = v33 = false │
00:11:47 #32981 [verbose] > │ if v35 then │
00:11:47 #32982 [verbose] > │ failwith<unit> v34 │
00:11:47 #32983 [verbose] > │ method0() │
00:11:47 #32984 [verbose] > │ │
00:11:47 #32985 [verbose] > │ 0.333325 │
00:11:47 #32986 [verbose] > │ │
00:11:47 #32987 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:47 #32988 [verbose] >
00:11:47 #32989 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:47 #32990 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:47 #32991 [verbose] > │ ## anti_derivative │
00:11:47 #32992 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:47 #32993 [verbose] >
00:11:47 #32994 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:47 #32995 [verbose] > inl anti_derivative dt v0 a t =
00:11:47 #32996 [verbose] > v0 + integral' dt a 0 t
00:11:47 #32997 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\55e768cb3a9e9622467eb06370e2a988eb6f88de1e0623b55822a55aebe17f09\main.spi
00:11:47 #32998 [verbose] >
00:11:47 #32999 [verbose] > ╭─[ 252.69ms - stdout ]────────────────────────────────────────────────────────╮
00:11:47 #33000 [verbose] > │ () │
00:11:47 #33001 [verbose] > │ │
00:11:47 #33002 [verbose] > │ │
00:11:47 #33003 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:47 #33004 [verbose] >
00:11:47 #33005 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:47 #33006 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:47 #33007 [verbose] > │ ## velocity_ft │
00:11:47 #33008 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:47 #33009 [verbose] >
00:11:47 #33010 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:47 #33011 [verbose] > type velocity_ft = mass -> velocity -> list (time -> force) -> (time ->
00:11:47 #33012 [verbose] > velocity)
00:11:47 #33013 [verbose] >
00:11:47 #33014 [verbose] > inl velocity_ft dt : velocity_ft =
00:11:47 #33015 [verbose] > fun m v0 fs =>
00:11:47 #33016 [verbose] > inl f_net t = fs |> listm.map (fun f => f t) |> listm'.sum
00:11:47 #33017 [verbose] > inl a t = f_net t / m
00:11:47 #33018 [verbose] > anti_derivative dt v0 a
00:11:47 #33019 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3778ebf84e63226cba964518afaeeaf9c0dea5902f03fcab5cc183aa7d93ebc0\main.spi
00:11:47 #33020 [verbose] >
00:11:47 #33021 [verbose] > ╭─[ 271.60ms - stdout ]────────────────────────────────────────────────────────╮
00:11:47 #33022 [verbose] > │ () │
00:11:47 #33023 [verbose] > │ │
00:11:47 #33024 [verbose] > │ │
00:11:47 #33025 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:47 #33026 [verbose] >
00:11:47 #33027 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:47 #33028 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:47 #33029 [verbose] > │ ## position_ft │
00:11:47 #33030 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:47 #33031 [verbose] >
00:11:47 #33032 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:47 #33033 [verbose] > type position_ft = mass -> position -> velocity -> list (time -> force) -> (time
00:11:47 #33034 [verbose] > -> position)
00:11:47 #33035 [verbose] >
00:11:47 #33036 [verbose] > inl position_ft dt : position_ft =
00:11:47 #33037 [verbose] > fun m x0 v0 fs =>
00:11:47 #33038 [verbose] > velocity_ft dt m v0 fs
00:11:47 #33039 [verbose] > |> anti_derivative dt x0
00:11:48 #33040 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c6dd1555aa293e3b17fa82d3fdf5cb5c6e3ff484cae2ac22d894e6ffb410d9b9\main.spi
00:11:48 #33041 [verbose] >
00:11:48 #33042 [verbose] > ╭─[ 264.52ms - stdout ]────────────────────────────────────────────────────────╮
00:11:48 #33043 [verbose] > │ () │
00:11:48 #33044 [verbose] > │ │
00:11:48 #33045 [verbose] > │ │
00:11:48 #33046 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:48 #33047 [verbose] >
00:11:48 #33048 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:48 #33049 [verbose] > // // test
00:11:48 #33050 [verbose] >
00:11:48 #33051 [verbose] > inl pedal_coast (t : time) : force =
00:11:48 #33052 [verbose] > inl t_cycle = 20
00:11:48 #33053 [verbose] > inl n_complete : i32 = t / t_cycle |> conv
00:11:48 #33054 [verbose] > inl remainder = t - conv n_complete * t_cycle
00:11:48 #33055 [verbose] > if remainder > 0 && remainder < 10
00:11:48 #33056 [verbose] > then 10
00:11:48 #33057 [verbose] > else 0
00:11:48 #33058 [verbose] >
00:11:48 #33059 [verbose] > inl x = am'.init_series -5 45 0.1
00:11:48 #33060 [verbose] > inl y = x |> am.map pedal_coast
00:11:48 #33061 [verbose] > "child pedaling then coasting", "time (s)", "", ;[[ "force on bike (N)", x, y ]]
00:11:48 #33062 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5371a37e5edc073d918011924a497dd6345f2e1e9be452adf722e365e8875f80\main.spi
00:11:48 #33063 [verbose] >
00:11:48 #33064 [verbose] > ╭─[ 308.76ms - return value ]──────────────────────────────────────────────────╮
00:11:48 #33065 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:11:48 #33066 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:11:48 #33067 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:11:48 #33068 [verbose] > │ stroke="none"/> │
00:11:48 #33069 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:11:48 #33070 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:11:48 #33071 [verbose] > │ fill="#FFFFFF"> │
00:11:48 #33072 [verbose] > │ child pedaling then coasting │
00:11:48 #33073 [verbose] > │ </text> │
00:11:48 #33074 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │
00:11:48 #33075 [verbose] > │ y2="75"/> │
00:11:48 #33076 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:11:48 #33077 [verbose] > │ y2="75"/> │
00:11:48 #33078 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │
00:11:48 #33079 [verbose] > │ y2="75"/> │
00:11:48 #33080 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │
00:11:48 #33081 [verbose] > │ y2="75"/> │
00:11:48 #33082 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1=... │
00:11:48 #33083 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:48 #33084 [verbose] >
00:11:48 #33085 [verbose] > ╭─[ 321.87ms - stdout ]────────────────────────────────────────────────────────╮
00:11:48 #33086 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:11:48 #33087 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:11:48 #33088 [verbose] > │ let v1 : int32 = v0.l0 │
00:11:48 #33089 [verbose] > │ let v2 : bool = v1 < 501 │
00:11:48 #33090 [verbose] > │ v2 │
00:11:48 #33091 [verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool = │
00:11:48 #33092 [verbose] > │ let v2 : int32 = v1.l0 │
00:11:48 #33093 [verbose] > │ let v3 : bool = v2 < v0 │
00:11:48 #33094 [verbose] > │ v3 │
00:11:48 #33095 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:11:48 #33096 [verbose] > │ []) * (float [])) [])) = │
00:11:48 #33097 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (501) │
00:11:48 #33098 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:11:48 #33099 [verbose] > │ while method1(v1) do │
00:11:48 #33100 [verbose] > │ let v3 : int32 = v1.l0 │
00:11:48 #33101 [verbose] > │ let v4 : float = float v3 │
00:11:48 #33102 [verbose] > │ let v5 : float = 0.1 * v4 │
00:11:48 #33103 [verbose] > │ let v6 : float = -5.0 + v5 │
00:11:48 #33104 [verbose] > │ v0.[int v3] <- v6 │
00:11:48 #33105 [verbose] > │ let v7 : int32 = v3 + 1 │
00:11:48 #33106 [verbose] > │ v1.l0 <- v7 │
00:11:48 #33107 [verbose] > │ () │
00:11:48 #33108 [verbose] > │ let v8 : int32 = v0.Length │
00:11:48 #33109 [verbose] > │ let v9 : (float []) = Array.zeroCreate<float> (v8) │
00:11:48 #33110 [verbose] > │ let v10 : Mut0 = {l0 = 0} : Mut0 │
00:11:48 #33111 [verbose] > │ while method2(v8, v10) do │
00:11:48 #33112 [verbose] > │ let v12 : int32 = v10.l0 │
00:11:48 #33113 [verbose] > │ let v13 : float = v0.[int v12] │
00:11:48 #33114 [verbose] > │ let v14 : float = v13 / 20.0 │
00:11:48 #33115 [verbose] > │ let v15 : int32 = int32 v14 │
00:11:48 #33116 [verbose] > │ let v16 : float = float v15 │
00:11:48 #33117 [verbose] > │ let v17 : float = v16 * 20.0 │
00:11:48 #33118 [verbose] > │ let v18 : float = v13 - v17 │
00:11:48 #33119 [verbose] > │ let v19 : bool = v18 > 0.0 │
00:11:48 #33120 [verbose] > │ let v21 : bool = │
00:11:48 #33121 [verbose] > │ if v19 then │
00:11:48 #33122 [verbose] > │ let v20 : bool = v18 < 10.0 │
00:11:48 #33123 [verbose] > │ v20 │
00:11:48 #33124 [verbose] > │ else │
00:11:48 #33125 [verbose] > │ false │
00:11:48 #33126 [verbose] > │ let v22 : float = │
00:11:48 #33127 [verbose] > │ if v21 then │
00:11:48 #33128 [verbose] > │ 10.0 │
00:11:48 #33129 [verbose] > │ else │
00:11:48 #33130 [verbose] > │ 0.0 │
00:11:48 #33131 [verbose] > │ v9.[int v12] <- v22 │
00:11:48 #33132 [verbose] > │ let v23 : int32 = v12 + 1 │
00:11:48 #33133 [verbose] > │ v10.l0 <- v23 │
00:11:48 #33134 [verbose] > │ () │
00:11:48 #33135 [verbose] > │ let v24 : string = "force on bike (N)" │
00:11:48 #33136 [verbose] > │ let v25 : (struct (string * (float []) * (float [])) []) = [|struct │
00:11:48 #33137 [verbose] > │ (v24, v0, v9)|] │
00:11:48 #33138 [verbose] > │ let v26 : string = "child pedaling then coasting" │
00:11:48 #33139 [verbose] > │ let v27 : string = "time (s)" │
00:11:48 #33140 [verbose] > │ let v28 : string = "" │
00:11:48 #33141 [verbose] > │ struct (v26, v27, v28, v25) │
00:11:48 #33142 [verbose] > │ method0() │
00:11:48 #33143 [verbose] > │ │
00:11:48 #33144 [verbose] > │ │
00:11:48 #33145 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:48 #33146 [verbose] >
00:11:48 #33147 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:48 #33148 [verbose] > // // test
00:11:48 #33149 [verbose] >
00:11:48 #33150 [verbose] > inl x = am'.init_series -5 45 1
00:11:48 #33151 [verbose] > inl y = x |> am.map (position_ft 0.1f64 20 0 0 [[ pedal_coast ]])
00:11:48 #33152 [verbose] > "child pedaling then coasting", "time (s)", "", ;[[ "position of bike (m)", x, y
00:11:48 #33153 [verbose] > ]]
00:11:48 #33154 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\03f64dd3cbcf9e74d342a8ffe7ca7f380a3f867a6db38b20d2965c1bcdc5a1d1\main.spi
00:11:49 #33155 [verbose] >
00:11:49 #33156 [verbose] > ╭─[ 581.31ms - return value ]──────────────────────────────────────────────────╮
00:11:49 #33157 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:11:49 #33158 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:11:49 #33159 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:11:49 #33160 [verbose] > │ stroke="none"/> │
00:11:49 #33161 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:11:49 #33162 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:11:49 #33163 [verbose] > │ fill="#FFFFFF"> │
00:11:49 #33164 [verbose] > │ child pedaling then coasting │
00:11:49 #33165 [verbose] > │ </text> │
00:11:49 #33166 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │
00:11:49 #33167 [verbose] > │ y2="75"/> │
00:11:49 #33168 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:11:49 #33169 [verbose] > │ y2="75"/> │
00:11:49 #33170 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │
00:11:49 #33171 [verbose] > │ y2="75"/> │
00:11:49 #33172 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │
00:11:49 #33173 [verbose] > │ y2="75"/> │
00:11:49 #33174 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1=... │
00:11:49 #33175 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:49 #33176 [verbose] >
00:11:49 #33177 [verbose] > ╭─[ 593.13ms - stdout ]────────────────────────────────────────────────────────╮
00:11:49 #33178 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:11:49 #33179 [verbose] > │ and UH0 = │
00:11:49 #33180 [verbose] > │ | UH0_0 │
00:11:49 #33181 [verbose] > │ | UH0_1 of float * UH0 │
00:11:49 #33182 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:11:49 #33183 [verbose] > │ let v1 : int32 = v0.l0 │
00:11:49 #33184 [verbose] > │ let v2 : bool = v1 < 51 │
00:11:49 #33185 [verbose] > │ v2 │
00:11:49 #33186 [verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool = │
00:11:49 #33187 [verbose] > │ let v2 : int32 = v1.l0 │
00:11:49 #33188 [verbose] > │ let v3 : bool = v2 < v0 │
00:11:49 #33189 [verbose] > │ v3 │
00:11:49 #33190 [verbose] > │ and method3 (v0 : float, v1 : float) : UH0 = │
00:11:49 #33191 [verbose] > │ let v2 : bool = v1 < v0 │
00:11:49 #33192 [verbose] > │ if v2 then │
00:11:49 #33193 [verbose] > │ let v3 : float = 0.1 * v1 │
00:11:49 #33194 [verbose] > │ let v4 : float = 0.05 + v3 │
00:11:49 #33195 [verbose] > │ let v5 : float = v1 + 1.0 │
00:11:49 #33196 [verbose] > │ let v6 : UH0 = method3(v0, v5) │
00:11:49 #33197 [verbose] > │ UH0_1(v4, v6) │
00:11:49 #33198 [verbose] > │ else │
00:11:49 #33199 [verbose] > │ UH0_0 │
00:11:49 #33200 [verbose] > │ and method5 (v0 : UH0, v1 : UH0) : UH0 = │
00:11:49 #33201 [verbose] > │ match v0 with │
00:11:49 #33202 [verbose] > │ | UH0_1(v2, v3) -> (* Cons *) │
00:11:49 #33203 [verbose] > │ let v4 : UH0 = method5(v3, v1) │
00:11:49 #33204 [verbose] > │ let v5 : float = v2 / 20.0 │
00:11:49 #33205 [verbose] > │ let v6 : int32 = int32 v5 │
00:11:49 #33206 [verbose] > │ let v7 : float = float v6 │
00:11:49 #33207 [verbose] > │ let v8 : float = v7 * 20.0 │
00:11:49 #33208 [verbose] > │ let v9 : float = v2 - v8 │
00:11:49 #33209 [verbose] > │ let v10 : bool = v9 > 0.0 │
00:11:49 #33210 [verbose] > │ let v12 : bool = │
00:11:49 #33211 [verbose] > │ if v10 then │
00:11:49 #33212 [verbose] > │ let v11 : bool = v9 < 10.0 │
00:11:49 #33213 [verbose] > │ v11 │
00:11:49 #33214 [verbose] > │ else │
00:11:49 #33215 [verbose] > │ false │
00:11:49 #33216 [verbose] > │ let v13 : float = │
00:11:49 #33217 [verbose] > │ if v12 then │
00:11:49 #33218 [verbose] > │ 10.0 │
00:11:49 #33219 [verbose] > │ else │
00:11:49 #33220 [verbose] > │ 0.0 │
00:11:49 #33221 [verbose] > │ let v14 : float = v13 / 20.0 │
00:11:49 #33222 [verbose] > │ let v15 : float = 0.1 * v14 │
00:11:49 #33223 [verbose] > │ UH0_1(v15, v4) │
00:11:49 #33224 [verbose] > │ | UH0_0 -> (* Nil *) │
00:11:49 #33225 [verbose] > │ v1 │
00:11:49 #33226 [verbose] > │ and method6 (v0 : UH0, v1 : float) : float = │
00:11:49 #33227 [verbose] > │ match v0 with │
00:11:49 #33228 [verbose] > │ | UH0_1(v2, v3) -> (* Cons *) │
00:11:49 #33229 [verbose] > │ let v4 : float = v1 + v2 │
00:11:49 #33230 [verbose] > │ method6(v3, v4) │
00:11:49 #33231 [verbose] > │ | UH0_0 -> (* Nil *) │
00:11:49 #33232 [verbose] > │ v1 │
00:11:49 #33233 [verbose] > │ and method4 (v0 : UH0, v1 : UH0) : UH0 = │
00:11:49 #33234 [verbose] > │ match v0 with │
00:11:49 #33235 [verbose] > │ | UH0_1(v2, v3) -> (* Cons *) │
00:11:49 #33236 [verbose] > │ let v4 : UH0 = method4(v3, v1) │
00:11:49 #33237 [verbose] > │ let v5 : float = v2 - 0.05 │
00:11:49 #33238 [verbose] > │ let v6 : float = v5 - 0.05 │
00:11:49 #33239 [verbose] > │ let v7 : float = v6 / 0.1 │
00:11:49 #33240 [verbose] > │ let v8 : float = v7 + 1.0 │
00:11:49 #33241 [verbose] > │ let v9 : float = 0.0 │
00:11:49 #33242 [verbose] > │ let v10 : UH0 = method3(v8, v9) │
00:11:49 #33243 [verbose] > │ let v11 : UH0 = UH0_0 │
00:11:49 #33244 [verbose] > │ let v12 : UH0 = method5(v10, v11) │
00:11:49 #33245 [verbose] > │ let v13 : float = 0.0 │
00:11:49 #33246 [verbose] > │ let v14 : float = method6(v12, v13) │
00:11:49 #33247 [verbose] > │ let v15 : float = 0.1 * v14 │
00:11:49 #33248 [verbose] > │ UH0_1(v15, v4) │
00:11:49 #33249 [verbose] > │ | UH0_0 -> (* Nil *) │
00:11:49 #33250 [verbose] > │ v1 │
00:11:49 #33251 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:11:49 #33252 [verbose] > │ []) * (float [])) [])) = │
00:11:49 #33253 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (51) │
00:11:49 #33254 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:11:49 #33255 [verbose] > │ while method1(v1) do │
00:11:49 #33256 [verbose] > │ let v3 : int32 = v1.l0 │
00:11:49 #33257 [verbose] > │ let v4 : float = float v3 │
00:11:49 #33258 [verbose] > │ let v5 : float = -5.0 + v4 │
00:11:49 #33259 [verbose] > │ v0.[int v3] <- v5 │
00:11:49 #33260 [verbose] > │ let v6 : int32 = v3 + 1 │
00:11:49 #33261 [verbose] > │ v1.l0 <- v6 │
00:11:49 #33262 [verbose] > │ () │
00:11:49 #33263 [verbose] > │ let v7 : int32 = v0.Length │
00:11:49 #33264 [verbose] > │ let v8 : (float []) = Array.zeroCreate<float> (v7) │
00:11:49 #33265 [verbose] > │ let v9 : Mut0 = {l0 = 0} : Mut0 │
00:11:49 #33266 [verbose] > │ while method2(v7, v9) do │
00:11:49 #33267 [verbose] > │ let v11 : int32 = v9.l0 │
00:11:49 #33268 [verbose] > │ let v12 : float = v0.[int v11] │
00:11:49 #33269 [verbose] > │ let v13 : float = v12 - 0.05 │
00:11:49 #33270 [verbose] > │ let v14 : float = v13 - 0.05 │
00:11:49 #33271 [verbose] > │ let v15 : float = v14 / 0.1 │
00:11:49 #33272 [verbose] > │ let v16 : float = v15 + 1.0 │
00:11:49 #33273 [verbose] > │ let v17 : float = 0.0 │
00:11:49 #33274 [verbose] > │ let v18 : UH0 = method3(v16, v17) │
00:11:49 #33275 [verbose] > │ let v19 : UH0 = UH0_0 │
00:11:49 #33276 [verbose] > │ let v20 : UH0 = method4(v18, v19) │
00:11:49 #33277 [verbose] > │ let v21 : float = 0.0 │
00:11:49 #33278 [verbose] > │ let v22 : float = method6(v20, v21) │
00:11:49 #33279 [verbose] > │ v8.[int v11] <- v22 │
00:11:49 #33280 [verbose] > │ let v23 : int32 = v11 + 1 │
00:11:49 #33281 [verbose] > │ v9.l0 <- v23 │
00:11:49 #33282 [verbose] > │ () │
00:11:49 #33283 [verbose] > │ let v24 : string = "position of bike (m)" │
00:11:49 #33284 [verbose] > │ let v25 : (struct (string * (float []) * (float [])) []) = [|struct │
00:11:49 #33285 [verbose] > │ (v24, v0, v8)|] │
00:11:49 #33286 [verbose] > │ let v26 : string = "child pedaling then coasting" │
00:11:49 #33287 [verbose] > │ let v27 : string = "time (s)" │
00:11:49 #33288 [verbose] > │ let v28 : string = "" │
00:11:49 #33289 [verbose] > │ struct (v26, v27, v28, v25) │
00:11:49 #33290 [verbose] > │ method0() │
00:11:49 #33291 [verbose] > │ │
00:11:49 #33292 [verbose] > │ │
00:11:49 #33293 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:49 #33294 [verbose] >
00:11:49 #33295 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:49 #33296 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:49 #33297 [verbose] > │ ## velocity_fv │
00:11:49 #33298 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:49 #33299 [verbose] >
00:11:49 #33300 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:49 #33301 [verbose] > inl newton_second_v m fs v0 =
00:11:49 #33302 [verbose] > fs |> listm.map (fun f => f v0) |> listm'.sum |> fun x => x / m
00:11:49 #33303 [verbose] >
00:11:49 #33304 [verbose] > inl update_velocity dt m fs v0 =
00:11:49 #33305 [verbose] > v0 + newton_second_v m fs v0 * dt
00:11:49 #33306 [verbose] >
00:11:49 #33307 [verbose] > inl velocity_fv dt m v0 fs t =
00:11:49 #33308 [verbose] > stream.iterate (update_velocity dt m fs) v0
00:11:49 #33309 [verbose] > |> stream.try_item (t / dt |> math.round |> abs)
00:11:49 #33310 [verbose] > |> optionm'.default_value 0
00:11:49 #33311 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8cadf054706247d4ee5bf28641c441c60f932a80e14a9250eb6865364a77c574\main.spi
00:11:49 #33312 [verbose] >
00:11:49 #33313 [verbose] > ╭─[ 247.87ms - stdout ]────────────────────────────────────────────────────────╮
00:11:49 #33314 [verbose] > │ () │
00:11:49 #33315 [verbose] > │ │
00:11:49 #33316 [verbose] > │ │
00:11:49 #33317 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:49 #33318 [verbose] >
00:11:49 #33319 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:49 #33320 [verbose] > inl f_air drag rho area v =
00:11:49 #33321 [verbose] > -drag * rho * area * abs v * v / 2
00:11:49 #33322 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\cc5a41ae5dcbb87ee1a4b829dcfa9e0c12560e76c647f8ce967cddfdcaaf2f66\main.spi
00:11:49 #33323 [verbose] >
00:11:49 #33324 [verbose] > ╭─[ 230.78ms - stdout ]────────────────────────────────────────────────────────╮
00:11:49 #33325 [verbose] > │ () │
00:11:49 #33326 [verbose] > │ │
00:11:49 #33327 [verbose] > │ │
00:11:49 #33328 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:49 #33329 [verbose] >
00:11:49 #33330 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:49 #33331 [verbose] > // // test
00:11:49 #33332 [verbose] >
00:11:49 #33333 [verbose] > inl x = am'.init_series 0 60 0.5
00:11:49 #33334 [verbose] > inl y = x |> am.map (velocity_fv 1 70 0f64 [[ fun _ => 100; f_air 2 1.225 0.6
00:11:49 #33335 [verbose] > ]])
00:11:49 #33336 [verbose] > "bike velocity", "time (s)", "", ;[[ "velocity of bike (m/s)", x, y ]]
00:11:49 #33337 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\df5ae175ebd026d4f654fd4d886465d5ad9c6418a4000cd04bbc9a134409e037\main.spi
00:11:50 #33338 [verbose] >
00:11:50 #33339 [verbose] > ╭─[ 723.56ms - return value ]──────────────────────────────────────────────────╮
00:11:50 #33340 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:11:50 #33341 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:11:50 #33342 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:11:50 #33343 [verbose] > │ stroke="none"/> │
00:11:50 #33344 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:11:50 #33345 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:11:50 #33346 [verbose] > │ fill="#FFFFFF"> │
00:11:50 #33347 [verbose] > │ bike velocity │
00:11:50 #33348 [verbose] > │ </text> │
00:11:50 #33349 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │
00:11:50 #33350 [verbose] > │ y2="75"/> │
00:11:50 #33351 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:11:50 #33352 [verbose] > │ y2="75"/> │
00:11:50 #33353 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │
00:11:50 #33354 [verbose] > │ y2="75"/> │
00:11:50 #33355 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │
00:11:50 #33356 [verbose] > │ y2="75"/> │
00:11:50 #33357 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x... │
00:11:50 #33358 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:50 #33359 [verbose] >
00:11:50 #33360 [verbose] > ╭─[ 742.44ms - stdout ]────────────────────────────────────────────────────────╮
00:11:50 #33361 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:11:50 #33362 [verbose] > │ and UH0 = │
00:11:50 #33363 [verbose] > │ | UH0_0 of float * (unit -> UH0) │
00:11:50 #33364 [verbose] > │ | UH0_1 │
00:11:50 #33365 [verbose] > │ and [<Struct>] US0 = │
00:11:50 #33366 [verbose] > │ | US0_0 of f0_0 : float │
00:11:50 #33367 [verbose] > │ | US0_1 │
00:11:50 #33368 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:11:50 #33369 [verbose] > │ let v1 : int32 = v0.l0 │
00:11:50 #33370 [verbose] > │ let v2 : bool = v1 < 121 │
00:11:50 #33371 [verbose] > │ v2 │
00:11:50 #33372 [verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool = │
00:11:50 #33373 [verbose] > │ let v2 : int32 = v1.l0 │
00:11:50 #33374 [verbose] > │ let v3 : bool = v2 < v0 │
00:11:50 #33375 [verbose] > │ v3 │
00:11:50 #33376 [verbose] > │ and closure129 () () : UH0 = │
00:11:50 #33377 [verbose] > │ let v0 : (unit -> UH0) = closure129() │
00:11:50 #33378 [verbose] > │ UH0_0(11.664236870396083, v0) │
00:11:50 #33379 [verbose] > │ and closure128 () () : UH0 = │
00:11:50 #33380 [verbose] > │ let v0 : (unit -> UH0) = closure129() │
00:11:50 #33381 [verbose] > │ UH0_0(11.664236870396081, v0) │
00:11:50 #33382 [verbose] > │ and closure127 () () : UH0 = │
00:11:50 #33383 [verbose] > │ let v0 : (unit -> UH0) = closure128() │
00:11:50 #33384 [verbose] > │ UH0_0(11.66423687039608, v0) │
00:11:50 #33385 [verbose] > │ and closure126 () () : UH0 = │
00:11:50 #33386 [verbose] > │ let v0 : (unit -> UH0) = closure127() │
00:11:50 #33387 [verbose] > │ UH0_0(11.664236870396078, v0) │
00:11:50 #33388 [verbose] > │ and closure125 () () : UH0 = │
00:11:50 #33389 [verbose] > │ let v0 : (unit -> UH0) = closure126() │
00:11:50 #33390 [verbose] > │ UH0_0(11.664236870396074, v0) │
00:11:50 #33391 [verbose] > │ and closure124 () () : UH0 = │
00:11:50 #33392 [verbose] > │ let v0 : (unit -> UH0) = closure125() │
00:11:50 #33393 [verbose] > │ UH0_0(11.66423687039607, v0) │
00:11:50 #33394 [verbose] > │ and closure123 () () : UH0 = │
00:11:50 #33395 [verbose] > │ let v0 : (unit -> UH0) = closure124() │
00:11:50 #33396 [verbose] > │ UH0_0(11.664236870396065, v0) │
00:11:50 #33397 [verbose] > │ and closure122 () () : UH0 = │
00:11:50 #33398 [verbose] > │ let v0 : (unit -> UH0) = closure123() │
00:11:50 #33399 [verbose] > │ UH0_0(11.664236870396058, v0) │
00:11:50 #33400 [verbose] > │ and closure121 () () : UH0 = │
00:11:50 #33401 [verbose] > │ let v0 : (unit -> UH0) = closure122() │
00:11:50 #33402 [verbose] > │ UH0_0(11.66423687039605, v0) │
00:11:50 #33403 [verbose] > │ and closure120 () () : UH0 = │
00:11:50 #33404 [verbose] > │ let v0 : (unit -> UH0) = closure121() │
00:11:50 #33405 [verbose] > │ UH0_0(11.664236870396037, v0) │
00:11:50 #33406 [verbose] > │ and closure119 () () : UH0 = │
00:11:50 #33407 [verbose] > │ let v0 : (unit -> UH0) = closure120() │
00:11:50 #33408 [verbose] > │ UH0_0(11.66423687039602, v0) │
00:11:50 #33409 [verbose] > │ and closure118 () () : UH0 = │
00:11:50 #33410 [verbose] > │ let v0 : (unit -> UH0) = closure119() │
00:11:50 #33411 [verbose] > │ UH0_0(11.664236870396, v0) │
00:11:50 #33412 [verbose] > │ and closure117 () () : UH0 = │
00:11:50 #33413 [verbose] > │ let v0 : (unit -> UH0) = closure118() │
00:11:50 #33414 [verbose] > │ UH0_0(11.664236870395971, v0) │
00:11:50 #33415 [verbose] > │ and closure116 () () : UH0 = │
00:11:50 #33416 [verbose] > │ let v0 : (unit -> UH0) = closure117() │
00:11:50 #33417 [verbose] > │ UH0_0(11.664236870395934, v0) │
00:11:50 #33418 [verbose] > │ and closure115 () () : UH0 = │
00:11:50 #33419 [verbose] > │ let v0 : (unit -> UH0) = closure116() │
00:11:50 #33420 [verbose] > │ UH0_0(11.664236870395884, v0) │
00:11:50 #33421 [verbose] > │ and closure114 () () : UH0 = │
00:11:50 #33422 [verbose] > │ let v0 : (unit -> UH0) = closure115() │
00:11:50 #33423 [verbose] > │ UH0_0(11.664236870395818, v0) │
00:11:50 #33424 [verbose] > │ and closure113 () () : UH0 = │
00:11:50 #33425 [verbose] > │ let v0 : (unit -> UH0) = closure114() │
00:11:50 #33426 [verbose] > │ UH0_0(11.664236870395731, v0) │
00:11:50 #33427 [verbose] > │ and closure112 () () : UH0 = │
00:11:50 #33428 [verbose] > │ let v0 : (unit -> UH0) = closure113() │
00:11:50 #33429 [verbose] > │ UH0_0(11.664236870395616, v0) │
00:11:50 #33430 [verbose] > │ and closure111 () () : UH0 = │
00:11:50 #33431 [verbose] > │ let v0 : (unit -> UH0) = closure112() │
00:11:50 #33432 [verbose] > │ UH0_0(11.664236870395463, v0) │
00:11:50 #33433 [verbose] > │ and closure110 () () : UH0 = │
00:11:50 #33434 [verbose] > │ let v0 : (unit -> UH0) = closure111() │
00:11:50 #33435 [verbose] > │ UH0_0(11.66423687039526, v0) │
00:11:50 #33436 [verbose] > │ and closure109 () () : UH0 = │
00:11:50 #33437 [verbose] > │ let v0 : (unit -> UH0) = closure110() │
00:11:50 #33438 [verbose] > │ UH0_0(11.664236870394992, v0) │
00:11:50 #33439 [verbose] > │ and closure108 () () : UH0 = │
00:11:50 #33440 [verbose] > │ let v0 : (unit -> UH0) = closure109() │
00:11:50 #33441 [verbose] > │ UH0_0(11.664236870394637, v0) │
00:11:50 #33442 [verbose] > │ and closure107 () () : UH0 = │
00:11:50 #33443 [verbose] > │ let v0 : (unit -> UH0) = closure108() │
00:11:50 #33444 [verbose] > │ UH0_0(11.664236870394168, v0) │
00:11:50 #33445 [verbose] > │ and closure106 () () : UH0 = │
00:11:50 #33446 [verbose] > │ let v0 : (unit -> UH0) = closure107() │
00:11:50 #33447 [verbose] > │ UH0_0(11.664236870393546, v0) │
00:11:50 #33448 [verbose] > │ and closure105 () () : UH0 = │
00:11:50 #33449 [verbose] > │ let v0 : (unit -> UH0) = closure106() │
00:11:50 #33450 [verbose] > │ UH0_0(11.664236870392722, v0) │
00:11:50 #33451 [verbose] > │ and closure104 () () : UH0 = │
00:11:50 #33452 [verbose] > │ let v0 : (unit -> UH0) = closure105() │
00:11:50 #33453 [verbose] > │ UH0_0(11.664236870391631, v0) │
00:11:50 #33454 [verbose] > │ and closure103 () () : UH0 = │
00:11:50 #33455 [verbose] > │ let v0 : (unit -> UH0) = closure104() │
00:11:50 #33456 [verbose] > │ UH0_0(11.664236870390187, v0) │
00:11:50 #33457 [verbose] > │ and closure102 () () : UH0 = │
00:11:50 #33458 [verbose] > │ let v0 : (unit -> UH0) = closure103() │
00:11:50 #33459 [verbose] > │ UH0_0(11.664236870388274, v0) │
00:11:50 #33460 [verbose] > │ and closure101 () () : UH0 = │
00:11:50 #33461 [verbose] > │ let v0 : (unit -> UH0) = closure102() │
00:11:50 #33462 [verbose] > │ UH0_0(11.66423687038574, v0) │
00:11:50 #33463 [verbose] > │ and closure100 () () : UH0 = │
00:11:50 #33464 [verbose] > │ let v0 : (unit -> UH0) = closure101() │
00:11:50 #33465 [verbose] > │ UH0_0(11.664236870382384, v0) │
00:11:50 #33466 [verbose] > │ and closure99 () () : UH0 = │
00:11:50 #33467 [verbose] > │ let v0 : (unit -> UH0) = closure100() │
00:11:50 #33468 [verbose] > │ UH0_0(11.664236870377938, v0) │
00:11:50 #33469 [verbose] > │ and closure98 () () : UH0 = │
00:11:50 #33470 [verbose] > │ let v0 : (unit -> UH0) = closure99() │
00:11:50 #33471 [verbose] > │ UH0_0(11.66423687037205, v0) │
00:11:50 #33472 [verbose] > │ and closure97 () () : UH0 = │
00:11:50 #33473 [verbose] > │ let v0 : (unit -> UH0) = closure98() │
00:11:50 #33474 [verbose] > │ UH0_0(11.664236870364254, v0) │
00:11:50 #33475 [verbose] > │ and closure96 () () : UH0 = │
00:11:50 #33476 [verbose] > │ let v0 : (unit -> UH0) = closure97() │
00:11:50 #33477 [verbose] > │ UH0_0(11.664236870353927, v0) │
00:11:50 #33478 [verbose] > │ and closure95 () () : UH0 = │
00:11:50 #33479 [verbose] > │ let v0 : (unit -> UH0) = closure96() │
00:11:50 #33480 [verbose] > │ UH0_0(11.664236870340249, v0) │
00:11:50 #33481 [verbose] > │ and closure94 () () : UH0 = │
00:11:50 #33482 [verbose] > │ let v0 : (unit -> UH0) = closure95() │
00:11:50 #33483 [verbose] > │ UH0_0(11.664236870322135, v0) │
00:11:50 #33484 [verbose] > │ and closure93 () () : UH0 = │
00:11:50 #33485 [verbose] > │ let v0 : (unit -> UH0) = closure94() │
00:11:50 #33486 [verbose] > │ UH0_0(11.664236870298145, v0) │
00:11:50 #33487 [verbose] > │ and closure92 () () : UH0 = │
00:11:50 #33488 [verbose] > │ let v0 : (unit -> UH0) = closure93() │
00:11:50 #33489 [verbose] > │ UH0_0(11.664236870266372, v0) │
00:11:50 #33490 [verbose] > │ and closure91 () () : UH0 = │
00:11:50 #33491 [verbose] > │ let v0 : (unit -> UH0) = closure92() │
00:11:50 #33492 [verbose] > │ UH0_0(11.664236870224292, v0) │
00:11:50 #33493 [verbose] > │ and closure90 () () : UH0 = │
00:11:50 #33494 [verbose] > │ let v0 : (unit -> UH0) = closure91() │
00:11:50 #33495 [verbose] > │ UH0_0(11.66423687016856, v0) │
00:11:50 #33496 [verbose] > │ and closure89 () () : UH0 = │
00:11:50 #33497 [verbose] > │ let v0 : (unit -> UH0) = closure90() │
00:11:50 #33498 [verbose] > │ UH0_0(11.664236870094747, v0) │
00:11:50 #33499 [verbose] > │ and closure88 () () : UH0 = │
00:11:50 #33500 [verbose] > │ let v0 : (unit -> UH0) = closure89() │
00:11:50 #33501 [verbose] > │ UH0_0(11.664236869996989, v0) │
00:11:50 #33502 [verbose] > │ and closure87 () () : UH0 = │
00:11:50 #33503 [verbose] > │ let v0 : (unit -> UH0) = closure88() │
00:11:50 #33504 [verbose] > │ UH0_0(11.664236869867516, v0) │
00:11:50 #33505 [verbose] > │ and closure86 () () : UH0 = │
00:11:50 #33506 [verbose] > │ let v0 : (unit -> UH0) = closure87() │
00:11:50 #33507 [verbose] > │ UH0_0(11.66423686969604, v0) │
00:11:50 #33508 [verbose] > │ and closure85 () () : UH0 = │
00:11:50 #33509 [verbose] > │ let v0 : (unit -> UH0) = closure86() │
00:11:50 #33510 [verbose] > │ UH0_0(11.664236869468937, v0) │
00:11:50 #33511 [verbose] > │ and closure84 () () : UH0 = │
00:11:50 #33512 [verbose] > │ let v0 : (unit -> UH0) = closure85() │
00:11:50 #33513 [verbose] > │ UH0_0(11.664236869168157, v0) │
00:11:50 #33514 [verbose] > │ and closure83 () () : UH0 = │
00:11:50 #33515 [verbose] > │ let v0 : (unit -> UH0) = closure84() │
00:11:50 #33516 [verbose] > │ UH0_0(11.6642368687698, v0) │
00:11:50 #33517 [verbose] > │ and closure82 () () : UH0 = │
00:11:50 #33518 [verbose] > │ let v0 : (unit -> UH0) = closure83() │
00:11:50 #33519 [verbose] > │ UH0_0(11.664236868242211, v0) │
00:11:50 #33520 [verbose] > │ and closure81 () () : UH0 = │
00:11:50 #33521 [verbose] > │ let v0 : (unit -> UH0) = closure82() │
00:11:50 #33522 [verbose] > │ UH0_0(11.664236867543465, v0) │
00:11:50 #33523 [verbose] > │ and closure80 () () : UH0 = │
00:11:50 #33524 [verbose] > │ let v0 : (unit -> UH0) = closure81() │
00:11:50 #33525 [verbose] > │ UH0_0(11.664236866618037, v0) │
00:11:50 #33526 [verbose] > │ and closure79 () () : UH0 = │
00:11:50 #33527 [verbose] > │ let v0 : (unit -> UH0) = closure80() │
00:11:50 #33528 [verbose] > │ UH0_0(11.664236865392386, v0) │
00:11:50 #33529 [verbose] > │ and closure78 () () : UH0 = │
00:11:50 #33530 [verbose] > │ let v0 : (unit -> UH0) = closure79() │
00:11:50 #33531 [verbose] > │ UH0_0(11.664236863769117, v0) │
00:11:50 #33532 [verbose] > │ and closure77 () () : UH0 = │
00:11:50 #33533 [verbose] > │ let v0 : (unit -> UH0) = closure78() │
00:11:50 #33534 [verbose] > │ UH0_0(11.664236861619237, v0) │
00:11:50 #33535 [verbose] > │ and closure76 () () : UH0 = │
00:11:50 #33536 [verbose] > │ let v0 : (unit -> UH0) = closure77() │
00:11:50 #33537 [verbose] > │ UH0_0(11.664236858771906, v0) │
00:11:50 #33538 [verbose] > │ and closure75 () () : UH0 = │
00:11:50 #33539 [verbose] > │ let v0 : (unit -> UH0) = closure76() │
00:11:50 #33540 [verbose] > │ UH0_0(11.66423685500086, v0) │
00:11:50 #33541 [verbose] > │ and closure74 () () : UH0 = │
00:11:50 #33542 [verbose] > │ let v0 : (unit -> UH0) = closure75() │
00:11:50 #33543 [verbose] > │ UH0_0(11.664236850006436, v0) │
00:11:50 #33544 [verbose] > │ and closure73 () () : UH0 = │
00:11:50 #33545 [verbose] > │ let v0 : (unit -> UH0) = closure74() │
00:11:50 #33546 [verbose] > │ UH0_0(11.664236843391752, v0) │
00:11:50 #33547 [verbose] > │ and closure72 () () : UH0 = │
00:11:50 #33548 [verbose] > │ let v0 : (unit -> UH0) = closure73() │
00:11:50 #33549 [verbose] > │ UH0_0(11.664236834631172, v0) │
00:11:50 #33550 [verbose] > │ and closure71 () () : UH0 = │
00:11:50 #33551 [verbose] > │ let v0 : (unit -> UH0) = closure72() │
00:11:50 #33552 [verbose] > │ UH0_0(11.66423682302854, v0) │
00:11:50 #33553 [verbose] > │ and closure70 () () : UH0 = │
00:11:50 #33554 [verbose] > │ let v0 : (unit -> UH0) = closure71() │
00:11:50 #33555 [verbose] > │ UH0_0(11.664236807661855, v0) │
00:11:50 #33556 [verbose] > │ and closure69 () () : UH0 = │
00:11:50 #33557 [verbose] > │ let v0 : (unit -> UH0) = closure70() │
00:11:50 #33558 [verbose] > │ UH0_0(11.664236787310005, v0) │
00:11:50 #33559 [verbose] > │ and closure68 () () : UH0 = │
00:11:50 #33560 [verbose] > │ let v0 : (unit -> UH0) = closure69() │
00:11:50 #33561 [verbose] > │ UH0_0(11.664236760355733, v0) │
00:11:50 #33562 [verbose] > │ and closure67 () () : UH0 = │
00:11:50 #33563 [verbose] > │ let v0 : (unit -> UH0) = closure68() │
00:11:50 #33564 [verbose] > │ UH0_0(11.664236724657123, v0) │
00:11:50 #33565 [verbose] > │ and closure66 () () : UH0 = │
00:11:50 #33566 [verbose] > │ let v0 : (unit -> UH0) = closure67() │
00:11:50 #33567 [verbose] > │ UH0_0(11.66423667737739, v0) │
00:11:50 #33568 [verbose] > │ and closure65 () () : UH0 = │
00:11:50 #33569 [verbose] > │ let v0 : (unit -> UH0) = closure66() │
00:11:50 #33570 [verbose] > │ UH0_0(11.664236614759462, v0) │
00:11:50 #33571 [verbose] > │ and closure64 () () : UH0 = │
00:11:50 #33572 [verbose] > │ let v0 : (unit -> UH0) = closure65() │
00:11:50 #33573 [verbose] > │ UH0_0(11.664236531827415, v0) │
00:11:50 #33574 [verbose] > │ and closure63 () () : UH0 = │
00:11:50 #33575 [verbose] > │ let v0 : (unit -> UH0) = closure64() │
00:11:50 #33576 [verbose] > │ UH0_0(11.664236421991067, v0) │
00:11:50 #33577 [verbose] > │ and closure62 () () : UH0 = │
00:11:50 #33578 [verbose] > │ let v0 : (unit -> UH0) = closure63() │
00:11:50 #33579 [verbose] > │ UH0_0(11.664236276522294, v0) │
00:11:50 #33580 [verbose] > │ and closure61 () () : UH0 = │
00:11:50 #33581 [verbose] > │ let v0 : (unit -> UH0) = closure62() │
00:11:50 #33582 [verbose] > │ UH0_0(11.664236083861448, v0) │
00:11:50 #33583 [verbose] > │ and closure60 () () : UH0 = │
00:11:50 #33584 [verbose] > │ let v0 : (unit -> UH0) = closure61() │
00:11:50 #33585 [verbose] > │ UH0_0(11.664235828698772, v0) │
00:11:50 #33586 [verbose] > │ and closure59 () () : UH0 = │
00:11:50 #33587 [verbose] > │ let v0 : (unit -> UH0) = closure60() │
00:11:50 #33588 [verbose] > │ UH0_0(11.664235490757811, v0) │
00:11:50 #33589 [verbose] > │ and closure58 () () : UH0 = │
00:11:50 #33590 [verbose] > │ let v0 : (unit -> UH0) = closure59() │
00:11:50 #33591 [verbose] > │ UH0_0(11.664235043184158, v0) │
00:11:50 #33592 [verbose] > │ and closure57 () () : UH0 = │
00:11:50 #33593 [verbose] > │ let v0 : (unit -> UH0) = closure58() │
00:11:50 #33594 [verbose] > │ UH0_0(11.66423445041147, v0) │
00:11:50 #33595 [verbose] > │ and closure56 () () : UH0 = │
00:11:50 #33596 [verbose] > │ let v0 : (unit -> UH0) = closure57() │
00:11:50 #33597 [verbose] > │ UH0_0(11.664233665335203, v0) │
00:11:50 #33598 [verbose] > │ and closure55 () () : UH0 = │
00:11:50 #33599 [verbose] > │ let v0 : (unit -> UH0) = closure56() │
00:11:50 #33600 [verbose] > │ UH0_0(11.664232625569467, v0) │
00:11:50 #33601 [verbose] > │ and closure54 () () : UH0 = │
00:11:50 #33602 [verbose] > │ let v0 : (unit -> UH0) = closure55() │
00:11:50 #33603 [verbose] > │ UH0_0(11.664231248489562, v0) │
00:11:50 #33604 [verbose] > │ and closure53 () () : UH0 = │
00:11:50 #33605 [verbose] > │ let v0 : (unit -> UH0) = closure54() │
00:11:50 #33606 [verbose] > │ UH0_0(11.664229424666262, v0) │
00:11:50 #33607 [verbose] > │ and closure52 () () : UH0 = │
00:11:50 #33608 [verbose] > │ let v0 : (unit -> UH0) = closure53() │
00:11:50 #33609 [verbose] > │ UH0_0(11.66422700917009, v0) │
00:11:50 #33610 [verbose] > │ and closure51 () () : UH0 = │
00:11:50 #33611 [verbose] > │ let v0 : (unit -> UH0) = closure52() │
00:11:50 #33612 [verbose] > │ UH0_0(11.664223810054642, v0) │
00:11:50 #33613 [verbose] > │ and closure50 () () : UH0 = │
00:11:50 #33614 [verbose] > │ let v0 : (unit -> UH0) = closure51() │
00:11:50 #33615 [verbose] > │ UH0_0(11.664219573103773, v0) │
00:11:50 #33616 [verbose] > │ and closure49 () () : UH0 = │
00:11:50 #33617 [verbose] > │ let v0 : (unit -> UH0) = closure50() │
00:11:50 #33618 [verbose] > │ UH0_0(11.6642139616307, v0) │
00:11:50 #33619 [verbose] > │ and closure48 () () : UH0 = │
00:11:50 #33620 [verbose] > │ let v0 : (unit -> UH0) = closure49() │
00:11:50 #33621 [verbose] > │ UH0_0(11.664206529723813, v0) │
00:11:50 #33622 [verbose] > │ and closure47 () () : UH0 = │
00:11:50 #33623 [verbose] > │ let v0 : (unit -> UH0) = closure48() │
00:11:50 #33624 [verbose] > │ UH0_0(11.664196686813408, v0) │
00:11:50 #33625 [verbose] > │ and closure46 () () : UH0 = │
00:11:50 #33626 [verbose] > │ let v0 : (unit -> UH0) = closure47() │
00:11:50 #33627 [verbose] > │ UH0_0(11.664183650743945, v0) │
00:11:50 #33628 [verbose] > │ and closure45 () () : UH0 = │
00:11:50 #33629 [verbose] > │ let v0 : (unit -> UH0) = closure46() │
00:11:50 #33630 [verbose] > │ UH0_0(11.664166385623318, v0) │
00:11:50 #33631 [verbose] > │ and closure44 () () : UH0 = │
00:11:50 #33632 [verbose] > │ let v0 : (unit -> UH0) = closure45() │
00:11:50 #33633 [verbose] > │ UH0_0(11.664143519511356, v0) │
00:11:50 #33634 [verbose] > │ and closure43 () () : UH0 = │
00:11:50 #33635 [verbose] > │ let v0 : (unit -> UH0) = closure44() │
00:11:50 #33636 [verbose] > │ UH0_0(11.664113235408447, v0) │
00:11:50 #33637 [verbose] > │ and closure42 () () : UH0 = │
00:11:50 #33638 [verbose] > │ let v0 : (unit -> UH0) = closure43() │
00:11:50 #33639 [verbose] > │ UH0_0(11.66407312688485, v0) │
00:11:50 #33640 [verbose] > │ and closure41 () () : UH0 = │
00:11:50 #33641 [verbose] > │ let v0 : (unit -> UH0) = closure42() │
00:11:50 #33642 [verbose] > │ UH0_0(11.664020006883758, v0) │
00:11:50 #33643 [verbose] > │ and closure40 () () : UH0 = │
00:11:50 #33644 [verbose] > │ let v0 : (unit -> UH0) = closure41() │
00:11:50 #33645 [verbose] > │ UH0_0(11.663949654514292, v0) │
00:11:50 #33646 [verbose] > │ and closure39 () () : UH0 = │
00:11:50 #33647 [verbose] > │ let v0 : (unit -> UH0) = closure40() │
00:11:50 #33648 [verbose] > │ UH0_0(11.663856479730171, v0) │
00:11:50 #33649 [verbose] > │ and closure38 () () : UH0 = │
00:11:50 #33650 [verbose] > │ let v0 : (unit -> UH0) = closure39() │
00:11:50 #33651 [verbose] > │ UH0_0(11.663733079277343, v0) │
00:11:50 #33652 [verbose] > │ and closure37 () () : UH0 = │
00:11:50 #33653 [verbose] > │ let v0 : (unit -> UH0) = closure38() │
00:11:50 #33654 [verbose] > │ UH0_0(11.663569648675777, v0) │
00:11:50 #33655 [verbose] > │ and closure36 () () : UH0 = │
00:11:50 #33656 [verbose] > │ let v0 : (unit -> UH0) = closure37() │
00:11:50 #33657 [verbose] > │ UH0_0(11.663353203599439, v0) │
00:11:50 #33658 [verbose] > │ and closure35 () () : UH0 = │
00:11:50 #33659 [verbose] > │ let v0 : (unit -> UH0) = closure36() │
00:11:50 #33660 [verbose] > │ UH0_0(11.663066548940721, v0) │
00:11:50 #33661 [verbose] > │ and closure34 () () : UH0 = │
00:11:50 #33662 [verbose] > │ let v0 : (unit -> UH0) = closure35() │
00:11:50 #33663 [verbose] > │ UH0_0(11.662686913915445, v0) │
00:11:50 #33664 [verbose] > │ and closure33 () () : UH0 = │
00:11:50 #33665 [verbose] > │ let v0 : (unit -> UH0) = closure34() │
00:11:50 #33666 [verbose] > │ UH0_0(11.662184145236864, v0) │
00:11:50 #33667 [verbose] > │ and closure32 () () : UH0 = │
00:11:50 #33668 [verbose] > │ let v0 : (unit -> UH0) = closure33() │
00:11:50 #33669 [verbose] > │ UH0_0(11.661518315638029, v0) │
00:11:50 #33670 [verbose] > │ and closure31 () () : UH0 = │
00:11:50 #33671 [verbose] > │ let v0 : (unit -> UH0) = closure32() │
00:11:50 #33672 [verbose] > │ UH0_0(11.66063655920926, v0) │
00:11:50 #33673 [verbose] > │ and closure30 () () : UH0 = │
00:11:50 #33674 [verbose] > │ let v0 : (unit -> UH0) = closure31() │
00:11:50 #33675 [verbose] > │ UH0_0(11.659468884709733, v0) │
00:11:50 #33676 [verbose] > │ and closure29 () () : UH0 = │
00:11:50 #33677 [verbose] > │ let v0 : (unit -> UH0) = closure30() │
00:11:50 #33678 [verbose] > │ UH0_0(11.657922638782631, v0) │
00:11:50 #33679 [verbose] > │ and closure28 () () : UH0 = │
00:11:50 #33680 [verbose] > │ let v0 : (unit -> UH0) = closure29() │
00:11:50 #33681 [verbose] > │ UH0_0(11.655875187195818, v0) │
00:11:50 #33682 [verbose] > │ and closure27 () () : UH0 = │
00:11:50 #33683 [verbose] > │ let v0 : (unit -> UH0) = closure28() │
00:11:50 #33684 [verbose] > │ UH0_0(11.653164246713697, v0) │
00:11:50 #33685 [verbose] > │ and closure26 () () : UH0 = │
00:11:50 #33686 [verbose] > │ let v0 : (unit -> UH0) = closure27() │
00:11:50 #33687 [verbose] > │ UH0_0(11.64957512416459, v0) │
00:11:50 #33688 [verbose] > │ and closure25 () () : UH0 = │
00:11:50 #33689 [verbose] > │ let v0 : (unit -> UH0) = closure26() │
00:11:50 #33690 [verbose] > │ UH0_0(11.644823892116417, v0) │
00:11:50 #33691 [verbose] > │ and closure24 () () : UH0 = │
00:11:50 #33692 [verbose] > │ let v0 : (unit -> UH0) = closure25() │
00:11:50 #33693 [verbose] > │ UH0_0(11.63853524018339, v0) │
00:11:50 #33694 [verbose] > │ and closure23 () () : UH0 = │
00:11:50 #33695 [verbose] > │ let v0 : (unit -> UH0) = closure24() │
00:11:50 #33696 [verbose] > │ UH0_0(11.630213374558416, v0) │
00:11:50 #33697 [verbose] > │ and closure22 () () : UH0 = │
00:11:50 #33698 [verbose] > │ let v0 : (unit -> UH0) = closure23() │
00:11:50 #33699 [verbose] > │ UH0_0(11.619203884549703, v0) │
00:11:50 #33700 [verbose] > │ and closure21 () () : UH0 = │
00:11:50 #33701 [verbose] > │ let v0 : (unit -> UH0) = closure22() │
00:11:50 #33702 [verbose] > │ UH0_0(11.604643948207235, v0) │
00:11:50 #33703 [verbose] > │ and closure20 () () : UH0 = │
00:11:50 #33704 [verbose] > │ let v0 : (unit -> UH0) = closure21() │
00:11:50 #33705 [verbose] > │ UH0_0(11.585397618384544, v0) │
00:11:50 #33706 [verbose] > │ and closure19 () () : UH0 = │
00:11:50 #33707 [verbose] > │ let v0 : (unit -> UH0) = closure20() │
00:11:50 #33708 [verbose] > │ UH0_0(11.559972254267073, v0) │
00:11:50 #33709 [verbose] > │ and closure18 () () : UH0 = │
00:11:50 #33710 [verbose] > │ let v0 : (unit -> UH0) = closure19() │
00:11:50 #33711 [verbose] > │ UH0_0(11.526411536153837, v0) │
00:11:50 #33712 [verbose] > │ and closure17 () () : UH0 = │
00:11:50 #33713 [verbose] > │ let v0 : (unit -> UH0) = closure18() │
00:11:50 #33714 [verbose] > │ UH0_0(11.48216011776808, v0) │
00:11:50 #33715 [verbose] > │ and closure16 () () : UH0 = │
00:11:50 #33716 [verbose] > │ let v0 : (unit -> UH0) = closure17() │
00:11:50 #33717 [verbose] > │ UH0_0(11.42389519391233, v0) │
00:11:50 #33718 [verbose] > │ and closure15 () () : UH0 = │
00:11:50 #33719 [verbose] > │ let v0 : (unit -> UH0) = closure16() │
00:11:50 #33720 [verbose] > │ UH0_0(11.347321723441393, v0) │
00:11:50 #33721 [verbose] > │ and closure14 () () : UH0 = │
00:11:50 #33722 [verbose] > │ let v0 : (unit -> UH0) = closure15() │
00:11:50 #33723 [verbose] > │ UH0_0(11.246931775734161, v0) │
00:11:50 #33724 [verbose] > │ and closure13 () () : UH0 = │
00:11:50 #33725 [verbose] > │ let v0 : (unit -> UH0) = closure14() │
00:11:50 #33726 [verbose] > │ UH0_0(11.115736011467376, v0) │
00:11:50 #33727 [verbose] > │ and closure12 () () : UH0 = │
00:11:50 #33728 [verbose] > │ let v0 : (unit -> UH0) = closure13() │
00:11:50 #33729 [verbose] > │ UH0_0(10.94498876251829, v0) │
00:11:50 #33730 [verbose] > │ and closure11 () () : UH0 = │
00:11:50 #33731 [verbose] > │ let v0 : (unit -> UH0) = closure12() │
00:11:50 #33732 [verbose] > │ UH0_0(10.72394989903564, v0) │
00:11:50 #33733 [verbose] > │ and closure10 () () : UH0 = │
00:11:50 #33734 [verbose] > │ let v0 : (unit -> UH0) = closure11() │
00:11:50 #33735 [verbose] > │ UH0_0(10.439758275369812, v0) │
00:11:50 #33736 [verbose] > │ and closure9 () () : UH0 = │
00:11:50 #33737 [verbose] > │ let v0 : (unit -> UH0) = closure10() │
00:11:50 #33738 [verbose] > │ UH0_0(10.077531599826058, v0) │
00:11:50 #33739 [verbose] > │ and closure8 () () : UH0 = │
00:11:50 #33740 [verbose] > │ let v0 : (unit -> UH0) = closure9() │
00:11:50 #33741 [verbose] > │ UH0_0(9.62084761372258, v0) │
00:11:50 #33742 [verbose] > │ and closure7 () () : UH0 = │
00:11:50 #33743 [verbose] > │ let v0 : (unit -> UH0) = closure8() │
00:11:50 #33744 [verbose] > │ UH0_0(9.052781056066443, v0) │
00:11:50 #33745 [verbose] > │ and closure6 () () : UH0 = │
00:11:50 #33746 [verbose] > │ let v0 : (unit -> UH0) = closure7() │
00:11:50 #33747 [verbose] > │ UH0_0(8.357635347880503, v0) │
00:11:50 #33748 [verbose] > │ and closure5 () () : UH0 = │
00:11:50 #33749 [verbose] > │ let v0 : (unit -> UH0) = closure6() │
00:11:50 #33750 [verbose] > │ UH0_0(7.523376447621674, v0) │
00:11:50 #33751 [verbose] > │ and closure4 () () : UH0 = │
00:11:50 #33752 [verbose] > │ let v0 : (unit -> UH0) = closure5() │
00:11:50 #33753 [verbose] > │ UH0_0(6.544529054818572, v0) │
00:11:50 #33754 [verbose] > │ and closure3 () () : UH0 = │
00:11:50 #33755 [verbose] > │ let v0 : (unit -> UH0) = closure4() │
00:11:50 #33756 [verbose] > │ UH0_0(5.424976512996006, v0) │
00:11:50 #33757 [verbose] > │ and closure2 () () : UH0 = │
00:11:50 #33758 [verbose] > │ let v0 : (unit -> UH0) = closure3() │
00:11:50 #33759 [verbose] > │ UH0_0(4.179852321428571, v0) │
00:11:50 #33760 [verbose] > │ and closure1 () () : UH0 = │
00:11:50 #33761 [verbose] > │ let v0 : (unit -> UH0) = closure2() │
00:11:50 #33762 [verbose] > │ UH0_0(2.835714285714286, v0) │
00:11:50 #33763 [verbose] > │ and closure0 () () : UH0 = │
00:11:50 #33764 [verbose] > │ let v0 : (unit -> UH0) = closure1() │
00:11:50 #33765 [verbose] > │ UH0_0(1.4285714285714286, v0) │
00:11:50 #33766 [verbose] > │ and method3 (v0 : float, v1 : UH0) : US0 = │
00:11:50 #33767 [verbose] > │ match v1 with │
00:11:50 #33768 [verbose] > │ | UH0_0(v2, v3) -> (* StreamCons *) │
00:11:50 #33769 [verbose] > │ let v4 : bool = v0 <= 0.0 │
00:11:50 #33770 [verbose] > │ if v4 then │
00:11:50 #33771 [verbose] > │ US0_0(v2) │
00:11:50 #33772 [verbose] > │ else │
00:11:50 #33773 [verbose] > │ let v6 : float = v0 - 1.0 │
00:11:50 #33774 [verbose] > │ let v7 : UH0 = v3 () │
00:11:50 #33775 [verbose] > │ method3(v6, v7) │
00:11:50 #33776 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:11:50 #33777 [verbose] > │ US0_1 │
00:11:50 #33778 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:11:50 #33779 [verbose] > │ []) * (float [])) [])) = │
00:11:50 #33780 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (121) │
00:11:50 #33781 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:11:50 #33782 [verbose] > │ while method1(v1) do │
00:11:50 #33783 [verbose] > │ let v3 : int32 = v1.l0 │
00:11:50 #33784 [verbose] > │ let v4 : float = float v3 │
00:11:50 #33785 [verbose] > │ let v5 : float = 0.5 * v4 │
00:11:50 #33786 [verbose] > │ v0.[int v3] <- v5 │
00:11:50 #33787 [verbose] > │ let v6 : int32 = v3 + 1 │
00:11:50 #33788 [verbose] > │ v1.l0 <- v6 │
00:11:50 #33789 [verbose] > │ () │
00:11:50 #33790 [verbose] > │ let v7 : int32 = v0.Length │
00:11:50 #33791 [verbose] > │ let v8 : (float []) = Array.zeroCreate<float> (v7) │
00:11:50 #33792 [verbose] > │ let v9 : Mut0 = {l0 = 0} : Mut0 │
00:11:50 #33793 [verbose] > │ while method2(v7, v9) do │
00:11:50 #33794 [verbose] > │ let v11 : int32 = v9.l0 │
00:11:50 #33795 [verbose] > │ let v12 : float = v0.[int v11] │
00:11:50 #33796 [verbose] > │ let v13 : float = round v12 │
00:11:50 #33797 [verbose] > │ let v14 : float = -v13 │
00:11:50 #33798 [verbose] > │ let v15 : bool = v13 >= v14 │
00:11:50 #33799 [verbose] > │ let v16 : float = │
00:11:50 #33800 [verbose] > │ if v15 then │
00:11:50 #33801 [verbose] > │ v13 │
00:11:50 #33802 [verbose] > │ else │
00:11:50 #33803 [verbose] > │ v14 │
00:11:50 #33804 [verbose] > │ let v17 : float = 0.0 │
00:11:50 #33805 [verbose] > │ let v18 : (unit -> UH0) = closure0() │
00:11:50 #33806 [verbose] > │ let v19 : UH0 = UH0_0(v17, v18) │
00:11:50 #33807 [verbose] > │ let v20 : US0 = method3(v16, v19) │
00:11:50 #33808 [verbose] > │ let v23 : float = │
00:11:50 #33809 [verbose] > │ match v20 with │
00:11:50 #33810 [verbose] > │ | US0_1 -> (* None *) │
00:11:50 #33811 [verbose] > │ 0.0 │
00:11:50 #33812 [verbose] > │ | US0_0(v21) -> (* Some *) │
00:11:50 #33813 [verbose] > │ v21 │
00:11:50 #33814 [verbose] > │ v8.[int v11] <- v23 │
00:11:50 #33815 [verbose] > │ let v24 : int32 = v11 + 1 │
00:11:50 #33816 [verbose] > │ v9.l0 <- v24 │
00:11:50 #33817 [verbose] > │ () │
00:11:50 #33818 [verbose] > │ let v25 : string = "velocity of bike (m/s)" │
00:11:50 #33819 [verbose] > │ let v26 : (struct (string * (float []) * (float [])) []) = [|struct │
00:11:50 #33820 [verbose] > │ (v25, v0, v8)|] │
00:11:50 #33821 [verbose] > │ let v27 : string = "bike velocity" │
00:11:50 #33822 [verbose] > │ let v28 : string = "time (s)" │
00:11:50 #33823 [verbose] > │ let v29 : string = "" │
00:11:50 #33824 [verbose] > │ struct (v27, v28, v29, v26) │
00:11:50 #33825 [verbose] > │ method0() │
00:11:50 #33826 [verbose] > │ │
00:11:50 #33827 [verbose] > │ │
00:11:50 #33828 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:50 #33829 [verbose] >
00:11:50 #33830 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:50 #33831 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:50 #33832 [verbose] > │ ## velocity_ftv │
00:11:50 #33833 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:50 #33834 [verbose] >
00:11:50 #33835 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:50 #33836 [verbose] > inl newton_second_tv m fs (t, v0) =
00:11:50 #33837 [verbose] > inl f_net = fs |> listm.map (fun f => f (t, v0)) |> listm'.sum
00:11:50 #33838 [verbose] > inl acc = f_net / m
00:11:50 #33839 [verbose] > 1, acc
00:11:50 #33840 [verbose] >
00:11:50 #33841 [verbose] > inl update_tv dt m fs (t, v0) =
00:11:50 #33842 [verbose] > inl dtdt, dvdt = newton_second_tv m fs (t, v0)
00:11:50 #33843 [verbose] > t + dtdt * dt, v0 + dvdt * dt
00:11:50 #33844 [verbose] >
00:11:50 #33845 [verbose] > inl velocity_ftv dt m tv0 fs t =
00:11:50 #33846 [verbose] > stream.iterate (join update_tv dt m fs) tv0
00:11:50 #33847 [verbose] > |> stream.try_item (t / dt |> math.round |> abs)
00:11:50 #33848 [verbose] > |> optionm.map snd
00:11:50 #33849 [verbose] > |> optionm'.default_value 0
00:11:50 #33850 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d218a9f0d4f71edfddf9edaab957f8fab2b166eece9ba73b5e32b4571d892197\main.spi
00:11:50 #33851 [verbose] >
00:11:50 #33852 [verbose] > ╭─[ 224.52ms - stdout ]────────────────────────────────────────────────────────╮
00:11:50 #33853 [verbose] > │ () │
00:11:50 #33854 [verbose] > │ │
00:11:50 #33855 [verbose] > │ │
00:11:50 #33856 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:50 #33857 [verbose] >
00:11:50 #33858 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:50 #33859 [verbose] > // // test
00:11:50 #33860 [verbose] >
00:11:50 #33861 [verbose] > inl x = am'.init_series 0 100 0.1
00:11:50 #33862 [verbose] > inl y =
00:11:50 #33863 [verbose] > x
00:11:50 #33864 [verbose] > |> am.map (
00:11:50 #33865 [verbose] > velocity_ftv 0.1 20 (dyn (0, 0)) [[ fun (t, _) => pedal_coast t; fun (_,
00:11:50 #33866 [verbose] > v) => f_air 2 1.225 0.5 v ]]
00:11:50 #33867 [verbose] > )
00:11:50 #33868 [verbose] > "pedaling and coasting with air", "time (s)", "", ;[[ "velocity of bike (m/s)",
00:11:50 #33869 [verbose] > x, y ]]
00:11:51 #33870 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\11d81127bc5df6c3de0208718f589d1a44b95a9738be9b46afa4314ff75080c3\main.spi
00:11:51 #33871 [verbose] >
00:11:51 #33872 [verbose] > ╭─[ 696.86ms - return value ]──────────────────────────────────────────────────╮
00:11:51 #33873 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:11:51 #33874 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:11:51 #33875 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:11:51 #33876 [verbose] > │ stroke="none"/> │
00:11:51 #33877 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:11:51 #33878 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:11:51 #33879 [verbose] > │ fill="#FFFFFF"> │
00:11:51 #33880 [verbose] > │ pedaling and coasting with air │
00:11:51 #33881 [verbose] > │ </text> │
00:11:51 #33882 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │
00:11:51 #33883 [verbose] > │ y2="75"/> │
00:11:51 #33884 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:11:51 #33885 [verbose] > │ y2="75"/> │
00:11:51 #33886 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │
00:11:51 #33887 [verbose] > │ y2="75"/> │
00:11:51 #33888 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │
00:11:51 #33889 [verbose] > │ y2="75"/> │
00:11:51 #33890 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x... │
00:11:51 #33891 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:51 #33892 [verbose] >
00:11:51 #33893 [verbose] > ╭─[ 708.60ms - stdout ]────────────────────────────────────────────────────────╮
00:11:51 #33894 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:11:51 #33895 [verbose] > │ and UH0 = │
00:11:51 #33896 [verbose] > │ | UH0_0 of float * float * (unit -> UH0) │
00:11:51 #33897 [verbose] > │ | UH0_1 │
00:11:51 #33898 [verbose] > │ and [<Struct>] US0 = │
00:11:51 #33899 [verbose] > │ | US0_0 of f0_0 : float * f0_1 : float │
00:11:51 #33900 [verbose] > │ | US0_1 │
00:11:51 #33901 [verbose] > │ and [<Struct>] US1 = │
00:11:51 #33902 [verbose] > │ | US1_0 of f0_0 : float │
00:11:51 #33903 [verbose] > │ | US1_1 │
00:11:51 #33904 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:11:51 #33905 [verbose] > │ let v1 : int32 = v0.l0 │
00:11:51 #33906 [verbose] > │ let v2 : bool = v1 < 1001 │
00:11:51 #33907 [verbose] > │ v2 │
00:11:51 #33908 [verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool = │
00:11:51 #33909 [verbose] > │ let v2 : int32 = v1.l0 │
00:11:51 #33910 [verbose] > │ let v3 : bool = v2 < v0 │
00:11:51 #33911 [verbose] > │ v3 │
00:11:51 #33912 [verbose] > │ and closure0 () struct (v0 : float, v1 : float) : struct (float * float) = │
00:11:51 #33913 [verbose] > │ let v2 : float = -v1 │
00:11:51 #33914 [verbose] > │ let v3 : bool = v1 >= v2 │
00:11:51 #33915 [verbose] > │ let v4 : float = │
00:11:51 #33916 [verbose] > │ if v3 then │
00:11:51 #33917 [verbose] > │ v1 │
00:11:51 #33918 [verbose] > │ else │
00:11:51 #33919 [verbose] > │ v2 │
00:11:51 #33920 [verbose] > │ let v5 : float = -1.225 * v4 │
00:11:51 #33921 [verbose] > │ let v6 : float = v5 * v1 │
00:11:51 #33922 [verbose] > │ let v7 : float = v6 / 2.0 │
00:11:51 #33923 [verbose] > │ let v8 : float = v0 / 20.0 │
00:11:51 #33924 [verbose] > │ let v9 : int32 = int32 v8 │
00:11:51 #33925 [verbose] > │ let v10 : float = float v9 │
00:11:51 #33926 [verbose] > │ let v11 : float = v10 * 20.0 │
00:11:51 #33927 [verbose] > │ let v12 : float = v0 - v11 │
00:11:51 #33928 [verbose] > │ let v13 : bool = v12 > 0.0 │
00:11:51 #33929 [verbose] > │ let v15 : bool = │
00:11:51 #33930 [verbose] > │ if v13 then │
00:11:51 #33931 [verbose] > │ let v14 : bool = v12 < 10.0 │
00:11:51 #33932 [verbose] > │ v14 │
00:11:51 #33933 [verbose] > │ else │
00:11:51 #33934 [verbose] > │ false │
00:11:51 #33935 [verbose] > │ let v16 : float = │
00:11:51 #33936 [verbose] > │ if v15 then │
00:11:51 #33937 [verbose] > │ 10.0 │
00:11:51 #33938 [verbose] > │ else │
00:11:51 #33939 [verbose] > │ 0.0 │
00:11:51 #33940 [verbose] > │ let v17 : float = v16 + v7 │
00:11:51 #33941 [verbose] > │ let v18 : float = v17 / 20.0 │
00:11:51 #33942 [verbose] > │ let v19 : float = v0 + 0.1 │
00:11:51 #33943 [verbose] > │ let v20 : float = v18 * 0.1 │
00:11:51 #33944 [verbose] > │ let v21 : float = v1 + v20 │
00:11:51 #33945 [verbose] > │ struct (v19, v21) │
00:11:51 #33946 [verbose] > │ and method3 () : (struct (float * float) -> struct (float * float)) = │
00:11:51 #33947 [verbose] > │ closure0() │
00:11:51 #33948 [verbose] > │ and closure1 (v0 : (struct (float * float) -> struct (float * float)), v1 : │
00:11:51 #33949 [verbose] > │ float, v2 : float, v3 : float, v4 : float) () : UH0 = │
00:11:51 #33950 [verbose] > │ let struct (v5 : float, v6 : float) = v0 struct (v3, v4) │
00:11:51 #33951 [verbose] > │ let v7 : (unit -> UH0) = closure1(v0, v1, v2, v5, v6) │
00:11:51 #33952 [verbose] > │ UH0_0(v3, v4, v7) │
00:11:51 #33953 [verbose] > │ and method4 (v0 : float, v1 : UH0) : US0 = │
00:11:51 #33954 [verbose] > │ match v1 with │
00:11:51 #33955 [verbose] > │ | UH0_0(v2, v3, v4) -> (* StreamCons *) │
00:11:51 #33956 [verbose] > │ let v5 : bool = v0 <= 0.0 │
00:11:51 #33957 [verbose] > │ if v5 then │
00:11:51 #33958 [verbose] > │ US0_0(v2, v3) │
00:11:51 #33959 [verbose] > │ else │
00:11:51 #33960 [verbose] > │ let v7 : float = v0 - 1.0 │
00:11:51 #33961 [verbose] > │ let v8 : UH0 = v4 () │
00:11:51 #33962 [verbose] > │ method4(v7, v8) │
00:11:51 #33963 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:11:51 #33964 [verbose] > │ US0_1 │
00:11:51 #33965 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:11:51 #33966 [verbose] > │ []) * (float [])) [])) = │
00:11:51 #33967 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (1001) │
00:11:51 #33968 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:11:51 #33969 [verbose] > │ while method1(v1) do │
00:11:51 #33970 [verbose] > │ let v3 : int32 = v1.l0 │
00:11:51 #33971 [verbose] > │ let v4 : float = float v3 │
00:11:51 #33972 [verbose] > │ let v5 : float = 0.1 * v4 │
00:11:51 #33973 [verbose] > │ v0.[int v3] <- v5 │
00:11:51 #33974 [verbose] > │ let v6 : int32 = v3 + 1 │
00:11:51 #33975 [verbose] > │ v1.l0 <- v6 │
00:11:51 #33976 [verbose] > │ () │
00:11:51 #33977 [verbose] > │ let v7 : float = 0.0 │
00:11:51 #33978 [verbose] > │ let v8 : float = 0.0 │
00:11:51 #33979 [verbose] > │ let v9 : int32 = v0.Length │
00:11:51 #33980 [verbose] > │ let v10 : (float []) = Array.zeroCreate<float> (v9) │
00:11:51 #33981 [verbose] > │ let v11 : Mut0 = {l0 = 0} : Mut0 │
00:11:51 #33982 [verbose] > │ while method2(v9, v11) do │
00:11:51 #33983 [verbose] > │ let v13 : int32 = v11.l0 │
00:11:51 #33984 [verbose] > │ let v14 : float = v0.[int v13] │
00:11:51 #33985 [verbose] > │ let v15 : (struct (float * float) -> struct (float * float)) = │
00:11:51 #33986 [verbose] > │ method3() │
00:11:51 #33987 [verbose] > │ let struct (v16 : float, v17 : float) = v15 struct (v7, v8) │
00:11:51 #33988 [verbose] > │ let v18 : float = v14 / 0.1 │
00:11:51 #33989 [verbose] > │ let v19 : float = round v18 │
00:11:51 #33990 [verbose] > │ let v20 : float = -v19 │
00:11:51 #33991 [verbose] > │ let v21 : bool = v19 >= v20 │
00:11:51 #33992 [verbose] > │ let v22 : float = │
00:11:51 #33993 [verbose] > │ if v21 then │
00:11:51 #33994 [verbose] > │ v19 │
00:11:51 #33995 [verbose] > │ else │
00:11:51 #33996 [verbose] > │ v20 │
00:11:51 #33997 [verbose] > │ let v23 : (unit -> UH0) = closure1(v15, v7, v8, v16, v17) │
00:11:51 #33998 [verbose] > │ let v24 : UH0 = UH0_0(v7, v8, v23) │
00:11:51 #33999 [verbose] > │ let v25 : US0 = method4(v22, v24) │
00:11:51 #34000 [verbose] > │ let v31 : US1 = │
00:11:51 #34001 [verbose] > │ match v25 with │
00:11:51 #34002 [verbose] > │ | US0_1 -> (* None *) │
00:11:51 #34003 [verbose] > │ US1_1 │
00:11:51 #34004 [verbose] > │ | US0_0(v26, v27) -> (* Some *) │
00:11:51 #34005 [verbose] > │ US1_0(v27) │
00:11:51 #34006 [verbose] > │ let v34 : float = │
00:11:51 #34007 [verbose] > │ match v31 with │
00:11:51 #34008 [verbose] > │ | US1_1 -> (* None *) │
00:11:51 #34009 [verbose] > │ 0.0 │
00:11:51 #34010 [verbose] > │ | US1_0(v32) -> (* Some *) │
00:11:51 #34011 [verbose] > │ v32 │
00:11:51 #34012 [verbose] > │ v10.[int v13] <- v34 │
00:11:51 #34013 [verbose] > │ let v35 : int32 = v13 + 1 │
00:11:51 #34014 [verbose] > │ v11.l0 <- v35 │
00:11:51 #34015 [verbose] > │ () │
00:11:51 #34016 [verbose] > │ let v36 : string = "velocity of bike (m/s)" │
00:11:51 #34017 [verbose] > │ let v37 : (struct (string * (float []) * (float [])) []) = [|struct │
00:11:51 #34018 [verbose] > │ (v36, v0, v10)|] │
00:11:51 #34019 [verbose] > │ let v38 : string = "pedaling and coasting with air" │
00:11:51 #34020 [verbose] > │ let v39 : string = "time (s)" │
00:11:51 #34021 [verbose] > │ let v40 : string = "" │
00:11:51 #34022 [verbose] > │ struct (v38, v39, v40, v37) │
00:11:51 #34023 [verbose] > │ method0() │
00:11:51 #34024 [verbose] > │ │
00:11:51 #34025 [verbose] > │ │
00:11:51 #34026 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:51 #34027 [verbose] >
00:11:51 #34028 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:51 #34029 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:51 #34030 [verbose] > │ ## velocity_ftxv │
00:11:51 #34031 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:51 #34032 [verbose] >
00:11:51 #34033 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:51 #34034 [verbose] > nominal state_1d = time * position * velocity
00:11:51 #34035 [verbose] > nominal rrr = f64 * f64 * f64
00:11:51 #34036 [verbose] >
00:11:51 #34037 [verbose] > inl newton_second_1d m fs (state_1d (t, x0, v0)) =
00:11:51 #34038 [verbose] > inl f_net = fs |> listm.map (fun f => f (state_1d (t, x0, v0))) |>
00:11:51 #34039 [verbose] > listm'.sum
00:11:51 #34040 [verbose] > inl acc = f_net / m
00:11:51 #34041 [verbose] > rrr (1f64, v0, acc)
00:11:51 #34042 [verbose] >
00:11:51 #34043 [verbose] > inl euler_1d dt deriv (state_1d (t0, x0, v0) as t) =
00:11:51 #34044 [verbose] > inl (rrr (_, _, dvdt)) = deriv t
00:11:51 #34045 [verbose] > inl t1 = t0 + dt
00:11:51 #34046 [verbose] > inl x1 = x0 + v0 * dt
00:11:51 #34047 [verbose] > inl v1 = v0 + dvdt * dt
00:11:51 #34048 [verbose] > state_1d (t1, x1, v1)
00:11:51 #34049 [verbose] >
00:11:51 #34050 [verbose] > inl update_txv dt m fs =
00:11:51 #34051 [verbose] > newton_second_1d m fs |> euler_1d dt
00:11:51 #34052 [verbose] >
00:11:51 #34053 [verbose] > inl states_txv dt m txv0 fs =
00:11:51 #34054 [verbose] > seq.iterate_ (update_txv dt m fs) txv0
00:11:51 #34055 [verbose] >
00:11:51 #34056 [verbose] > inl velocity_1d sts t =
00:11:51 #34057 [verbose] > inl (state_1d (t0, _, _)) = sts 0
00:11:51 #34058 [verbose] > inl (state_1d (t1, _, _)) = sts 1
00:11:51 #34059 [verbose] > inl dt = t1 - t0
00:11:51 #34060 [verbose] > inl num_steps = t / dt |> math.round |> abs
00:11:51 #34061 [verbose] > inl (state_1d (_, _, v0)) = sts num_steps
00:11:51 #34062 [verbose] > v0
00:11:51 #34063 [verbose] >
00:11:51 #34064 [verbose] > inl velocity_ftxv dt m txv0 fs =
00:11:51 #34065 [verbose] > states_txv dt m txv0 fs |> velocity_1d
00:11:51 #34066 [verbose] >
00:11:51 #34067 [verbose] > inl position_1d sts t =
00:11:51 #34068 [verbose] > inl (state_1d (t0, _, _)) = sts 0
00:11:51 #34069 [verbose] > inl (state_1d (t1, _, _)) = sts 1
00:11:51 #34070 [verbose] > inl dt = t1 - t0
00:11:51 #34071 [verbose] > inl num_steps = t / dt |> math.round |> abs
00:11:51 #34072 [verbose] > inl (state_1d (_, x0, _)) = sts num_steps
00:11:51 #34073 [verbose] > x0
00:11:51 #34074 [verbose] >
00:11:51 #34075 [verbose] > inl position_ftxv dt m txv0 fs =
00:11:51 #34076 [verbose] > states_txv dt m txv0 fs |> position_1d
00:11:51 #34077 [verbose] >
00:11:51 #34078 [verbose] > inl spring_force k (state_1d (_, x0, _)) =
00:11:51 #34079 [verbose] > -k * x0
00:11:51 #34080 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\89b3a4095c013cc6473d1bc2bf94e7ef989921c44e204dd9594201600f91ec7a\main.spi
00:11:51 #34081 [verbose] >
00:11:51 #34082 [verbose] > ╭─[ 252.90ms - stdout ]────────────────────────────────────────────────────────╮
00:11:51 #34083 [verbose] > │ () │
00:11:51 #34084 [verbose] > │ │
00:11:51 #34085 [verbose] > │ │
00:11:51 #34086 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:51 #34087 [verbose] >
00:11:51 #34088 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:51 #34089 [verbose] > // // test
00:11:51 #34090 [verbose] >
00:11:51 #34091 [verbose] > inl damped_ho_forces () =
00:11:51 #34092 [verbose] > [[
00:11:51 #34093 [verbose] > spring_force 0.8
00:11:51 #34094 [verbose] > fun (state_1d (_, _, v0)) => f_air 2 1.225 (pi * math.square 0.02) v0
00:11:51 #34095 [verbose] > fun _ => -0.0027 * 9.80665
00:11:51 #34096 [verbose] > ]]
00:11:51 #34097 [verbose] >
00:11:51 #34098 [verbose] > inl damped_ho_states () =
00:11:51 #34099 [verbose] > states_txv 0.001 0.0027 (state_1d (0, 0.1, 0)) (damped_ho_forces ())
00:11:51 #34100 [verbose] >
00:11:51 #34101 [verbose] > inl pingpong_position t =
00:11:51 #34102 [verbose] > position_ftxv 0.001 0.0027 (state_1d (0, 0.1, 0)) (damped_ho_forces ()) t
00:11:51 #34103 [verbose] >
00:11:51 #34104 [verbose] > inl x : a _ f64 = am'.init_series 0 3 0.01
00:11:51 #34105 [verbose] > inl y = x |> am.map pingpong_position
00:11:51 #34106 [verbose] > "ping pong ball on a slinky", "time (s)", "", ;[[ "position (m)", x, y ]]
00:11:52 #34107 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\42e95dd9ca916012d6e31809c95132abe5b9eb77f49dcdee3fa5bf715799e35a\main.spi
00:11:52 #34108 [verbose] >
00:11:52 #34109 [verbose] > ╭─[ 461.34ms - return value ]──────────────────────────────────────────────────╮
00:11:52 #34110 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:11:52 #34111 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:11:52 #34112 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:11:52 #34113 [verbose] > │ stroke="none"/> │
00:11:52 #34114 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:11:52 #34115 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:11:52 #34116 [verbose] > │ fill="#FFFFFF"> │
00:11:52 #34117 [verbose] > │ ping pong ball on a slinky │
00:11:52 #34118 [verbose] > │ </text> │
00:11:52 #34119 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │
00:11:52 #34120 [verbose] > │ y2="75"/> │
00:11:52 #34121 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:11:52 #34122 [verbose] > │ y2="75"/> │
00:11:52 #34123 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │
00:11:52 #34124 [verbose] > │ y2="75"/> │
00:11:52 #34125 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │
00:11:52 #34126 [verbose] > │ y2="75"/> │
00:11:52 #34127 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="9... │
00:11:52 #34128 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:52 #34129 [verbose] >
00:11:52 #34130 [verbose] > ╭─[ 471.99ms - stdout ]────────────────────────────────────────────────────────╮
00:11:52 #34131 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:11:52 #34132 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:11:52 #34133 [verbose] > │ let v1 : int32 = v0.l0 │
00:11:52 #34134 [verbose] > │ let v2 : bool = v1 < 301 │
00:11:52 #34135 [verbose] > │ v2 │
00:11:52 #34136 [verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool = │
00:11:52 #34137 [verbose] > │ let v2 : int32 = v1.l0 │
00:11:52 #34138 [verbose] > │ let v3 : bool = v2 < v0 │
00:11:52 #34139 [verbose] > │ v3 │
00:11:52 #34140 [verbose] > │ and method3 (v0 : float, v1 : float, v2 : float, v3 : float) : struct (float │
00:11:52 #34141 [verbose] > │ * float * float) = │
00:11:52 #34142 [verbose] > │ let v4 : bool = v3 <= 0.0 │
00:11:52 #34143 [verbose] > │ if v4 then │
00:11:52 #34144 [verbose] > │ struct (v0, v1, v2) │
00:11:52 #34145 [verbose] > │ else │
00:11:52 #34146 [verbose] > │ let v5 : float = -v2 │
00:11:52 #34147 [verbose] > │ let v6 : bool = v2 >= v5 │
00:11:52 #34148 [verbose] > │ let v7 : float = │
00:11:52 #34149 [verbose] > │ if v6 then │
00:11:52 #34150 [verbose] > │ v2 │
00:11:52 #34151 [verbose] > │ else │
00:11:52 #34152 [verbose] > │ v5 │
00:11:52 #34153 [verbose] > │ let v8 : float = -0.0030787608005179976 * v7 │
00:11:52 #34154 [verbose] > │ let v9 : float = v8 * v2 │
00:11:52 #34155 [verbose] > │ let v10 : float = v9 / 2.0 │
00:11:52 #34156 [verbose] > │ let v11 : float = -0.8 * v1 │
00:11:52 #34157 [verbose] > │ let v12 : float = v11 + v10 │
00:11:52 #34158 [verbose] > │ let v13 : float = v12 + -0.026477955 │
00:11:52 #34159 [verbose] > │ let v14 : float = v13 / 0.0027 │
00:11:52 #34160 [verbose] > │ let v15 : float = v0 + 0.001 │
00:11:52 #34161 [verbose] > │ let v16 : float = v2 * 0.001 │
00:11:52 #34162 [verbose] > │ let v17 : float = v1 + v16 │
00:11:52 #34163 [verbose] > │ let v18 : float = v14 * 0.001 │
00:11:52 #34164 [verbose] > │ let v19 : float = v2 + v18 │
00:11:52 #34165 [verbose] > │ let v20 : float = v3 - 1.0 │
00:11:52 #34166 [verbose] > │ method3(v15, v17, v19, v20) │
00:11:52 #34167 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:11:52 #34168 [verbose] > │ []) * (float [])) [])) = │
00:11:52 #34169 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (301) │
00:11:52 #34170 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:11:52 #34171 [verbose] > │ while method1(v1) do │
00:11:52 #34172 [verbose] > │ let v3 : int32 = v1.l0 │
00:11:52 #34173 [verbose] > │ let v4 : float = float v3 │
00:11:52 #34174 [verbose] > │ let v5 : float = 0.01 * v4 │
00:11:52 #34175 [verbose] > │ v0.[int v3] <- v5 │
00:11:52 #34176 [verbose] > │ let v6 : int32 = v3 + 1 │
00:11:52 #34177 [verbose] > │ v1.l0 <- v6 │
00:11:52 #34178 [verbose] > │ () │
00:11:52 #34179 [verbose] > │ let v7 : int32 = v0.Length │
00:11:52 #34180 [verbose] > │ let v8 : (float []) = Array.zeroCreate<float> (v7) │
00:11:52 #34181 [verbose] > │ let v9 : Mut0 = {l0 = 0} : Mut0 │
00:11:52 #34182 [verbose] > │ while method2(v7, v9) do │
00:11:52 #34183 [verbose] > │ let v11 : int32 = v9.l0 │
00:11:52 #34184 [verbose] > │ let v12 : float = v0.[int v11] │
00:11:52 #34185 [verbose] > │ let v13 : float = 0.0 │
00:11:52 #34186 [verbose] > │ let v14 : float = 0.1 │
00:11:52 #34187 [verbose] > │ let v15 : float = 0.0 │
00:11:52 #34188 [verbose] > │ let v16 : float = 0.0 │
00:11:52 #34189 [verbose] > │ let struct (v17 : float, v18 : float, v19 : float) = method3(v13, │
00:11:52 #34190 [verbose] > │ v14, v15, v16) │
00:11:52 #34191 [verbose] > │ let v20 : float = 0.0 │
00:11:52 #34192 [verbose] > │ let v21 : float = 0.1 │
00:11:52 #34193 [verbose] > │ let v22 : float = 0.0 │
00:11:52 #34194 [verbose] > │ let v23 : float = 1.0 │
00:11:52 #34195 [verbose] > │ let struct (v24 : float, v25 : float, v26 : float) = method3(v20, │
00:11:52 #34196 [verbose] > │ v21, v22, v23) │
00:11:52 #34197 [verbose] > │ let v27 : float = v24 - v17 │
00:11:52 #34198 [verbose] > │ let v28 : float = v12 / v27 │
00:11:52 #34199 [verbose] > │ let v29 : float = round v28 │
00:11:52 #34200 [verbose] > │ let v30 : float = -v29 │
00:11:52 #34201 [verbose] > │ let v31 : bool = v29 >= v30 │
00:11:52 #34202 [verbose] > │ let v32 : float = │
00:11:52 #34203 [verbose] > │ if v31 then │
00:11:52 #34204 [verbose] > │ v29 │
00:11:52 #34205 [verbose] > │ else │
00:11:52 #34206 [verbose] > │ v30 │
00:11:52 #34207 [verbose] > │ let v33 : float = 0.0 │
00:11:52 #34208 [verbose] > │ let v34 : float = 0.1 │
00:11:52 #34209 [verbose] > │ let v35 : float = 0.0 │
00:11:52 #34210 [verbose] > │ let struct (v36 : float, v37 : float, v38 : float) = method3(v33, │
00:11:52 #34211 [verbose] > │ v34, v35, v32) │
00:11:52 #34212 [verbose] > │ v8.[int v11] <- v37 │
00:11:52 #34213 [verbose] > │ let v39 : int32 = v11 + 1 │
00:11:52 #34214 [verbose] > │ v9.l0 <- v39 │
00:11:52 #34215 [verbose] > │ () │
00:11:52 #34216 [verbose] > │ let v40 : string = "position (m)" │
00:11:52 #34217 [verbose] > │ let v41 : (struct (string * (float []) * (float [])) []) = [|struct │
00:11:52 #34218 [verbose] > │ (v40, v0, v8)|] │
00:11:52 #34219 [verbose] > │ let v42 : string = "ping pong ball on a slinky" │
00:11:52 #34220 [verbose] > │ let v43 : string = "time (s)" │
00:11:52 #34221 [verbose] > │ let v44 : string = "" │
00:11:52 #34222 [verbose] > │ struct (v42, v43, v44, v41) │
00:11:52 #34223 [verbose] > │ method0() │
00:11:52 #34224 [verbose] > │ │
00:11:52 #34225 [verbose] > │ │
00:11:52 #34226 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:52 #34227 [verbose] >
00:11:52 #34228 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:52 #34229 [verbose] > // // test
00:11:52 #34230 [verbose] >
00:11:52 #34231 [verbose] > inl pingpong_velocity t =
00:11:52 #34232 [verbose] > velocity_ftxv 0.001 0.0027 (state_1d (0, 0.1, 0)) (damped_ho_forces ()) t
00:11:52 #34233 [verbose] >
00:11:52 #34234 [verbose] > inl x = am'.init_series 0 3 0.01
00:11:52 #34235 [verbose] > inl y = x |> am.map pingpong_velocity
00:11:52 #34236 [verbose] > "ping pong ball on a slinky", "time (s)", "", ;[[ "velocity (m/s)", x, y ]]
00:11:52 #34237 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d2704dacd1f8e675502c0f69600095f04f86eaf392d42da2be925171e1c02caf\main.spi
00:11:52 #34238 [verbose] >
00:11:52 #34239 [verbose] > ╭─[ 423.79ms - return value ]──────────────────────────────────────────────────╮
00:11:52 #34240 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:11:52 #34241 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:11:52 #34242 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:11:52 #34243 [verbose] > │ stroke="none"/> │
00:11:52 #34244 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:11:52 #34245 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:11:52 #34246 [verbose] > │ fill="#FFFFFF"> │
00:11:52 #34247 [verbose] > │ ping pong ball on a slinky │
00:11:52 #34248 [verbose] > │ </text> │
00:11:52 #34249 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │
00:11:52 #34250 [verbose] > │ y2="75"/> │
00:11:52 #34251 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:11:52 #34252 [verbose] > │ y2="75"/> │
00:11:52 #34253 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │
00:11:52 #34254 [verbose] > │ y2="75"/> │
00:11:52 #34255 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │
00:11:52 #34256 [verbose] > │ y2="75"/> │
00:11:52 #34257 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="9... │
00:11:52 #34258 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:52 #34259 [verbose] >
00:11:52 #34260 [verbose] > ╭─[ 436.83ms - stdout ]────────────────────────────────────────────────────────╮
00:11:52 #34261 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:11:52 #34262 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:11:52 #34263 [verbose] > │ let v1 : int32 = v0.l0 │
00:11:52 #34264 [verbose] > │ let v2 : bool = v1 < 301 │
00:11:52 #34265 [verbose] > │ v2 │
00:11:52 #34266 [verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool = │
00:11:52 #34267 [verbose] > │ let v2 : int32 = v1.l0 │
00:11:52 #34268 [verbose] > │ let v3 : bool = v2 < v0 │
00:11:52 #34269 [verbose] > │ v3 │
00:11:52 #34270 [verbose] > │ and method3 (v0 : float, v1 : float, v2 : float, v3 : float) : struct (float │
00:11:52 #34271 [verbose] > │ * float * float) = │
00:11:52 #34272 [verbose] > │ let v4 : bool = v3 <= 0.0 │
00:11:52 #34273 [verbose] > │ if v4 then │
00:11:52 #34274 [verbose] > │ struct (v0, v1, v2) │
00:11:52 #34275 [verbose] > │ else │
00:11:52 #34276 [verbose] > │ let v5 : float = -v2 │
00:11:52 #34277 [verbose] > │ let v6 : bool = v2 >= v5 │
00:11:52 #34278 [verbose] > │ let v7 : float = │
00:11:52 #34279 [verbose] > │ if v6 then │
00:11:52 #34280 [verbose] > │ v2 │
00:11:52 #34281 [verbose] > │ else │
00:11:52 #34282 [verbose] > │ v5 │
00:11:52 #34283 [verbose] > │ let v8 : float = -0.0030787608005179976 * v7 │
00:11:52 #34284 [verbose] > │ let v9 : float = v8 * v2 │
00:11:52 #34285 [verbose] > │ let v10 : float = v9 / 2.0 │
00:11:52 #34286 [verbose] > │ let v11 : float = -0.8 * v1 │
00:11:52 #34287 [verbose] > │ let v12 : float = v11 + v10 │
00:11:52 #34288 [verbose] > │ let v13 : float = v12 + -0.026477955 │
00:11:52 #34289 [verbose] > │ let v14 : float = v13 / 0.0027 │
00:11:52 #34290 [verbose] > │ let v15 : float = v0 + 0.001 │
00:11:52 #34291 [verbose] > │ let v16 : float = v2 * 0.001 │
00:11:52 #34292 [verbose] > │ let v17 : float = v1 + v16 │
00:11:52 #34293 [verbose] > │ let v18 : float = v14 * 0.001 │
00:11:52 #34294 [verbose] > │ let v19 : float = v2 + v18 │
00:11:52 #34295 [verbose] > │ let v20 : float = v3 - 1.0 │
00:11:52 #34296 [verbose] > │ method3(v15, v17, v19, v20) │
00:11:52 #34297 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:11:52 #34298 [verbose] > │ []) * (float [])) [])) = │
00:11:52 #34299 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (301) │
00:11:52 #34300 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:11:52 #34301 [verbose] > │ while method1(v1) do │
00:11:52 #34302 [verbose] > │ let v3 : int32 = v1.l0 │
00:11:52 #34303 [verbose] > │ let v4 : float = float v3 │
00:11:52 #34304 [verbose] > │ let v5 : float = 0.01 * v4 │
00:11:52 #34305 [verbose] > │ v0.[int v3] <- v5 │
00:11:52 #34306 [verbose] > │ let v6 : int32 = v3 + 1 │
00:11:52 #34307 [verbose] > │ v1.l0 <- v6 │
00:11:52 #34308 [verbose] > │ () │
00:11:52 #34309 [verbose] > │ let v7 : int32 = v0.Length │
00:11:52 #34310 [verbose] > │ let v8 : (float []) = Array.zeroCreate<float> (v7) │
00:11:52 #34311 [verbose] > │ let v9 : Mut0 = {l0 = 0} : Mut0 │
00:11:52 #34312 [verbose] > │ while method2(v7, v9) do │
00:11:52 #34313 [verbose] > │ let v11 : int32 = v9.l0 │
00:11:52 #34314 [verbose] > │ let v12 : float = v0.[int v11] │
00:11:52 #34315 [verbose] > │ let v13 : float = 0.0 │
00:11:52 #34316 [verbose] > │ let v14 : float = 0.1 │
00:11:52 #34317 [verbose] > │ let v15 : float = 0.0 │
00:11:52 #34318 [verbose] > │ let v16 : float = 0.0 │
00:11:52 #34319 [verbose] > │ let struct (v17 : float, v18 : float, v19 : float) = method3(v13, │
00:11:52 #34320 [verbose] > │ v14, v15, v16) │
00:11:52 #34321 [verbose] > │ let v20 : float = 0.0 │
00:11:52 #34322 [verbose] > │ let v21 : float = 0.1 │
00:11:52 #34323 [verbose] > │ let v22 : float = 0.0 │
00:11:52 #34324 [verbose] > │ let v23 : float = 1.0 │
00:11:52 #34325 [verbose] > │ let struct (v24 : float, v25 : float, v26 : float) = method3(v20, │
00:11:52 #34326 [verbose] > │ v21, v22, v23) │
00:11:52 #34327 [verbose] > │ let v27 : float = v24 - v17 │
00:11:52 #34328 [verbose] > │ let v28 : float = v12 / v27 │
00:11:52 #34329 [verbose] > │ let v29 : float = round v28 │
00:11:52 #34330 [verbose] > │ let v30 : float = -v29 │
00:11:52 #34331 [verbose] > │ let v31 : bool = v29 >= v30 │
00:11:52 #34332 [verbose] > │ let v32 : float = │
00:11:52 #34333 [verbose] > │ if v31 then │
00:11:52 #34334 [verbose] > │ v29 │
00:11:52 #34335 [verbose] > │ else │
00:11:52 #34336 [verbose] > │ v30 │
00:11:52 #34337 [verbose] > │ let v33 : float = 0.0 │
00:11:52 #34338 [verbose] > │ let v34 : float = 0.1 │
00:11:52 #34339 [verbose] > │ let v35 : float = 0.0 │
00:11:52 #34340 [verbose] > │ let struct (v36 : float, v37 : float, v38 : float) = method3(v33, │
00:11:52 #34341 [verbose] > │ v34, v35, v32) │
00:11:52 #34342 [verbose] > │ v8.[int v11] <- v38 │
00:11:52 #34343 [verbose] > │ let v39 : int32 = v11 + 1 │
00:11:52 #34344 [verbose] > │ v9.l0 <- v39 │
00:11:52 #34345 [verbose] > │ () │
00:11:52 #34346 [verbose] > │ let v40 : string = "velocity (m/s)" │
00:11:52 #34347 [verbose] > │ let v41 : (struct (string * (float []) * (float [])) []) = [|struct │
00:11:52 #34348 [verbose] > │ (v40, v0, v8)|] │
00:11:52 #34349 [verbose] > │ let v42 : string = "ping pong ball on a slinky" │
00:11:52 #34350 [verbose] > │ let v43 : string = "time (s)" │
00:11:52 #34351 [verbose] > │ let v44 : string = "" │
00:11:52 #34352 [verbose] > │ struct (v42, v43, v44, v41) │
00:11:52 #34353 [verbose] > │ method0() │
00:11:52 #34354 [verbose] > │ │
00:11:52 #34355 [verbose] > │ │
00:11:52 #34356 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:52 #34357 [verbose] >
00:11:52 #34358 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:52 #34359 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:52 #34360 [verbose] > │ ## shift │
00:11:52 #34361 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:52 #34362 [verbose] >
00:11:52 #34363 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:52 #34364 [verbose] > type update_function s = s -> s
00:11:52 #34365 [verbose] >
00:11:52 #34366 [verbose] > type differential_equation s ds = s -> ds
00:11:52 #34367 [verbose] >
00:11:52 #34368 [verbose] > type numerical_method s ds = differential_equation s ds -> update_function s
00:11:52 #34369 [verbose] >
00:11:52 #34370 [verbose] >
00:11:52 #34371 [verbose] > inl solver method =
00:11:52 #34372 [verbose] > method >> seq.iterate
00:11:52 #34373 [verbose] > inl solver' method =
00:11:52 #34374 [verbose] > method >> seq.iterate'
00:11:52 #34375 [verbose] > inl solver_ method =
00:11:52 #34376 [verbose] > method >> seq.iterate_
00:11:52 #34377 [verbose] >
00:11:52 #34378 [verbose] >
00:11:52 #34379 [verbose] > inl euler_cromer_1d dt deriv (state_1d (t0, x0, v0) as t) =
00:11:52 #34380 [verbose] > inl (rrr (_, _, dvdt)) = deriv t
00:11:52 #34381 [verbose] > inl t1 = t0 + dt
00:11:52 #34382 [verbose] > inl v1 = v0 + dvdt * dt
00:11:52 #34383 [verbose] > inl x1 = x0 + v1 * dt
00:11:52 #34384 [verbose] > state_1d (t1, x1, v1)
00:11:52 #34385 [verbose] >
00:11:52 #34386 [verbose] > inl update_txv_ec dt m fs =
00:11:52 #34387 [verbose] > euler_cromer_1d dt (newton_second_1d m fs)
00:11:52 #34388 [verbose] >
00:11:52 #34389 [verbose] > prototype (+++) ds : ds -> ds -> ds
00:11:52 #34390 [verbose] > prototype scale ds : f64 -> ds -> ds
00:11:52 #34391 [verbose] >
00:11:52 #34392 [verbose] > instance (+++) rrr = fun (rrr (dtdt0, dxdt0, dvdt0)) (rrr (dtdt1, dxdt1, dvdt1))
00:11:52 #34393 [verbose] > =>
00:11:52 #34394 [verbose] > rrr (dtdt0 + dtdt1, dxdt0 + dxdt1, dvdt0 + dvdt1)
00:11:52 #34395 [verbose] >
00:11:52 #34396 [verbose] > instance scale rrr = fun w (rrr (dtdt0, dxdt0, dvdt0)) =>
00:11:52 #34397 [verbose] > rrr (w * dtdt0, w * dxdt0, w * dvdt0)
00:11:52 #34398 [verbose] >
00:11:52 #34399 [verbose] > prototype shift s : forall ds. f64 -> ds -> s -> s
00:11:52 #34400 [verbose] >
00:11:52 #34401 [verbose] > instance shift state_1d = fun dt ds (state_1d (t, x, v)) =>
00:11:52 #34402 [verbose] > inl dtdt, dxdt, dvdt =
00:11:52 #34403 [verbose] > real
00:11:52 #34404 [verbose] > match ds with
00:11:52 #34405 [verbose] > | rrr x => x
00:11:52 #34406 [verbose] > | state_1d x => x
00:11:52 #34407 [verbose] > state_1d (t + dtdt * dt, x + dxdt * dt, v + dvdt * dt)
00:11:52 #34408 [verbose] >
00:11:52 #34409 [verbose] > inl euler dt deriv st0 =
00:11:52 #34410 [verbose] > shift dt (deriv st0) st0
00:11:52 #34411 [verbose] >
00:11:52 #34412 [verbose] > inl runge_kutta_4 dt deriv st0 =
00:11:52 #34413 [verbose] > inl m0 = deriv st0
00:11:52 #34414 [verbose] > inl m1 = deriv (shift (dt / 2) m0 st0)
00:11:52 #34415 [verbose] > inl m2 = deriv (shift (dt / 2) m1 st0)
00:11:52 #34416 [verbose] > inl m3 = deriv (shift dt m2 st0)
00:11:52 #34417 [verbose] > shift (dt / 6) (m0 +++ m1 +++ m1 +++ m2 +++ m2 +++ m3) st0
00:11:52 #34418 [verbose] >
00:11:52 #34419 [verbose] > inl exponential (_, x0, v0) =
00:11:52 #34420 [verbose] > 1f64, v0, x0
00:11:52 #34421 [verbose] >
00:11:52 #34422 [verbose] > inl of_state_1d (state_1d (t, x, v)) =
00:11:52 #34423 [verbose] > t, x, v
00:11:53 #34424 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\4d9b7e5bd2fd17f3c205d926efce1b4f74cfa12c66e517a2ee4ef38bd223be23\main.spi
00:11:53 #34425 [verbose] >
00:11:53 #34426 [verbose] > ╭─[ 320.49ms - stdout ]────────────────────────────────────────────────────────╮
00:11:53 #34427 [verbose] > │ () │
00:11:53 #34428 [verbose] > │ │
00:11:53 #34429 [verbose] > │ │
00:11:53 #34430 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:53 #34431 [verbose] >
00:11:53 #34432 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:53 #34433 [verbose] > // // test
00:11:53 #34434 [verbose] >
00:11:53 #34435 [verbose] > solver (euler 0.01) (of_state_1d >> exponential >> state_1d) (state_1d (0, 1,
00:11:53 #34436 [verbose] > 1)) 800i32
00:11:53 #34437 [verbose] > |> _assert_eq (state_1d (7.999999999999874, 2864.8311229272326,
00:11:53 #34438 [verbose] > 2864.8311229272326))
00:11:53 #34439 [verbose] >
00:11:53 #34440 [verbose] > solver (euler_cromer_1d 0.1) (of_state_1d >> exponential >> rrr) (state_1d (0,
00:11:53 #34441 [verbose] > 1, 1)) 80i32
00:11:53 #34442 [verbose] > |> _assert_eq (state_1d (7.999999999999988, 3043.379244966009,
00:11:53 #34443 [verbose] > 2895.0121485099035))
00:11:53 #34444 [verbose] >
00:11:53 #34445 [verbose] > solver (runge_kutta_4 1) (of_state_1d >> exponential >> rrr) (state_1d (0, 1,
00:11:53 #34446 [verbose] > 1)) 8i32
00:11:53 #34447 [verbose] > |> _assert_eq (state_1d (8.0, 2894.789038540849, 2894.789038540849))
00:11:53 #34448 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\cf687232b760467ad6c5cabe4dd1ba6eb21d6ef972b08c2da6bfbb5b154df643\main.spi
00:11:53 #34449 [verbose] >
00:11:53 #34450 [verbose] > ╭─[ 394.95ms - stdout ]────────────────────────────────────────────────────────╮
00:11:53 #34451 [verbose] > │ let rec method0 () : unit = │
00:11:53 #34452 [verbose] > │ let v0 : string = $"%A{struct (7.999999999999874, 2864.8311229272326, │
00:11:53 #34453 [verbose] > │ 2864.8311229272326)}" │
00:11:53 #34454 [verbose] > │ System.Console.WriteLine v0 │
00:11:53 #34455 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (7.999999999999874, │
00:11:53 #34456 [verbose] > │ 2864.8311229272326, 2864.8311229272326)} / expected: %A{struct │
00:11:53 #34457 [verbose] > │ (7.999999999999874, 2864.8311229272326, 2864.8311229272326)}" │
00:11:53 #34458 [verbose] > │ let v2 : string = $"%A{struct (7.999999999999988, 3043.379244966009, │
00:11:53 #34459 [verbose] > │ 2895.0121485099035)}" │
00:11:53 #34460 [verbose] > │ System.Console.WriteLine v2 │
00:11:53 #34461 [verbose] > │ let v3 : string = $"__expect / actual: %A{struct (7.999999999999988, │
00:11:53 #34462 [verbose] > │ 3043.379244966009, 2895.0121485099035)} / expected: %A{struct │
00:11:53 #34463 [verbose] > │ (7.999999999999988, 3043.379244966009, 2895.0121485099035)}" │
00:11:53 #34464 [verbose] > │ let v4 : string = $"%A{struct (8.0, 2894.789038540849, │
00:11:53 #34465 [verbose] > │ 2894.789038540849)}" │
00:11:53 #34466 [verbose] > │ System.Console.WriteLine v4 │
00:11:53 #34467 [verbose] > │ let v5 : string = $"__expect / actual: %A{struct (8.0, │
00:11:53 #34468 [verbose] > │ 2894.789038540849, 2894.789038540849)} / expected: %A{struct (8.0, │
00:11:53 #34469 [verbose] > │ 2894.789038540849, 2894.789038540849)}" │
00:11:53 #34470 [verbose] > │ () │
00:11:53 #34471 [verbose] > │ method0() │
00:11:53 #34472 [verbose] > │ │
00:11:53 #34473 [verbose] > │ struct (8.0, 2864.831123, 2864.831123) │
00:11:53 #34474 [verbose] > │ struct (8.0, 3043.379245, 2895.012149) │
00:11:53 #34475 [verbose] > │ struct (8.0, 2894.789039, 2894.789039) │
00:11:53 #34476 [verbose] > │ │
00:11:53 #34477 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:53 #34478 [verbose] >
00:11:53 #34479 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:53 #34480 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:53 #34481 [verbose] > │ ## vec │
00:11:53 #34482 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:53 #34483 [verbose] >
00:11:53 #34484 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:53 #34485 [verbose] > type vec =
00:11:53 #34486 [verbose] > {
00:11:53 #34487 [verbose] > x : f64
00:11:53 #34488 [verbose] > y : f64
00:11:53 #34489 [verbose] > z : f64
00:11:53 #34490 [verbose] > }
00:11:53 #34491 [verbose] >
00:11:53 #34492 [verbose] > inl vec x y z : vec =
00:11:53 #34493 [verbose] > { x y z }
00:11:53 #34494 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\113688ea39e922be1f2cbea8f3ab1c64a3502d5756c5e284f9b54107aa74b3cd\main.spi
00:11:54 #34495 [verbose] >
00:11:54 #34496 [verbose] > ╭─[ 342.51ms - stdout ]────────────────────────────────────────────────────────╮
00:11:54 #34497 [verbose] > │ () │
00:11:54 #34498 [verbose] > │ │
00:11:54 #34499 [verbose] > │ │
00:11:54 #34500 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:54 #34501 [verbose] >
00:11:54 #34502 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:54 #34503 [verbose] > // // test
00:11:54 #34504 [verbose] >
00:11:54 #34505 [verbose] > vec 1 2 3 .z
00:11:54 #34506 [verbose] > |> _assert_eq 3
00:11:54 #34507 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8f370e817a347ceb072e3c0fd906893fafc06de25036652b8696960f2f41ba49\main.spi
00:11:54 #34508 [verbose] >
00:11:54 #34509 [verbose] > ╭─[ 256.29ms - stdout ]────────────────────────────────────────────────────────╮
00:11:54 #34510 [verbose] > │ let rec method0 () : unit = │
00:11:54 #34511 [verbose] > │ let v0 : string = $"%A{3.0}" │
00:11:54 #34512 [verbose] > │ System.Console.WriteLine v0 │
00:11:54 #34513 [verbose] > │ let v1 : string = $"__expect / actual: %A{3.0} / expected: %A{3.0}" │
00:11:54 #34514 [verbose] > │ () │
00:11:54 #34515 [verbose] > │ method0() │
00:11:54 #34516 [verbose] > │ │
00:11:54 #34517 [verbose] > │ 3.0 │
00:11:54 #34518 [verbose] > │ │
00:11:54 #34519 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:54 #34520 [verbose] >
00:11:54 #34521 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:54 #34522 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:54 #34523 [verbose] > │ ### consts │
00:11:54 #34524 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:54 #34525 [verbose] >
00:11:54 #34526 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:54 #34527 [verbose] > inl i_hat () = vec 1 0 0
00:11:54 #34528 [verbose] > inl j_hat () = vec 0 1 0
00:11:54 #34529 [verbose] > inl k_hat () = vec 0 0 1
00:11:54 #34530 [verbose] > inl zero_vec () = vec 0 0 0
00:11:54 #34531 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\806bc6556579b8801c2e7f1a5838f4b19530f2318364f9e0bb45103e18688304\main.spi
00:11:54 #34532 [verbose] >
00:11:54 #34533 [verbose] > ╭─[ 323.79ms - stdout ]────────────────────────────────────────────────────────╮
00:11:54 #34534 [verbose] > │ () │
00:11:54 #34535 [verbose] > │ │
00:11:54 #34536 [verbose] > │ │
00:11:54 #34537 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:54 #34538 [verbose] >
00:11:54 #34539 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:54 #34540 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:54 #34541 [verbose] > │ ### ^+^ │
00:11:54 #34542 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:54 #34543 [verbose] >
00:11:54 #34544 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:54 #34545 [verbose] > inl (^+^) (a : vec) (b : vec) =
00:11:54 #34546 [verbose] > vec (a.x + b.x) (a.y + b.y) (a.z + b.z)
00:11:54 #34547 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8f5114f16e22a4b014986489a471908e0697a847154a7ad65c6a04ea22876d13\main.spi
00:11:54 #34548 [verbose] >
00:11:54 #34549 [verbose] > ╭─[ 286.34ms - stdout ]────────────────────────────────────────────────────────╮
00:11:54 #34550 [verbose] > │ () │
00:11:54 #34551 [verbose] > │ │
00:11:54 #34552 [verbose] > │ │
00:11:54 #34553 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:54 #34554 [verbose] >
00:11:54 #34555 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:54 #34556 [verbose] > // // test
00:11:54 #34557 [verbose] >
00:11:54 #34558 [verbose] > vec 1 2 3 ^+^ vec 4 5 6
00:11:54 #34559 [verbose] > |> _assert_eq (vec 5 7 9)
00:11:55 #34560 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\01b0a038126e8a0653a8196f201a6326f4f962458948c0ff5d420011df60fa66\main.spi
00:11:55 #34561 [verbose] >
00:11:55 #34562 [verbose] > ╭─[ 271.03ms - stdout ]────────────────────────────────────────────────────────╮
00:11:55 #34563 [verbose] > │ let rec method0 () : unit = │
00:11:55 #34564 [verbose] > │ let v0 : string = $"%A{struct (5.0, 7.0, 9.0)}" │
00:11:55 #34565 [verbose] > │ System.Console.WriteLine v0 │
00:11:55 #34566 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (5.0, 7.0, 9.0)} / │
00:11:55 #34567 [verbose] > │ expected: %A{struct (5.0, 7.0, 9.0)}" │
00:11:55 #34568 [verbose] > │ () │
00:11:55 #34569 [verbose] > │ method0() │
00:11:55 #34570 [verbose] > │ │
00:11:55 #34571 [verbose] > │ struct (5.0, 7.0, 9.0) │
00:11:55 #34572 [verbose] > │ │
00:11:55 #34573 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:55 #34574 [verbose] >
00:11:55 #34575 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:55 #34576 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:55 #34577 [verbose] > │ ### sum_vec │
00:11:55 #34578 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:55 #34579 [verbose] >
00:11:55 #34580 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:55 #34581 [verbose] > inl sum_vec vs =
00:11:55 #34582 [verbose] > vs |> listm.fold (^+^) (zero_vec ())
00:11:55 #34583 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\9261787301f9705e537bdaf77fbc2b02d9d82ac521fc4a65af671d38806a6a18\main.spi
00:11:55 #34584 [verbose] >
00:11:55 #34585 [verbose] > ╭─[ 233.50ms - stdout ]────────────────────────────────────────────────────────╮
00:11:55 #34586 [verbose] > │ () │
00:11:55 #34587 [verbose] > │ │
00:11:55 #34588 [verbose] > │ │
00:11:55 #34589 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:55 #34590 [verbose] >
00:11:55 #34591 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:55 #34592 [verbose] > // // test
00:11:55 #34593 [verbose] >
00:11:55 #34594 [verbose] > [[ vec 1 2 3; vec 4 5 6 ]]
00:11:55 #34595 [verbose] > |> sum_vec
00:11:55 #34596 [verbose] > |> _assert_eq (vec 5 7 9)
00:11:55 #34597 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d9c699d72c3b1f17d43c509e750577475066860e1565027adcd8ec665cd2cde3\main.spi
00:11:55 #34598 [verbose] >
00:11:55 #34599 [verbose] > ╭─[ 237.63ms - stdout ]────────────────────────────────────────────────────────╮
00:11:55 #34600 [verbose] > │ let rec method0 () : unit = │
00:11:55 #34601 [verbose] > │ let v0 : string = $"%A{struct (5.0, 7.0, 9.0)}" │
00:11:55 #34602 [verbose] > │ System.Console.WriteLine v0 │
00:11:55 #34603 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (5.0, 7.0, 9.0)} / │
00:11:55 #34604 [verbose] > │ expected: %A{struct (5.0, 7.0, 9.0)}" │
00:11:55 #34605 [verbose] > │ () │
00:11:55 #34606 [verbose] > │ method0() │
00:11:55 #34607 [verbose] > │ │
00:11:55 #34608 [verbose] > │ struct (5.0, 7.0, 9.0) │
00:11:55 #34609 [verbose] > │ │
00:11:55 #34610 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:55 #34611 [verbose] >
00:11:55 #34612 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:55 #34613 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:55 #34614 [verbose] > │ ### *^ │
00:11:55 #34615 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:55 #34616 [verbose] >
00:11:55 #34617 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:55 #34618 [verbose] > inl (*^) c { x y z } =
00:11:55 #34619 [verbose] > vec (c * x) (c * y) (c * z)
00:11:55 #34620 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\abaae8700f9854712d7db58058ea59c5e646178315ec74d0a4bef2c54b3ba99f\main.spi
00:11:55 #34621 [verbose] >
00:11:55 #34622 [verbose] > ╭─[ 246.02ms - stdout ]────────────────────────────────────────────────────────╮
00:11:55 #34623 [verbose] > │ () │
00:11:55 #34624 [verbose] > │ │
00:11:55 #34625 [verbose] > │ │
00:11:55 #34626 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:55 #34627 [verbose] >
00:11:55 #34628 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:55 #34629 [verbose] > // // test
00:11:55 #34630 [verbose] >
00:11:55 #34631 [verbose] > 5 *^ vec 1 2 3
00:11:55 #34632 [verbose] > |> _assert_eq (vec 5 10 15)
00:11:56 #34633 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\0f1ae917a76bbe7f5135a7e2bbdb054e2bd9d550fd80e75345653d63dbbc2ec2\main.spi
00:11:56 #34634 [verbose] >
00:11:56 #34635 [verbose] > ╭─[ 243.39ms - stdout ]────────────────────────────────────────────────────────╮
00:11:56 #34636 [verbose] > │ let rec method0 () : unit = │
00:11:56 #34637 [verbose] > │ let v0 : string = $"%A{struct (5.0, 10.0, 15.0)}" │
00:11:56 #34638 [verbose] > │ System.Console.WriteLine v0 │
00:11:56 #34639 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (5.0, 10.0, 15.0)} / │
00:11:56 #34640 [verbose] > │ expected: %A{struct (5.0, 10.0, 15.0)}" │
00:11:56 #34641 [verbose] > │ () │
00:11:56 #34642 [verbose] > │ method0() │
00:11:56 #34643 [verbose] > │ │
00:11:56 #34644 [verbose] > │ struct (5.0, 10.0, 15.0) │
00:11:56 #34645 [verbose] > │ │
00:11:56 #34646 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:56 #34647 [verbose] >
00:11:56 #34648 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:56 #34649 [verbose] > // // test
00:11:56 #34650 [verbose] >
00:11:56 #34651 [verbose] > 3 *^ i_hat () ^+^ 4 *^ k_hat ()
00:11:56 #34652 [verbose] > |> _assert_eq (vec 3 0 4)
00:11:56 #34653 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\548493a74b752b6677b0d1a3ab7fad656548d2c02f7629e9db61399e9bc12278\main.spi
00:11:56 #34654 [verbose] >
00:11:56 #34655 [verbose] > ╭─[ 271.86ms - stdout ]────────────────────────────────────────────────────────╮
00:11:56 #34656 [verbose] > │ let rec method0 () : unit = │
00:11:56 #34657 [verbose] > │ let v0 : string = $"%A{struct (3.0, 0.0, 4.0)}" │
00:11:56 #34658 [verbose] > │ System.Console.WriteLine v0 │
00:11:56 #34659 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (3.0, 0.0, 4.0)} / │
00:11:56 #34660 [verbose] > │ expected: %A{struct (3.0, 0.0, 4.0)}" │
00:11:56 #34661 [verbose] > │ () │
00:11:56 #34662 [verbose] > │ method0() │
00:11:56 #34663 [verbose] > │ │
00:11:56 #34664 [verbose] > │ struct (3.0, 0.0, 4.0) │
00:11:56 #34665 [verbose] > │ │
00:11:56 #34666 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:56 #34667 [verbose] >
00:11:56 #34668 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:56 #34669 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:56 #34670 [verbose] > │ ### ^* │
00:11:56 #34671 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:56 #34672 [verbose] >
00:11:56 #34673 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:56 #34674 [verbose] > inl (^*) v c =
00:11:56 #34675 [verbose] > (*^) c v
00:11:56 #34676 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f2705282a9dd8b0bb6b80c5d6c33563ec802f205ccfcea53e6fcecc892eb3632\main.spi
00:11:56 #34677 [verbose] >
00:11:56 #34678 [verbose] > ╭─[ 394.78ms - stdout ]────────────────────────────────────────────────────────╮
00:11:56 #34679 [verbose] > │ () │
00:11:56 #34680 [verbose] > │ │
00:11:56 #34681 [verbose] > │ │
00:11:56 #34682 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:56 #34683 [verbose] >
00:11:56 #34684 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:56 #34685 [verbose] > // // test
00:11:56 #34686 [verbose] >
00:11:56 #34687 [verbose] > vec 1 2 3 ^* 5
00:11:56 #34688 [verbose] > |> _assert_eq (vec 5 10 15)
00:11:57 #34689 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\966fe99f28aa701402adc0fbc0196bdc3de9cd51bad12cb0af9326b9c5003bff\main.spi
00:11:57 #34690 [verbose] >
00:11:57 #34691 [verbose] > ╭─[ 461.84ms - stdout ]────────────────────────────────────────────────────────╮
00:11:57 #34692 [verbose] > │ let rec method0 () : unit = │
00:11:57 #34693 [verbose] > │ let v0 : string = $"%A{struct (5.0, 10.0, 15.0)}" │
00:11:57 #34694 [verbose] > │ System.Console.WriteLine v0 │
00:11:57 #34695 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (5.0, 10.0, 15.0)} / │
00:11:57 #34696 [verbose] > │ expected: %A{struct (5.0, 10.0, 15.0)}" │
00:11:57 #34697 [verbose] > │ () │
00:11:57 #34698 [verbose] > │ method0() │
00:11:57 #34699 [verbose] > │ │
00:11:57 #34700 [verbose] > │ struct (5.0, 10.0, 15.0) │
00:11:57 #34701 [verbose] > │ │
00:11:57 #34702 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:57 #34703 [verbose] >
00:11:57 #34704 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:57 #34705 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:57 #34706 [verbose] > │ ### ^/ │
00:11:57 #34707 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:57 #34708 [verbose] >
00:11:57 #34709 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:57 #34710 [verbose] > inl (^/) { x y z } c =
00:11:57 #34711 [verbose] > vec (x / c) (y / c) (z / c)
00:11:57 #34712 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\50afd38d2e8556266a8ca846b008c929b0b71b9e987a04ac44f1d078a5c41ac0\main.spi
00:11:57 #34713 [verbose] >
00:11:57 #34714 [verbose] > ╭─[ 255.92ms - stdout ]────────────────────────────────────────────────────────╮
00:11:57 #34715 [verbose] > │ () │
00:11:57 #34716 [verbose] > │ │
00:11:57 #34717 [verbose] > │ │
00:11:57 #34718 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:57 #34719 [verbose] >
00:11:57 #34720 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:57 #34721 [verbose] > // // test
00:11:57 #34722 [verbose] >
00:11:57 #34723 [verbose] > vec 1 2 3 ^/ 5
00:11:57 #34724 [verbose] > |> _assert_eq (vec 0.2 0.4 0.6)
00:11:57 #34725 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\4bc6f7b7165a783a415091e011b173e9124d123f4e7565ca071fac3a344ceee6\main.spi
00:11:57 #34726 [verbose] >
00:11:57 #34727 [verbose] > ╭─[ 244.40ms - stdout ]────────────────────────────────────────────────────────╮
00:11:57 #34728 [verbose] > │ let rec method0 () : unit = │
00:11:57 #34729 [verbose] > │ let v0 : string = $"%A{struct (0.2, 0.4, 0.6)}" │
00:11:57 #34730 [verbose] > │ System.Console.WriteLine v0 │
00:11:57 #34731 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (0.2, 0.4, 0.6)} / │
00:11:57 #34732 [verbose] > │ expected: %A{struct (0.2, 0.4, 0.6)}" │
00:11:57 #34733 [verbose] > │ () │
00:11:57 #34734 [verbose] > │ method0() │
00:11:57 #34735 [verbose] > │ │
00:11:57 #34736 [verbose] > │ struct (0.2, 0.4, 0.6) │
00:11:57 #34737 [verbose] > │ │
00:11:57 #34738 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:57 #34739 [verbose] >
00:11:57 #34740 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:57 #34741 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:57 #34742 [verbose] > │ ### negate_vec │
00:11:57 #34743 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:57 #34744 [verbose] >
00:11:57 #34745 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:57 #34746 [verbose] > inl negate_vec v =
00:11:57 #34747 [verbose] > v ^* -1
00:11:57 #34748 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8ba7ec44ade356759d3c7a8edd8377be35532483606275bee83bce44536efeb0\main.spi
00:11:58 #34749 [verbose] >
00:11:58 #34750 [verbose] > ╭─[ 225.97ms - stdout ]────────────────────────────────────────────────────────╮
00:11:58 #34751 [verbose] > │ () │
00:11:58 #34752 [verbose] > │ │
00:11:58 #34753 [verbose] > │ │
00:11:58 #34754 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:58 #34755 [verbose] >
00:11:58 #34756 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:58 #34757 [verbose] > // // test
00:11:58 #34758 [verbose] >
00:11:58 #34759 [verbose] > vec 1 2 3
00:11:58 #34760 [verbose] > |> negate_vec
00:11:58 #34761 [verbose] > |> _assert_eq (vec -1 -2 -3)
00:11:58 #34762 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8a0f1545b0f83a1009fdc0a035cecccb7d8ab02298120bc116e3e139a8f25a39\main.spi
00:11:58 #34763 [verbose] >
00:11:58 #34764 [verbose] > ╭─[ 238.78ms - stdout ]────────────────────────────────────────────────────────╮
00:11:58 #34765 [verbose] > │ let rec method0 () : unit = │
00:11:58 #34766 [verbose] > │ let v0 : string = $"%A{struct (-1.0, -2.0, -3.0)}" │
00:11:58 #34767 [verbose] > │ System.Console.WriteLine v0 │
00:11:58 #34768 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (-1.0, -2.0, -3.0)} / │
00:11:58 #34769 [verbose] > │ expected: %A{struct (-1.0, -2.0, -3.0)}" │
00:11:58 #34770 [verbose] > │ () │
00:11:58 #34771 [verbose] > │ method0() │
00:11:58 #34772 [verbose] > │ │
00:11:58 #34773 [verbose] > │ struct (-1.0, -2.0, -3.0) │
00:11:58 #34774 [verbose] > │ │
00:11:58 #34775 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:58 #34776 [verbose] >
00:11:58 #34777 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:58 #34778 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:58 #34779 [verbose] > │ ### ^-^ │
00:11:58 #34780 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:58 #34781 [verbose] >
00:11:58 #34782 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:58 #34783 [verbose] > inl (^-^) a b =
00:11:58 #34784 [verbose] > a ^+^ (negate_vec b)
00:11:58 #34785 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c732722ed06670a422c02a30556874a9cdf85330159398870e8dcb00058ba2f4\main.spi
00:11:58 #34786 [verbose] >
00:11:58 #34787 [verbose] > ╭─[ 237.04ms - stdout ]────────────────────────────────────────────────────────╮
00:11:58 #34788 [verbose] > │ () │
00:11:58 #34789 [verbose] > │ │
00:11:58 #34790 [verbose] > │ │
00:11:58 #34791 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:58 #34792 [verbose] >
00:11:58 #34793 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:58 #34794 [verbose] > // // test
00:11:58 #34795 [verbose] >
00:11:58 #34796 [verbose] > vec 1 2 3 ^-^ vec 4 5 6
00:11:58 #34797 [verbose] > |> _assert_eq (vec -3 -3 -3)
00:11:58 #34798 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3446c2b52f31454aa5ae7bdbbf29aa5dc6e7c1db0cd5b1d703ac3ec918635b14\main.spi
00:11:58 #34799 [verbose] >
00:11:58 #34800 [verbose] > ╭─[ 282.79ms - stdout ]────────────────────────────────────────────────────────╮
00:11:58 #34801 [verbose] > │ let rec method0 () : unit = │
00:11:58 #34802 [verbose] > │ let v0 : string = $"%A{struct (-3.0, -3.0, -3.0)}" │
00:11:58 #34803 [verbose] > │ System.Console.WriteLine v0 │
00:11:58 #34804 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (-3.0, -3.0, -3.0)} / │
00:11:58 #34805 [verbose] > │ expected: %A{struct (-3.0, -3.0, -3.0)}" │
00:11:58 #34806 [verbose] > │ () │
00:11:58 #34807 [verbose] > │ method0() │
00:11:58 #34808 [verbose] > │ │
00:11:58 #34809 [verbose] > │ struct (-3.0, -3.0, -3.0) │
00:11:58 #34810 [verbose] > │ │
00:11:58 #34811 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:58 #34812 [verbose] >
00:11:58 #34813 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:58 #34814 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:58 #34815 [verbose] > │ ### <.> │
00:11:58 #34816 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:58 #34817 [verbose] >
00:11:58 #34818 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:58 #34819 [verbose] > inl (<.>) { x = ax y = ay z = az } { x = bx y = by z = bz } =
00:11:58 #34820 [verbose] > ax * bx + ay * by + az * bz
00:11:58 #34821 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\52d772a3260e827ea2d68325b288a9119bd96d8bfe6e93cd48fb0f3b15350208\main.spi
00:11:59 #34822 [verbose] >
00:11:59 #34823 [verbose] > ╭─[ 378.57ms - stdout ]────────────────────────────────────────────────────────╮
00:11:59 #34824 [verbose] > │ () │
00:11:59 #34825 [verbose] > │ │
00:11:59 #34826 [verbose] > │ │
00:11:59 #34827 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:59 #34828 [verbose] >
00:11:59 #34829 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:59 #34830 [verbose] > // // test
00:11:59 #34831 [verbose] >
00:11:59 #34832 [verbose] > vec 1 2 3 <.> vec 4 5 6
00:11:59 #34833 [verbose] > |> _assert_eq 32
00:11:59 #34834 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5cb5f9a53ee45f8d45db785c1281c4f9be7f30c954be991ebd61613e2fc9c8e1\main.spi
00:11:59 #34835 [verbose] >
00:11:59 #34836 [verbose] > ╭─[ 295.80ms - stdout ]────────────────────────────────────────────────────────╮
00:11:59 #34837 [verbose] > │ let rec method0 () : unit = │
00:11:59 #34838 [verbose] > │ let v0 : string = $"%A{32.0}" │
00:11:59 #34839 [verbose] > │ System.Console.WriteLine v0 │
00:11:59 #34840 [verbose] > │ let v1 : string = $"__expect / actual: %A{32.0} / expected: %A{32.0}" │
00:11:59 #34841 [verbose] > │ () │
00:11:59 #34842 [verbose] > │ method0() │
00:11:59 #34843 [verbose] > │ │
00:11:59 #34844 [verbose] > │ 32.0 │
00:11:59 #34845 [verbose] > │ │
00:11:59 #34846 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:59 #34847 [verbose] >
00:11:59 #34848 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:11:59 #34849 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:11:59 #34850 [verbose] > │ ### \>\< │
00:11:59 #34851 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:59 #34852 [verbose] >
00:11:59 #34853 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:59 #34854 [verbose] > inl (><) (a : vec) (b : vec) =
00:11:59 #34855 [verbose] > vec
00:11:59 #34856 [verbose] > (a.y * b.z - a.z * b.y)
00:11:59 #34857 [verbose] > (a.z * b.x - a.x * b.z)
00:11:59 #34858 [verbose] > (a.x * b.y - a.y * b.x)
00:11:59 #34859 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a5e61f90699377c6cd439c6f459ff614a7fc7601412a7063fb78b30a625d6641\main.spi
00:11:59 #34860 [verbose] >
00:11:59 #34861 [verbose] > ╭─[ 235.75ms - stdout ]────────────────────────────────────────────────────────╮
00:11:59 #34862 [verbose] > │ () │
00:11:59 #34863 [verbose] > │ │
00:11:59 #34864 [verbose] > │ │
00:11:59 #34865 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:11:59 #34866 [verbose] >
00:11:59 #34867 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:11:59 #34868 [verbose] > // // test
00:11:59 #34869 [verbose] >
00:11:59 #34870 [verbose] > vec 1 2 3 >< vec 4 5 6
00:11:59 #34871 [verbose] > |> _assert_eq (vec -3 6 -3)
00:11:59 #34872 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\4faf695f8fa6a82d45f6adfbbfd0604aa0584b0579fa2ecf0f80b2f941af9012\main.spi
00:11:59 #34873 [verbose] >
00:11:59 #34874 [verbose] > ╭─[ 252.66ms - stdout ]────────────────────────────────────────────────────────╮
00:11:59 #34875 [verbose] > │ let rec method0 () : unit = │
00:12:00 #34876 [verbose] > │ let v0 : string = $"%A{struct (-3.0, 6.0, -3.0)}" │
00:12:00 #34877 [verbose] > │ System.Console.WriteLine v0 │
00:12:00 #34878 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (-3.0, 6.0, -3.0)} / │
00:12:00 #34879 [verbose] > │ expected: %A{struct (-3.0, 6.0, -3.0)}" │
00:12:00 #34880 [verbose] > │ () │
00:12:00 #34881 [verbose] > │ method0() │
00:12:00 #34882 [verbose] > │ │
00:12:00 #34883 [verbose] > │ struct (-3.0, 6.0, -3.0) │
00:12:00 #34884 [verbose] > │ │
00:12:00 #34885 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:00 #34886 [verbose] >
00:12:00 #34887 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:12:00 #34888 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:12:00 #34889 [verbose] > │ ### magnitude │
00:12:00 #34890 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:00 #34891 [verbose] >
00:12:00 #34892 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:00 #34893 [verbose] > inl magnitude v =
00:12:00 #34894 [verbose] > v <.> v |> sqrt
00:12:00 #34895 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a5ee51bd3b4825ba93a1b077ff4961438142d9da048abaa8d69e3a61c2d23059\main.spi
00:12:00 #34896 [verbose] >
00:12:00 #34897 [verbose] > ╭─[ 207.10ms - stdout ]────────────────────────────────────────────────────────╮
00:12:00 #34898 [verbose] > │ () │
00:12:00 #34899 [verbose] > │ │
00:12:00 #34900 [verbose] > │ │
00:12:00 #34901 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:00 #34902 [verbose] >
00:12:00 #34903 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:00 #34904 [verbose] > // // test
00:12:00 #34905 [verbose] >
00:12:00 #34906 [verbose] > vec 1 2 3
00:12:00 #34907 [verbose] > |> magnitude
00:12:00 #34908 [verbose] > |> _assert_approx_eq None 3.7416573867739413
00:12:00 #34909 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\bc77b9c16c9aae76697855c1206917244bbd3df26f410e836c5f50e5cffac095\main.spi
00:12:00 #34910 [verbose] >
00:12:00 #34911 [verbose] > ╭─[ 219.93ms - stdout ]────────────────────────────────────────────────────────╮
00:12:00 #34912 [verbose] > │ let rec method0 () : unit = │
00:12:00 #34913 [verbose] > │ let v0 : string = $"%A{3.7416573867739413}" │
00:12:00 #34914 [verbose] > │ System.Console.WriteLine v0 │
00:12:00 #34915 [verbose] > │ let v1 : string = $"__expect / actual: %A{3.7416573867739413} / │
00:12:00 #34916 [verbose] > │ expected: %A{3.7416573867739413}" │
00:12:00 #34917 [verbose] > │ () │
00:12:00 #34918 [verbose] > │ method0() │
00:12:00 #34919 [verbose] > │ │
00:12:00 #34920 [verbose] > │ 3.741657387 │
00:12:00 #34921 [verbose] > │ │
00:12:00 #34922 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:00 #34923 [verbose] >
00:12:00 #34924 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:12:00 #34925 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:12:00 #34926 [verbose] > │ ### v1 │
00:12:00 #34927 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:00 #34928 [verbose] >
00:12:00 #34929 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:00 #34930 [verbose] > inl v1 t =
00:12:00 #34931 [verbose] > 2 *^ (t ** 2 *^ i_hat () ^+^ 3 *^ (t ** 3 *^ j_hat () ^+^ t ** 4 *^ k_hat
00:12:00 #34932 [verbose] > ()))
00:12:00 #34933 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3bdcea2559adc47304c47571116ccb8e71c6e145cb79eecdab28e093462dc5a1\main.spi
00:12:00 #34934 [verbose] >
00:12:00 #34935 [verbose] > ╭─[ 314.33ms - stdout ]────────────────────────────────────────────────────────╮
00:12:00 #34936 [verbose] > │ () │
00:12:00 #34937 [verbose] > │ │
00:12:00 #34938 [verbose] > │ │
00:12:00 #34939 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:00 #34940 [verbose] >
00:12:00 #34941 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:00 #34942 [verbose] > // // test
00:12:00 #34943 [verbose] >
00:12:00 #34944 [verbose] > v1 1
00:12:00 #34945 [verbose] > |> _assert_eq (vec 2 6 6)
00:12:00 #34946 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a6269b466164e66b00544a5d424106d727e9daf61440c349ec8a9627b5c648b5\main.spi
00:12:01 #34947 [verbose] >
00:12:01 #34948 [verbose] > ╭─[ 247.01ms - stdout ]────────────────────────────────────────────────────────╮
00:12:01 #34949 [verbose] > │ let rec method0 () : unit = │
00:12:01 #34950 [verbose] > │ let v0 : string = $"%A{struct (2.0, 6.0, 6.0)}" │
00:12:01 #34951 [verbose] > │ System.Console.WriteLine v0 │
00:12:01 #34952 [verbose] > │ let v1 : string = $"__expect / actual: %A{struct (2.0, 6.0, 6.0)} / │
00:12:01 #34953 [verbose] > │ expected: %A{struct (2.0, 6.0, 6.0)}" │
00:12:01 #34954 [verbose] > │ () │
00:12:01 #34955 [verbose] > │ method0() │
00:12:01 #34956 [verbose] > │ │
00:12:01 #34957 [verbose] > │ struct (2.0, 6.0, 6.0) │
00:12:01 #34958 [verbose] > │ │
00:12:01 #34959 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:01 #34960 [verbose] >
00:12:01 #34961 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:12:01 #34962 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:12:01 #34963 [verbose] > │ ### vec_derivative │
00:12:01 #34964 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:01 #34965 [verbose] >
00:12:01 #34966 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:01 #34967 [verbose] > type vec_derivative = (f64 -> vec) -> f64 -> vec
00:12:01 #34968 [verbose] >
00:12:01 #34969 [verbose] > inl vec_derivative dt : vec_derivative =
00:12:01 #34970 [verbose] > fun v t =>
00:12:01 #34971 [verbose] > (v (t + dt / 2) ^-^ v (t - dt / 2)) ^/ dt
00:12:01 #34972 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b6600abb173c8827e778123471b70245424004725195db0a3d939ab500d5eddf\main.spi
00:12:01 #34973 [verbose] >
00:12:01 #34974 [verbose] > ╭─[ 245.92ms - stdout ]────────────────────────────────────────────────────────╮
00:12:01 #34975 [verbose] > │ () │
00:12:01 #34976 [verbose] > │ │
00:12:01 #34977 [verbose] > │ │
00:12:01 #34978 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:01 #34979 [verbose] >
00:12:01 #34980 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:01 #34981 [verbose] > // // test
00:12:01 #34982 [verbose] >
00:12:01 #34983 [verbose] > vec_derivative 0.01 v1 3 .x
00:12:01 #34984 [verbose] > |> _assert_approx_eq None (derivative 0.01 (v1 >> fun v => v.x) 3)
00:12:01 #34985 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\4b40c81929f4b19c0a206e9734354f645ae343f882b132d49c98dfc26981b41b\main.spi
00:12:01 #34986 [verbose] >
00:12:01 #34987 [verbose] > ╭─[ 240.42ms - stdout ]────────────────────────────────────────────────────────╮
00:12:01 #34988 [verbose] > │ let rec method0 () : unit = │
00:12:01 #34989 [verbose] > │ let v0 : string = $"%A{11.999999999999744}" │
00:12:01 #34990 [verbose] > │ System.Console.WriteLine v0 │
00:12:01 #34991 [verbose] > │ let v1 : string = $"__expect / actual: %A{11.999999999999744} / │
00:12:01 #34992 [verbose] > │ expected: %A{11.999999999999744}" │
00:12:01 #34993 [verbose] > │ () │
00:12:01 #34994 [verbose] > │ method0() │
00:12:01 #34995 [verbose] > │ │
00:12:01 #34996 [verbose] > │ 12.0 │
00:12:01 #34997 [verbose] > │ │
00:12:01 #34998 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:01 #34999 [verbose] >
00:12:01 #35000 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:12:01 #35001 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:12:01 #35002 [verbose] > │ ## states_ps │
00:12:01 #35003 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:01 #35004 [verbose] >
00:12:01 #35005 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:01 #35006 [verbose] > nominal particle_state =
00:12:01 #35007 [verbose] > {
00:12:01 #35008 [verbose] > mass : f64
00:12:01 #35009 [verbose] > charge : f64
00:12:01 #35010 [verbose] > time : f64
00:12:01 #35011 [verbose] > pos_vec : vec
00:12:01 #35012 [verbose] > velocity : vec
00:12:01 #35013 [verbose] > }
00:12:01 #35014 [verbose] >
00:12:01 #35015 [verbose] > inl default_particle_state () : particle_state =
00:12:01 #35016 [verbose] > particle_state {
00:12:01 #35017 [verbose] > mass = 1
00:12:01 #35018 [verbose] > charge = 0
00:12:01 #35019 [verbose] > time = 0
00:12:01 #35020 [verbose] > pos_vec = zero_vec ()
00:12:01 #35021 [verbose] > velocity = zero_vec ()
00:12:01 #35022 [verbose] > }
00:12:01 #35023 [verbose] >
00:12:01 #35024 [verbose] > type one_body_force = particle_state -> vec
00:12:01 #35025 [verbose] >
00:12:01 #35026 [verbose] > nominal d_particle_state =
00:12:01 #35027 [verbose] > {
00:12:01 #35028 [verbose] > dmdt : f64
00:12:01 #35029 [verbose] > dqdt : f64
00:12:01 #35030 [verbose] > dtdt : f64
00:12:01 #35031 [verbose] > drdt : vec
00:12:01 #35032 [verbose] > dvdt : vec
00:12:01 #35033 [verbose] > }
00:12:01 #35034 [verbose] >
00:12:01 #35035 [verbose] > inl newton_second_ps (fs : list one_body_force) (st : particle_state) :
00:12:01 #35036 [verbose] > d_particle_state =
00:12:01 #35037 [verbose] > inl f_net = fs |> listm.map (fun f => f st) |> sum_vec
00:12:01 #35038 [verbose] > d_particle_state {
00:12:01 #35039 [verbose] > dmdt = 0
00:12:01 #35040 [verbose] > dqdt = 0
00:12:01 #35041 [verbose] > dtdt = 1
00:12:01 #35042 [verbose] > drdt = st.velocity
00:12:01 #35043 [verbose] > dvdt = f_net ^/ st.mass
00:12:01 #35044 [verbose] > }
00:12:01 #35045 [verbose] >
00:12:01 #35046 [verbose] > inl earth_surface_gravity (st : particle_state) =
00:12:01 #35047 [verbose] > inl g = 9.80665
00:12:01 #35048 [verbose] > -st.mass * g *^ k_hat ()
00:12:01 #35049 [verbose] >
00:12:01 #35050 [verbose] > inl air_resistance drag rho area (st : particle_state) =
00:12:01 #35051 [verbose] > -0.5 * drag * rho * area * magnitude st.velocity *^ st.velocity
00:12:01 #35052 [verbose] >
00:12:01 #35053 [verbose] > inl euler_cromer_ps dt (deriv : particle_state -> d_particle_state)
00:12:01 #35054 [verbose] > (particle_state st) =
00:12:01 #35055 [verbose] > inl dst : d_particle_state = deriv (particle_state st)
00:12:01 #35056 [verbose] > inl v' = st.velocity ^+^ dst.dvdt ^* dt
00:12:01 #35057 [verbose] > particle_state { st with
00:12:01 #35058 [verbose] > time = st.time + dt
00:12:01 #35059 [verbose] > pos_vec = st.pos_vec ^+^ v' ^* dt
00:12:01 #35060 [verbose] > velocity = st.velocity ^+^ dst.dvdt ^* dt
00:12:01 #35061 [verbose] > }
00:12:01 #35062 [verbose] >
00:12:01 #35063 [verbose] > instance (+++) d_particle_state = fun (dps : d_particle_state) (dps' :
00:12:01 #35064 [verbose] > d_particle_state) =>
00:12:01 #35065 [verbose] > d_particle_state {
00:12:01 #35066 [verbose] > dmdt = dps.dmdt + dps'.dmdt
00:12:01 #35067 [verbose] > dqdt = dps.dqdt + dps'.dqdt
00:12:01 #35068 [verbose] > dtdt = dps.dtdt + dps'.dtdt
00:12:01 #35069 [verbose] > drdt = dps.drdt ^+^ dps'.drdt
00:12:01 #35070 [verbose] > dvdt = dps.dvdt ^+^ dps'.dvdt
00:12:01 #35071 [verbose] > }
00:12:01 #35072 [verbose] >
00:12:01 #35073 [verbose] > instance scale d_particle_state = fun w (dps : d_particle_state) =>
00:12:01 #35074 [verbose] > d_particle_state {
00:12:01 #35075 [verbose] > dmdt = w * dps.dmdt
00:12:01 #35076 [verbose] > dqdt = w * dps.dqdt
00:12:01 #35077 [verbose] > dtdt = w * dps.dtdt
00:12:01 #35078 [verbose] > drdt = w *^ dps.drdt
00:12:01 #35079 [verbose] > dvdt = w *^ dps.dvdt
00:12:01 #35080 [verbose] > }
00:12:01 #35081 [verbose] >
00:12:01 #35082 [verbose] > instance shift particle_state = fun dt dps (particle_state st) =>
00:12:01 #35083 [verbose] > inl (d_particle_state dps) =
00:12:01 #35084 [verbose] > real
00:12:01 #35085 [verbose] > match dps with
00:12:01 #35086 [verbose] > | d_particle_state _ => dps
00:12:01 #35087 [verbose] > particle_state { st with
00:12:01 #35088 [verbose] > time = st.time + dps.dtdt * dt
00:12:01 #35089 [verbose] > pos_vec = st.pos_vec ^+^ dps.drdt ^* dt
00:12:01 #35090 [verbose] > velocity = st.velocity ^+^ dps.dvdt ^* dt
00:12:01 #35091 [verbose] > }
00:12:01 #35092 [verbose] >
00:12:01 #35093 [verbose] > inl states_ps (method : numerical_method particle_state d_particle_state) : _ ->
00:12:01 #35094 [verbose] > _ -> i32 -> particle_state =
00:12:01 #35095 [verbose] > newton_second_ps >> method >> seq.iterate_
00:12:01 #35096 [verbose] >
00:12:01 #35097 [verbose] > inl z_ge0 sts =
00:12:01 #35098 [verbose] > sts
00:12:01 #35099 [verbose] > |> seq.take_while_ (fun (particle_state st) _ => st.pos_vec.z >= 0)
00:12:01 #35100 [verbose] >
00:12:01 #35101 [verbose] > inl trajectory sts =
00:12:01 #35102 [verbose] > sts |> listm.map (fun (particle_state st) => st.pos_vec.y, st.pos_vec.z)
00:12:01 #35103 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\cf19d0076e60db8574ef2fba498a50eabd9d0754b19e7398362265e7955877fd\main.spi
00:12:01 #35104 [verbose] >
00:12:01 #35105 [verbose] > ╭─[ 252.59ms - stdout ]────────────────────────────────────────────────────────╮
00:12:01 #35106 [verbose] > │ () │
00:12:01 #35107 [verbose] > │ │
00:12:01 #35108 [verbose] > │ │
00:12:01 #35109 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:01 #35110 [verbose] >
00:12:01 #35111 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:01 #35112 [verbose] > // // test
00:12:01 #35113 [verbose] >
00:12:01 #35114 [verbose] > inl update_ps (method : numerical_method particle_state d_particle_state) =
00:12:01 #35115 [verbose] > newton_second_ps >> method
00:12:01 #35116 [verbose] >
00:12:01 #35117 [verbose] > inl position_ps (method : numerical_method particle_state d_particle_state) fs
00:12:01 #35118 [verbose] > st t =
00:12:01 #35119 [verbose] > inl states : i32 -> particle_state = states_ps method fs st
00:12:01 #35120 [verbose] > inl dt = (states 1).time - (states 0).time
00:12:01 #35121 [verbose] > inl num_steps = t / dt |> math.round |> abs
00:12:01 #35122 [verbose] > inl st1 = solver' method (newton_second_ps fs) st num_steps
00:12:01 #35123 [verbose] > st1.pos_vec
00:12:01 #35124 [verbose] >
00:12:01 #35125 [verbose] > inl sun_gravity (st : particle_state) : vec =
00:12:01 #35126 [verbose] > inl big_g = 0.0000000000667408
00:12:01 #35127 [verbose] > inl sun_mass = 1988480000000000000000000000000
00:12:01 #35128 [verbose] > -big_g * sun_mass * st.mass *^ st.pos_vec ^/ magnitude st.pos_vec ** 3
00:12:01 #35129 [verbose] >
00:12:01 #35130 [verbose] > inl wind_force v_wind drag rho area (st : particle_state) =
00:12:01 #35131 [verbose] > inl v_rel = st.velocity ^-^ v_wind
00:12:01 #35132 [verbose] > -0.5 * drag * rho * area * magnitude v_rel *^ v_rel
00:12:01 #35133 [verbose] >
00:12:01 #35134 [verbose] > inl rock_state () =
00:12:01 #35135 [verbose] > inl (particle_state default_particle_state') = default_particle_state ()
00:12:01 #35136 [verbose] > particle_state { default_particle_state' with
00:12:01 #35137 [verbose] > mass = 2
00:12:01 #35138 [verbose] > velocity = vec 3 0 4
00:12:01 #35139 [verbose] > }
00:12:01 #35140 [verbose] >
00:12:01 #35141 [verbose] > inl halley_update dt =
00:12:01 #35142 [verbose] > update_ps (euler_cromer_ps dt) [[ sun_gravity ]]
00:12:01 #35143 [verbose] >
00:12:01 #35144 [verbose] > inl halley_initial () =
00:12:01 #35145 [verbose] > inl (particle_state default_particle_state') = default_particle_state ()
00:12:01 #35146 [verbose] > particle_state { default_particle_state' with
00:12:01 #35147 [verbose] > mass = 220000000000000
00:12:01 #35148 [verbose] > pos_vec = 87660000000 *^ i_hat ()
00:12:01 #35149 [verbose] > velocity = 54569 *^ j_hat ()
00:12:01 #35150 [verbose] > }
00:12:02 #35151 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2592fde8250f260a3c89ded60b67224644460a61f32f59fd0cc6387aef87af7c\main.spi
00:12:02 #35152 [verbose] >
00:12:02 #35153 [verbose] > ╭─[ 373.23ms - stdout ]────────────────────────────────────────────────────────╮
00:12:02 #35154 [verbose] > │ () │
00:12:02 #35155 [verbose] > │ │
00:12:02 #35156 [verbose] > │ │
00:12:02 #35157 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:02 #35158 [verbose] >
00:12:02 #35159 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:02 #35160 [verbose] > // // test
00:12:02 #35161 [verbose] >
00:12:02 #35162 [verbose] > inl baseball_forces () =
00:12:02 #35163 [verbose] > inl area = pi * (0.074 / 2) ** 2
00:12:02 #35164 [verbose] > [[
00:12:02 #35165 [verbose] > earth_surface_gravity
00:12:02 #35166 [verbose] > air_resistance 0.3 1.225 area
00:12:02 #35167 [verbose] > ]]
00:12:02 #35168 [verbose] >
00:12:02 #35169 [verbose] > inl baseball_trajectory dt v0 theta_deg =
00:12:02 #35170 [verbose] > inl theta_rad = theta_deg * pi / 180
00:12:02 #35171 [verbose] > inl vy0 = v0 * cos theta_rad
00:12:02 #35172 [verbose] > inl vz0 = v0 * sin theta_rad
00:12:02 #35173 [verbose] > inl initial_state =
00:12:02 #35174 [verbose] > particle_state {
00:12:02 #35175 [verbose] > mass = 0.145
00:12:02 #35176 [verbose] > charge = 0
00:12:02 #35177 [verbose] > time = 0
00:12:02 #35178 [verbose] > pos_vec = zero_vec ()
00:12:02 #35179 [verbose] > velocity = vec 0 vy0 vz0
00:12:02 #35180 [verbose] > }
00:12:02 #35181 [verbose] > states_ps (euler_cromer_ps dt) (baseball_forces ()) initial_state
00:12:02 #35182 [verbose] > >> Some
00:12:02 #35183 [verbose] > |> z_ge0
00:12:02 #35184 [verbose] > |> trajectory
00:12:02 #35185 [verbose] >
00:12:02 #35186 [verbose] > inl baseball_range dt v0 theta_deg =
00:12:02 #35187 [verbose] > baseball_trajectory dt v0 theta_deg
00:12:02 #35188 [verbose] > |> listm.fold (fun _ (y, _) => y) 0
00:12:02 #35189 [verbose] >
00:12:02 #35190 [verbose] > inl x : a _ f64 = am'.init_series 10 80 1
00:12:02 #35191 [verbose] > inl y = x |> am.map (baseball_range 0.01 45)
00:12:02 #35192 [verbose] > "range for a baseball hit at 45 m/s",
00:12:02 #35193 [verbose] > "angle above horizontal (degrees)",
00:12:02 #35194 [verbose] > "",
00:12:02 #35195 [verbose] > ;[[ "horizontal range (m)", x, y ]]
00:12:02 #35196 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8d07a968f72d011a6ea3536d1c85fd8ae878efce3c92f1e2a9d85ba80bc560a0\main.spi
00:12:03 #35197 [verbose] >
00:12:03 #35198 [verbose] > ╭─[ 1.02s - return value ]─────────────────────────────────────────────────────╮
00:12:03 #35199 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:12:03 #35200 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:12:03 #35201 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:12:03 #35202 [verbose] > │ stroke="none"/> │
00:12:03 #35203 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:12:03 #35204 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:12:03 #35205 [verbose] > │ fill="#FFFFFF"> │
00:12:03 #35206 [verbose] > │ range for a baseball hit at 45 m/s │
00:12:03 #35207 [verbose] > │ </text> │
00:12:03 #35208 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="55" y1="424" x2="55" │
00:12:03 #35209 [verbose] > │ y2="75"/> │
00:12:03 #35210 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="62" y1="424" x2="62" │
00:12:03 #35211 [verbose] > │ y2="75"/> │
00:12:03 #35212 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:12:03 #35213 [verbose] > │ y2="75"/> │
00:12:03 #35214 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="77" y1="424" x2="77" │
00:12:03 #35215 [verbose] > │ y2="75"/> │
00:12:03 #35216 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="... │
00:12:03 #35217 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:03 #35218 [verbose] >
00:12:03 #35219 [verbose] > ╭─[ 1.03s - stdout ]───────────────────────────────────────────────────────────╮
00:12:03 #35220 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:12:03 #35221 [verbose] > │ and UH0 = │
00:12:03 #35222 [verbose] > │ | UH0_0 │
00:12:03 #35223 [verbose] > │ | UH0_1 of float * float * float * float * float * float * float * float │
00:12:03 #35224 [verbose] > │ * float * UH0 │
00:12:03 #35225 [verbose] > │ and UH1 = │
00:12:03 #35226 [verbose] > │ | UH1_0 │
00:12:03 #35227 [verbose] > │ | UH1_1 of float * float * UH1 │
00:12:03 #35228 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:12:03 #35229 [verbose] > │ let v1 : int32 = v0.l0 │
00:12:03 #35230 [verbose] > │ let v2 : bool = v1 < 71 │
00:12:03 #35231 [verbose] > │ v2 │
00:12:03 #35232 [verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool = │
00:12:03 #35233 [verbose] > │ let v2 : int32 = v1.l0 │
00:12:03 #35234 [verbose] > │ let v3 : bool = v2 < v0 │
00:12:03 #35235 [verbose] > │ v3 │
00:12:03 #35236 [verbose] > │ and method4 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, v5 │
00:12:03 #35237 [verbose] > │ : float, v6 : float, v7 : float, v8 : float, v9 : int32) : struct (float * │
00:12:03 #35238 [verbose] > │ float * float * float * float * float * float * float * float) = │
00:12:03 #35239 [verbose] > │ let v10 : bool = v9 <= 0 │
00:12:03 #35240 [verbose] > │ if v10 then │
00:12:03 #35241 [verbose] > │ struct (v0, v1, v2, v3, v4, v5, v6, v7, v8) │
00:12:03 #35242 [verbose] > │ else │
00:12:03 #35243 [verbose] > │ let v11 : float = v6 * v6 │
00:12:03 #35244 [verbose] > │ let v12 : float = v7 * v7 │
00:12:03 #35245 [verbose] > │ let v13 : float = v11 + v12 │
00:12:03 #35246 [verbose] > │ let v14 : float = v8 * v8 │
00:12:03 #35247 [verbose] > │ let v15 : float = v13 + v14 │
00:12:03 #35248 [verbose] > │ let v16 : float = sqrt v15 │
00:12:03 #35249 [verbose] > │ let v17 : float = -0.0007902794129829633 * v16 │
00:12:03 #35250 [verbose] > │ let v18 : float = v17 * v6 │
00:12:03 #35251 [verbose] > │ let v19 : float = v17 * v7 │
00:12:03 #35252 [verbose] > │ let v20 : float = v17 * v8 │
00:12:03 #35253 [verbose] > │ let v21 : float = -v1 │
00:12:03 #35254 [verbose] > │ let v22 : float = v21 * 9.80665 │
00:12:03 #35255 [verbose] > │ let v23 : float = v22 * 0.0 │
00:12:03 #35256 [verbose] > │ let v24 : float = v23 + v18 │
00:12:03 #35257 [verbose] > │ let v25 : float = v23 + v19 │
00:12:03 #35258 [verbose] > │ let v26 : float = v22 + v20 │
00:12:03 #35259 [verbose] > │ let v27 : float = v24 / v1 │
00:12:03 #35260 [verbose] > │ let v28 : float = v25 / v1 │
00:12:03 #35261 [verbose] > │ let v29 : float = v26 / v1 │
00:12:03 #35262 [verbose] > │ let v30 : float = 0.01 * v27 │
00:12:03 #35263 [verbose] > │ let v31 : float = 0.01 * v28 │
00:12:03 #35264 [verbose] > │ let v32 : float = 0.01 * v29 │
00:12:03 #35265 [verbose] > │ let v33 : float = v6 + v30 │
00:12:03 #35266 [verbose] > │ let v34 : float = v7 + v31 │
00:12:03 #35267 [verbose] > │ let v35 : float = v8 + v32 │
00:12:03 #35268 [verbose] > │ let v36 : float = v5 + 0.01 │
00:12:03 #35269 [verbose] > │ let v37 : float = 0.01 * v33 │
00:12:03 #35270 [verbose] > │ let v38 : float = 0.01 * v34 │
00:12:03 #35271 [verbose] > │ let v39 : float = 0.01 * v35 │
00:12:03 #35272 [verbose] > │ let v40 : float = v2 + v37 │
00:12:03 #35273 [verbose] > │ let v41 : float = v3 + v38 │
00:12:03 #35274 [verbose] > │ let v42 : float = v4 + v39 │
00:12:03 #35275 [verbose] > │ let v43 : int32 = v9 - 1 │
00:12:03 #35276 [verbose] > │ method4(v0, v1, v40, v41, v42, v36, v33, v34, v35, v43) │
00:12:03 #35277 [verbose] > │ and method5 (v0 : UH0, v1 : UH0) : UH0 = │
00:12:03 #35278 [verbose] > │ match v0 with │
00:12:03 #35279 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:03 #35280 [verbose] > │ let v12 : UH0 = UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1) │
00:12:03 #35281 [verbose] > │ method5(v11, v12) │
00:12:03 #35282 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:03 #35283 [verbose] > │ v1 │
00:12:03 #35284 [verbose] > │ and method3 (v0 : float, v1 : float, v2 : UH0, v3 : int32) : UH0 = │
00:12:03 #35285 [verbose] > │ let v4 : float = 0.0 │
00:12:03 #35286 [verbose] > │ let v5 : float = 0.145 │
00:12:03 #35287 [verbose] > │ let v6 : float = 0.0 │
00:12:03 #35288 [verbose] > │ let v7 : float = 0.0 │
00:12:03 #35289 [verbose] > │ let v8 : float = 0.0 │
00:12:03 #35290 [verbose] > │ let v9 : float = 0.0 │
00:12:03 #35291 [verbose] > │ let v10 : float = 0.0 │
00:12:03 #35292 [verbose] > │ let struct (v11 : float, v12 : float, v13 : float, v14 : float, v15 : │
00:12:03 #35293 [verbose] > │ float, v16 : float, v17 : float, v18 : float, v19 : float) = method4(v4, v5, │
00:12:03 #35294 [verbose] > │ v6, v7, v8, v9, v10, v0, v1, v3) │
00:12:03 #35295 [verbose] > │ let v20 : bool = v15 >= 0.0 │
00:12:03 #35296 [verbose] > │ if v20 then │
00:12:03 #35297 [verbose] > │ let v21 : UH0 = UH0_1(v11, v12, v13, v14, v15, v16, v17, v18, v19, │
00:12:03 #35298 [verbose] > │ v2) │
00:12:03 #35299 [verbose] > │ let v22 : int32 = v3 + 1 │
00:12:03 #35300 [verbose] > │ method3(v0, v1, v21, v22) │
00:12:03 #35301 [verbose] > │ else │
00:12:03 #35302 [verbose] > │ let v24 : UH0 = UH0_0 │
00:12:03 #35303 [verbose] > │ method5(v2, v24) │
00:12:03 #35304 [verbose] > │ and method6 (v0 : UH0, v1 : UH1) : UH1 = │
00:12:03 #35305 [verbose] > │ match v0 with │
00:12:03 #35306 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:03 #35307 [verbose] > │ let v12 : UH1 = method6(v11, v1) │
00:12:03 #35308 [verbose] > │ UH1_1(v5, v6, v12) │
00:12:03 #35309 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:03 #35310 [verbose] > │ v1 │
00:12:03 #35311 [verbose] > │ and method7 (v0 : UH1, v1 : float) : float = │
00:12:03 #35312 [verbose] > │ match v0 with │
00:12:03 #35313 [verbose] > │ | UH1_1(v2, v3, v4) -> (* Cons *) │
00:12:03 #35314 [verbose] > │ method7(v4, v2) │
00:12:03 #35315 [verbose] > │ | UH1_0 -> (* Nil *) │
00:12:03 #35316 [verbose] > │ v1 │
00:12:03 #35317 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:12:03 #35318 [verbose] > │ []) * (float [])) [])) = │
00:12:03 #35319 [verbose] > │ let v0 : (float []) = Array.zeroCreate<float> (71) │
00:12:03 #35320 [verbose] > │ let v1 : Mut0 = {l0 = 0} : Mut0 │
00:12:03 #35321 [verbose] > │ while method1(v1) do │
00:12:03 #35322 [verbose] > │ let v3 : int32 = v1.l0 │
00:12:03 #35323 [verbose] > │ let v4 : float = float v3 │
00:12:03 #35324 [verbose] > │ let v5 : float = 10.0 + v4 │
00:12:03 #35325 [verbose] > │ v0.[int v3] <- v5 │
00:12:03 #35326 [verbose] > │ let v6 : int32 = v3 + 1 │
00:12:03 #35327 [verbose] > │ v1.l0 <- v6 │
00:12:03 #35328 [verbose] > │ () │
00:12:03 #35329 [verbose] > │ let v7 : int32 = v0.Length │
00:12:03 #35330 [verbose] > │ let v8 : (float []) = Array.zeroCreate<float> (v7) │
00:12:03 #35331 [verbose] > │ let v9 : Mut0 = {l0 = 0} : Mut0 │
00:12:03 #35332 [verbose] > │ while method2(v7, v9) do │
00:12:03 #35333 [verbose] > │ let v11 : int32 = v9.l0 │
00:12:03 #35334 [verbose] > │ let v12 : float = v0.[int v11] │
00:12:03 #35335 [verbose] > │ let v13 : float = v12 * 3.141592653589793 │
00:12:03 #35336 [verbose] > │ let v14 : float = v13 / 180.0 │
00:12:03 #35337 [verbose] > │ let v15 : float = cos v14 │
00:12:03 #35338 [verbose] > │ let v16 : float = 45.0 * v15 │
00:12:03 #35339 [verbose] > │ let v17 : float = sin v14 │
00:12:03 #35340 [verbose] > │ let v18 : float = 45.0 * v17 │
00:12:03 #35341 [verbose] > │ let v19 : UH0 = UH0_0 │
00:12:03 #35342 [verbose] > │ let v20 : int32 = 0 │
00:12:03 #35343 [verbose] > │ let v21 : UH0 = method3(v16, v18, v19, v20) │
00:12:03 #35344 [verbose] > │ let v22 : UH1 = UH1_0 │
00:12:03 #35345 [verbose] > │ let v23 : UH1 = method6(v21, v22) │
00:12:03 #35346 [verbose] > │ let v24 : float = 0.0 │
00:12:03 #35347 [verbose] > │ let v25 : float = method7(v23, v24) │
00:12:03 #35348 [verbose] > │ v8.[int v11] <- v25 │
00:12:03 #35349 [verbose] > │ let v26 : int32 = v11 + 1 │
00:12:03 #35350 [verbose] > │ v9.l0 <- v26 │
00:12:03 #35351 [verbose] > │ () │
00:12:03 #35352 [verbose] > │ let v27 : string = "horizontal range (m)" │
00:12:03 #35353 [verbose] > │ let v28 : (struct (string * (float []) * (float [])) []) = [|struct │
00:12:03 #35354 [verbose] > │ (v27, v0, v8)|] │
00:12:03 #35355 [verbose] > │ let v29 : string = "range for a baseball hit at 45 m/s" │
00:12:03 #35356 [verbose] > │ let v30 : string = "angle above horizontal (degrees)" │
00:12:03 #35357 [verbose] > │ let v31 : string = "" │
00:12:03 #35358 [verbose] > │ struct (v29, v30, v31, v28) │
00:12:03 #35359 [verbose] > │ method0() │
00:12:03 #35360 [verbose] > │ │
00:12:03 #35361 [verbose] > │ │
00:12:03 #35362 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:03 #35363 [verbose] >
00:12:03 #35364 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:03 #35365 [verbose] > // // test
00:12:03 #35366 [verbose] >
00:12:03 #35367 [verbose] > inl best_angle (min, max) =
00:12:03 #35368 [verbose] > let rec loop theta_deg (best_range, best_theta_deg) =
00:12:03 #35369 [verbose] > if theta_deg > max
00:12:03 #35370 [verbose] > then best_range, best_theta_deg
00:12:03 #35371 [verbose] > else
00:12:03 #35372 [verbose] > inl range = baseball_range 0.01 45 theta_deg
00:12:03 #35373 [verbose] > loop
00:12:03 #35374 [verbose] > (theta_deg + 1)
00:12:03 #35375 [verbose] > (if range > best_range
00:12:03 #35376 [verbose] > then range, theta_deg
00:12:03 #35377 [verbose] > else best_range, best_theta_deg)
00:12:03 #35378 [verbose] > loop min (0f64, min)
00:12:03 #35379 [verbose] >
00:12:03 #35380 [verbose] > best_angle (30f64, 60f64)
00:12:03 #35381 [verbose] > |> _assert_eq (116.77499158246208, 41)
00:12:03 #35382 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\bc68087efbfbb05400079955b8bb0609cbb864bbb87e8869387561adf0b942cc\main.spi
00:12:03 #35383 [verbose] >
00:12:03 #35384 [verbose] > ╭─[ 602.69ms - stdout ]────────────────────────────────────────────────────────╮
00:12:03 #35385 [verbose] > │ type UH0 = │
00:12:03 #35386 [verbose] > │ | UH0_0 │
00:12:03 #35387 [verbose] > │ | UH0_1 of float * float * float * float * float * float * float * float │
00:12:03 #35388 [verbose] > │ * float * UH0 │
00:12:03 #35389 [verbose] > │ and UH1 = │
00:12:03 #35390 [verbose] > │ | UH1_0 │
00:12:03 #35391 [verbose] > │ | UH1_1 of float * float * UH1 │
00:12:03 #35392 [verbose] > │ let rec method3 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, │
00:12:03 #35393 [verbose] > │ v5 : float, v6 : float, v7 : float, v8 : float, v9 : int32) : struct (float │
00:12:03 #35394 [verbose] > │ * float * float * float * float * float * float * float * float) = │
00:12:03 #35395 [verbose] > │ let v10 : bool = v9 <= 0 │
00:12:03 #35396 [verbose] > │ if v10 then │
00:12:03 #35397 [verbose] > │ struct (v0, v1, v2, v3, v4, v5, v6, v7, v8) │
00:12:03 #35398 [verbose] > │ else │
00:12:03 #35399 [verbose] > │ let v11 : float = v6 * v6 │
00:12:03 #35400 [verbose] > │ let v12 : float = v7 * v7 │
00:12:03 #35401 [verbose] > │ let v13 : float = v11 + v12 │
00:12:03 #35402 [verbose] > │ let v14 : float = v8 * v8 │
00:12:03 #35403 [verbose] > │ let v15 : float = v13 + v14 │
00:12:03 #35404 [verbose] > │ let v16 : float = sqrt v15 │
00:12:03 #35405 [verbose] > │ let v17 : float = -0.0007902794129829633 * v16 │
00:12:03 #35406 [verbose] > │ let v18 : float = v17 * v6 │
00:12:03 #35407 [verbose] > │ let v19 : float = v17 * v7 │
00:12:03 #35408 [verbose] > │ let v20 : float = v17 * v8 │
00:12:03 #35409 [verbose] > │ let v21 : float = -v1 │
00:12:03 #35410 [verbose] > │ let v22 : float = v21 * 9.80665 │
00:12:03 #35411 [verbose] > │ let v23 : float = v22 * 0.0 │
00:12:03 #35412 [verbose] > │ let v24 : float = v23 + v18 │
00:12:03 #35413 [verbose] > │ let v25 : float = v23 + v19 │
00:12:03 #35414 [verbose] > │ let v26 : float = v22 + v20 │
00:12:03 #35415 [verbose] > │ let v27 : float = v24 / v1 │
00:12:03 #35416 [verbose] > │ let v28 : float = v25 / v1 │
00:12:03 #35417 [verbose] > │ let v29 : float = v26 / v1 │
00:12:03 #35418 [verbose] > │ let v30 : float = 0.01 * v27 │
00:12:03 #35419 [verbose] > │ let v31 : float = 0.01 * v28 │
00:12:03 #35420 [verbose] > │ let v32 : float = 0.01 * v29 │
00:12:03 #35421 [verbose] > │ let v33 : float = v6 + v30 │
00:12:03 #35422 [verbose] > │ let v34 : float = v7 + v31 │
00:12:03 #35423 [verbose] > │ let v35 : float = v8 + v32 │
00:12:03 #35424 [verbose] > │ let v36 : float = v5 + 0.01 │
00:12:03 #35425 [verbose] > │ let v37 : float = 0.01 * v33 │
00:12:03 #35426 [verbose] > │ let v38 : float = 0.01 * v34 │
00:12:03 #35427 [verbose] > │ let v39 : float = 0.01 * v35 │
00:12:03 #35428 [verbose] > │ let v40 : float = v2 + v37 │
00:12:03 #35429 [verbose] > │ let v41 : float = v3 + v38 │
00:12:03 #35430 [verbose] > │ let v42 : float = v4 + v39 │
00:12:03 #35431 [verbose] > │ let v43 : int32 = v9 - 1 │
00:12:03 #35432 [verbose] > │ method3(v0, v1, v40, v41, v42, v36, v33, v34, v35, v43) │
00:12:03 #35433 [verbose] > │ and method4 (v0 : UH0, v1 : UH0) : UH0 = │
00:12:03 #35434 [verbose] > │ match v0 with │
00:12:03 #35435 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:03 #35436 [verbose] > │ let v12 : UH0 = UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1) │
00:12:03 #35437 [verbose] > │ method4(v11, v12) │
00:12:03 #35438 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:03 #35439 [verbose] > │ v1 │
00:12:03 #35440 [verbose] > │ and method2 (v0 : float, v1 : float, v2 : UH0, v3 : int32) : UH0 = │
00:12:03 #35441 [verbose] > │ let v4 : float = 0.0 │
00:12:03 #35442 [verbose] > │ let v5 : float = 0.145 │
00:12:03 #35443 [verbose] > │ let v6 : float = 0.0 │
00:12:03 #35444 [verbose] > │ let v7 : float = 0.0 │
00:12:03 #35445 [verbose] > │ let v8 : float = 0.0 │
00:12:03 #35446 [verbose] > │ let v9 : float = 0.0 │
00:12:03 #35447 [verbose] > │ let v10 : float = 0.0 │
00:12:03 #35448 [verbose] > │ let struct (v11 : float, v12 : float, v13 : float, v14 : float, v15 : │
00:12:03 #35449 [verbose] > │ float, v16 : float, v17 : float, v18 : float, v19 : float) = method3(v4, v5, │
00:12:03 #35450 [verbose] > │ v6, v7, v8, v9, v10, v0, v1, v3) │
00:12:03 #35451 [verbose] > │ let v20 : bool = v15 >= 0.0 │
00:12:03 #35452 [verbose] > │ if v20 then │
00:12:03 #35453 [verbose] > │ let v21 : UH0 = UH0_1(v11, v12, v13, v14, v15, v16, v17, v18, v19, │
00:12:03 #35454 [verbose] > │ v2) │
00:12:03 #35455 [verbose] > │ let v22 : int32 = v3 + 1 │
00:12:03 #35456 [verbose] > │ method2(v0, v1, v21, v22) │
00:12:03 #35457 [verbose] > │ else │
00:12:03 #35458 [verbose] > │ let v24 : UH0 = UH0_0 │
00:12:03 #35459 [verbose] > │ method4(v2, v24) │
00:12:03 #35460 [verbose] > │ and method5 (v0 : UH0, v1 : UH1) : UH1 = │
00:12:03 #35461 [verbose] > │ match v0 with │
00:12:03 #35462 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:03 #35463 [verbose] > │ let v12 : UH1 = method5(v11, v1) │
00:12:03 #35464 [verbose] > │ UH1_1(v5, v6, v12) │
00:12:03 #35465 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:03 #35466 [verbose] > │ v1 │
00:12:03 #35467 [verbose] > │ and method6 (v0 : UH1, v1 : float) : float = │
00:12:03 #35468 [verbose] > │ match v0 with │
00:12:03 #35469 [verbose] > │ | UH1_1(v2, v3, v4) -> (* Cons *) │
00:12:03 #35470 [verbose] > │ method6(v4, v2) │
00:12:03 #35471 [verbose] > │ | UH1_0 -> (* Nil *) │
00:12:03 #35472 [verbose] > │ v1 │
00:12:03 #35473 [verbose] > │ and method1 (v0 : float, v1 : float, v2 : float) : struct (float * float) = │
00:12:03 #35474 [verbose] > │ let v3 : bool = v0 > 60.0 │
00:12:03 #35475 [verbose] > │ if v3 then │
00:12:03 #35476 [verbose] > │ struct (v2, v1) │
00:12:03 #35477 [verbose] > │ else │
00:12:03 #35478 [verbose] > │ let v4 : float = v0 * 3.141592653589793 │
00:12:03 #35479 [verbose] > │ let v5 : float = v4 / 180.0 │
00:12:03 #35480 [verbose] > │ let v6 : float = cos v5 │
00:12:03 #35481 [verbose] > │ let v7 : float = 45.0 * v6 │
00:12:03 #35482 [verbose] > │ let v8 : float = sin v5 │
00:12:03 #35483 [verbose] > │ let v9 : float = 45.0 * v8 │
00:12:03 #35484 [verbose] > │ let v10 : UH0 = UH0_0 │
00:12:03 #35485 [verbose] > │ let v11 : int32 = 0 │
00:12:03 #35486 [verbose] > │ let v12 : UH0 = method2(v7, v9, v10, v11) │
00:12:03 #35487 [verbose] > │ let v13 : UH1 = UH1_0 │
00:12:03 #35488 [verbose] > │ let v14 : UH1 = method5(v12, v13) │
00:12:03 #35489 [verbose] > │ let v15 : float = 0.0 │
00:12:03 #35490 [verbose] > │ let v16 : float = method6(v14, v15) │
00:12:03 #35491 [verbose] > │ let v17 : float = v0 + 1.0 │
00:12:03 #35492 [verbose] > │ let v18 : bool = v16 > v2 │
00:12:03 #35493 [verbose] > │ let struct (v19 : float, v20 : float) = │
00:12:03 #35494 [verbose] > │ if v18 then │
00:12:03 #35495 [verbose] > │ struct (v16, v0) │
00:12:03 #35496 [verbose] > │ else │
00:12:03 #35497 [verbose] > │ struct (v2, v1) │
00:12:03 #35498 [verbose] > │ method1(v17, v20, v19) │
00:12:03 #35499 [verbose] > │ and method7 (v0 : bool) : bool = │
00:12:03 #35500 [verbose] > │ v0 │
00:12:03 #35501 [verbose] > │ and method0 () : unit = │
00:12:03 #35502 [verbose] > │ let v0 : float = 30.0 │
00:12:03 #35503 [verbose] > │ let v1 : float = 0.0 │
00:12:03 #35504 [verbose] > │ let v2 : float = 30.0 │
00:12:03 #35505 [verbose] > │ let struct (v3 : float, v4 : float) = method1(v0, v2, v1) │
00:12:03 #35506 [verbose] > │ let v5 : string = $"%A{struct (v3, v4)}" │
00:12:03 #35507 [verbose] > │ System.Console.WriteLine v5 │
00:12:03 #35508 [verbose] > │ let v6 : bool = v3 = 116.77499158246208 │
00:12:03 #35509 [verbose] > │ let v8 : bool = │
00:12:03 #35510 [verbose] > │ if v6 then │
00:12:03 #35511 [verbose] > │ let v7 : bool = v4 = 41.0 │
00:12:03 #35512 [verbose] > │ v7 │
00:12:03 #35513 [verbose] > │ else │
00:12:03 #35514 [verbose] > │ false │
00:12:03 #35515 [verbose] > │ let v10 : bool = │
00:12:03 #35516 [verbose] > │ if v8 then │
00:12:03 #35517 [verbose] > │ true │
00:12:03 #35518 [verbose] > │ else │
00:12:03 #35519 [verbose] > │ method7(v8) │
00:12:03 #35520 [verbose] > │ let v11 : string = $"__expect / actual: %A{struct (v3, v4)} / expected: │
00:12:03 #35521 [verbose] > │ %A{struct (116.77499158246208, 41.0)}" │
00:12:03 #35522 [verbose] > │ let v12 : bool = v10 = false │
00:12:03 #35523 [verbose] > │ if v12 then │
00:12:03 #35524 [verbose] > │ failwith<unit> v11 │
00:12:03 #35525 [verbose] > │ method0() │
00:12:03 #35526 [verbose] > │ │
00:12:03 #35527 [verbose] > │ struct (116.7749916, 41.0) │
00:12:03 #35528 [verbose] > │ │
00:12:03 #35529 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:03 #35530 [verbose] >
00:12:03 #35531 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:12:03 #35532 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:12:03 #35533 [verbose] > │ ## relativity_ps │
00:12:03 #35534 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:03 #35535 [verbose] >
00:12:03 #35536 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:03 #35537 [verbose] > inl relativity_ps fs (st : particle_state) =
00:12:03 #35538 [verbose] > inl f_net = fs |> listm.map (fun f => f st) |> sum_vec
00:12:03 #35539 [verbose] > inl c = 299792458
00:12:03 #35540 [verbose] > inl u = st.velocity ^/ c
00:12:03 #35541 [verbose] > inl acc = sqrt (1 - (u <.> u)) *^ (f_net ^-^ (f_net <.> u) *^ u) ^/ st.mass
00:12:03 #35542 [verbose] > d_particle_state {
00:12:03 #35543 [verbose] > dmdt = 0
00:12:03 #35544 [verbose] > dqdt = 0
00:12:03 #35545 [verbose] > dtdt = 1
00:12:03 #35546 [verbose] > drdt = st.velocity
00:12:03 #35547 [verbose] > dvdt = acc
00:12:03 #35548 [verbose] > }
00:12:04 #35549 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\ac244dbd4ff973d6a44954edcca731f6939816112d576db1b56a64c2e8a65b91\main.spi
00:12:04 #35550 [verbose] >
00:12:04 #35551 [verbose] > ╭─[ 223.76ms - stdout ]────────────────────────────────────────────────────────╮
00:12:04 #35552 [verbose] > │ () │
00:12:04 #35553 [verbose] > │ │
00:12:04 #35554 [verbose] > │ │
00:12:04 #35555 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:04 #35556 [verbose] >
00:12:04 #35557 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:04 #35558 [verbose] > // // test
00:12:04 #35559 [verbose] >
00:12:04 #35560 [verbose] > inl year = 365.25 * 24 * 60 * 60
00:12:04 #35561 [verbose] > inl c = 299792458
00:12:04 #35562 [verbose] > inl ~method = runge_kutta_4 100000
00:12:04 #35563 [verbose] > inl forces = [[ fun _ => 10 *^ i_hat () ]]
00:12:04 #35564 [verbose] > inl (particle_state default_particle_state') = default_particle_state ()
00:12:04 #35565 [verbose] > inl initial_state =
00:12:04 #35566 [verbose] > particle_state { default_particle_state' with
00:12:04 #35567 [verbose] > mass = 1
00:12:04 #35568 [verbose] > }
00:12:04 #35569 [verbose] >
00:12:04 #35570 [verbose] > inl newton_states = solver_ method (newton_second_ps forces) initial_state
00:12:04 #35571 [verbose] > inl relativity_states = solver_ method (relativity_ps forces) initial_state
00:12:04 #35572 [verbose] >
00:12:04 #35573 [verbose] > inl newton_x, newton_y =
00:12:04 #35574 [verbose] > newton_states
00:12:04 #35575 [verbose] > >> Some
00:12:04 #35576 [verbose] > |> seq.take_while_ (fun (particle_state st) (_ : i32) => st.time <= year)
00:12:04 #35577 [verbose] > |> listm.map (fun (particle_state st) => st.time / year, st.velocity.x / c)
00:12:04 #35578 [verbose] > |> listm'.unzip
00:12:04 #35579 [verbose] >
00:12:04 #35580 [verbose] > inl _, relativity_y =
00:12:04 #35581 [verbose] > relativity_states
00:12:04 #35582 [verbose] > >> Some
00:12:04 #35583 [verbose] > |> seq.take_while_ (fun (particle_state st) (_ : i32) => st.time <= year)
00:12:04 #35584 [verbose] > |> listm.map (fun (particle_state st) => st.time / year, st.velocity.x / c)
00:12:04 #35585 [verbose] > |> listm'.unzip
00:12:04 #35586 [verbose] >
00:12:04 #35587 [verbose] > inl newton_x : a i32 _ = newton_x |> listm.toArray
00:12:04 #35588 [verbose] > inl newton_y : a i32 _ = newton_y |> listm.toArray
00:12:04 #35589 [verbose] > inl relativity_y : a i32 _ = relativity_y |> listm.toArray
00:12:04 #35590 [verbose] >
00:12:04 #35591 [verbose] > "response to a constant force",
00:12:04 #35592 [verbose] > "time (years)",
00:12:04 #35593 [verbose] > "velocity (multiples of c)",
00:12:04 #35594 [verbose] > ;[[
00:12:04 #35595 [verbose] > "newtonian", newton_x, newton_y
00:12:04 #35596 [verbose] > "relativistic", newton_x, relativity_y
00:12:04 #35597 [verbose] > ]]
00:12:04 #35598 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\198d6a33edeff181fd7ef534b520bdb91f070ee9b4f26766999a2aeea6940869\main.spi
00:12:04 #35599 [verbose] >
00:12:04 #35600 [verbose] > ╭─[ 613.06ms - return value ]──────────────────────────────────────────────────╮
00:12:04 #35601 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:12:04 #35602 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:12:04 #35603 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:12:04 #35604 [verbose] > │ stroke="none"/> │
00:12:04 #35605 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:12:04 #35606 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:12:04 #35607 [verbose] > │ fill="#FFFFFF"> │
00:12:04 #35608 [verbose] > │ response to a constant force │
00:12:04 #35609 [verbose] > │ </text> │
00:12:04 #35610 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │
00:12:04 #35611 [verbose] > │ y2="75"/> │
00:12:04 #35612 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:12:04 #35613 [verbose] > │ y2="75"/> │
00:12:04 #35614 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │
00:12:04 #35615 [verbose] > │ y2="75"/> │
00:12:04 #35616 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │
00:12:04 #35617 [verbose] > │ y2="75"/> │
00:12:04 #35618 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1=... │
00:12:04 #35619 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:04 #35620 [verbose] >
00:12:04 #35621 [verbose] > ╭─[ 628.14ms - stdout ]────────────────────────────────────────────────────────╮
00:12:04 #35622 [verbose] > │ type UH0 = │
00:12:04 #35623 [verbose] > │ | UH0_0 │
00:12:04 #35624 [verbose] > │ | UH0_1 of float * float * float * float * float * float * float * float │
00:12:04 #35625 [verbose] > │ * float * UH0 │
00:12:04 #35626 [verbose] > │ and UH1 = │
00:12:04 #35627 [verbose] > │ | UH1_0 │
00:12:04 #35628 [verbose] > │ | UH1_1 of float * float * UH1 │
00:12:04 #35629 [verbose] > │ and UH2 = │
00:12:04 #35630 [verbose] > │ | UH2_0 │
00:12:04 #35631 [verbose] > │ | UH2_1 of float * UH2 │
00:12:04 #35632 [verbose] > │ let rec closure1 (v0 : (struct (float * float * float * float * float * │
00:12:04 #35633 [verbose] > │ float * float * float * float) -> struct (float * float * float * float * │
00:12:04 #35634 [verbose] > │ float * float * float * float * float))) struct (v1 : float, v2 : float, v3 │
00:12:04 #35635 [verbose] > │ : float, v4 : float, v5 : float, v6 : float, v7 : float, v8 : float, v9 : │
00:12:04 #35636 [verbose] > │ float) : struct (float * float * float * float * float * float * float * │
00:12:04 #35637 [verbose] > │ float * float) = │
00:12:04 #35638 [verbose] > │ let struct (v10 : float, v11 : float, v12 : float, v13 : float, v14 : │
00:12:04 #35639 [verbose] > │ float, v15 : float, v16 : float, v17 : float, v18 : float) = v0 struct (v1, │
00:12:04 #35640 [verbose] > │ v2, v3, v4, v5, v6, v7, v8, v9) │
00:12:04 #35641 [verbose] > │ let v19 : float = v15 * 50000.0 │
00:12:04 #35642 [verbose] > │ let v20 : float = v6 + v19 │
00:12:04 #35643 [verbose] > │ let v21 : float = 50000.0 * v12 │
00:12:04 #35644 [verbose] > │ let v22 : float = 50000.0 * v13 │
00:12:04 #35645 [verbose] > │ let v23 : float = 50000.0 * v14 │
00:12:04 #35646 [verbose] > │ let v24 : float = v3 + v21 │
00:12:04 #35647 [verbose] > │ let v25 : float = v4 + v22 │
00:12:04 #35648 [verbose] > │ let v26 : float = v5 + v23 │
00:12:04 #35649 [verbose] > │ let v27 : float = 50000.0 * v16 │
00:12:04 #35650 [verbose] > │ let v28 : float = 50000.0 * v17 │
00:12:04 #35651 [verbose] > │ let v29 : float = 50000.0 * v18 │
00:12:04 #35652 [verbose] > │ let v30 : float = v7 + v27 │
00:12:04 #35653 [verbose] > │ let v31 : float = v8 + v28 │
00:12:04 #35654 [verbose] > │ let v32 : float = v9 + v29 │
00:12:04 #35655 [verbose] > │ let struct (v33 : float, v34 : float, v35 : float, v36 : float, v37 : │
00:12:04 #35656 [verbose] > │ float, v38 : float, v39 : float, v40 : float, v41 : float) = v0 struct (v1, │
00:12:04 #35657 [verbose] > │ v2, v24, v25, v26, v20, v30, v31, v32) │
00:12:04 #35658 [verbose] > │ let v42 : float = v38 * 50000.0 │
00:12:04 #35659 [verbose] > │ let v43 : float = v6 + v42 │
00:12:04 #35660 [verbose] > │ let v44 : float = 50000.0 * v35 │
00:12:04 #35661 [verbose] > │ let v45 : float = 50000.0 * v36 │
00:12:04 #35662 [verbose] > │ let v46 : float = 50000.0 * v37 │
00:12:04 #35663 [verbose] > │ let v47 : float = v3 + v44 │
00:12:04 #35664 [verbose] > │ let v48 : float = v4 + v45 │
00:12:04 #35665 [verbose] > │ let v49 : float = v5 + v46 │
00:12:04 #35666 [verbose] > │ let v50 : float = 50000.0 * v39 │
00:12:04 #35667 [verbose] > │ let v51 : float = 50000.0 * v40 │
00:12:04 #35668 [verbose] > │ let v52 : float = 50000.0 * v41 │
00:12:04 #35669 [verbose] > │ let v53 : float = v7 + v50 │
00:12:04 #35670 [verbose] > │ let v54 : float = v8 + v51 │
00:12:04 #35671 [verbose] > │ let v55 : float = v9 + v52 │
00:12:04 #35672 [verbose] > │ let struct (v56 : float, v57 : float, v58 : float, v59 : float, v60 : │
00:12:04 #35673 [verbose] > │ float, v61 : float, v62 : float, v63 : float, v64 : float) = v0 struct (v1, │
00:12:04 #35674 [verbose] > │ v2, v47, v48, v49, v43, v53, v54, v55) │
00:12:04 #35675 [verbose] > │ let v65 : float = v61 * 100000.0 │
00:12:04 #35676 [verbose] > │ let v66 : float = v6 + v65 │
00:12:04 #35677 [verbose] > │ let v67 : float = 100000.0 * v58 │
00:12:04 #35678 [verbose] > │ let v68 : float = 100000.0 * v59 │
00:12:04 #35679 [verbose] > │ let v69 : float = 100000.0 * v60 │
00:12:04 #35680 [verbose] > │ let v70 : float = v3 + v67 │
00:12:04 #35681 [verbose] > │ let v71 : float = v4 + v68 │
00:12:04 #35682 [verbose] > │ let v72 : float = v5 + v69 │
00:12:04 #35683 [verbose] > │ let v73 : float = 100000.0 * v62 │
00:12:04 #35684 [verbose] > │ let v74 : float = 100000.0 * v63 │
00:12:04 #35685 [verbose] > │ let v75 : float = 100000.0 * v64 │
00:12:04 #35686 [verbose] > │ let v76 : float = v7 + v73 │
00:12:04 #35687 [verbose] > │ let v77 : float = v8 + v74 │
00:12:04 #35688 [verbose] > │ let v78 : float = v9 + v75 │
00:12:04 #35689 [verbose] > │ let struct (v79 : float, v80 : float, v81 : float, v82 : float, v83 : │
00:12:04 #35690 [verbose] > │ float, v84 : float, v85 : float, v86 : float, v87 : float) = v0 struct (v1, │
00:12:04 #35691 [verbose] > │ v2, v70, v71, v72, v66, v76, v77, v78) │
00:12:04 #35692 [verbose] > │ let v88 : float = v10 + v33 │
00:12:04 #35693 [verbose] > │ let v89 : float = v11 + v34 │
00:12:04 #35694 [verbose] > │ let v90 : float = v15 + v38 │
00:12:04 #35695 [verbose] > │ let v91 : float = v12 + v35 │
00:12:04 #35696 [verbose] > │ let v92 : float = v13 + v36 │
00:12:04 #35697 [verbose] > │ let v93 : float = v14 + v37 │
00:12:04 #35698 [verbose] > │ let v94 : float = v16 + v39 │
00:12:04 #35699 [verbose] > │ let v95 : float = v17 + v40 │
00:12:04 #35700 [verbose] > │ let v96 : float = v18 + v41 │
00:12:04 #35701 [verbose] > │ let v97 : float = v88 + v33 │
00:12:04 #35702 [verbose] > │ let v98 : float = v89 + v34 │
00:12:04 #35703 [verbose] > │ let v99 : float = v90 + v38 │
00:12:04 #35704 [verbose] > │ let v100 : float = v91 + v35 │
00:12:04 #35705 [verbose] > │ let v101 : float = v92 + v36 │
00:12:04 #35706 [verbose] > │ let v102 : float = v93 + v37 │
00:12:04 #35707 [verbose] > │ let v103 : float = v94 + v39 │
00:12:04 #35708 [verbose] > │ let v104 : float = v95 + v40 │
00:12:04 #35709 [verbose] > │ let v105 : float = v96 + v41 │
00:12:04 #35710 [verbose] > │ let v106 : float = v97 + v56 │
00:12:04 #35711 [verbose] > │ let v107 : float = v98 + v57 │
00:12:04 #35712 [verbose] > │ let v108 : float = v99 + v61 │
00:12:04 #35713 [verbose] > │ let v109 : float = v100 + v58 │
00:12:04 #35714 [verbose] > │ let v110 : float = v101 + v59 │
00:12:04 #35715 [verbose] > │ let v111 : float = v102 + v60 │
00:12:04 #35716 [verbose] > │ let v112 : float = v103 + v62 │
00:12:04 #35717 [verbose] > │ let v113 : float = v104 + v63 │
00:12:04 #35718 [verbose] > │ let v114 : float = v105 + v64 │
00:12:04 #35719 [verbose] > │ let v115 : float = v106 + v56 │
00:12:04 #35720 [verbose] > │ let v116 : float = v107 + v57 │
00:12:04 #35721 [verbose] > │ let v117 : float = v108 + v61 │
00:12:04 #35722 [verbose] > │ let v118 : float = v109 + v58 │
00:12:04 #35723 [verbose] > │ let v119 : float = v110 + v59 │
00:12:04 #35724 [verbose] > │ let v120 : float = v111 + v60 │
00:12:04 #35725 [verbose] > │ let v121 : float = v112 + v62 │
00:12:04 #35726 [verbose] > │ let v122 : float = v113 + v63 │
00:12:04 #35727 [verbose] > │ let v123 : float = v114 + v64 │
00:12:04 #35728 [verbose] > │ let v124 : float = v115 + v79 │
00:12:04 #35729 [verbose] > │ let v125 : float = v116 + v80 │
00:12:04 #35730 [verbose] > │ let v126 : float = v117 + v84 │
00:12:04 #35731 [verbose] > │ let v127 : float = v118 + v81 │
00:12:04 #35732 [verbose] > │ let v128 : float = v119 + v82 │
00:12:04 #35733 [verbose] > │ let v129 : float = v120 + v83 │
00:12:04 #35734 [verbose] > │ let v130 : float = v121 + v85 │
00:12:04 #35735 [verbose] > │ let v131 : float = v122 + v86 │
00:12:04 #35736 [verbose] > │ let v132 : float = v123 + v87 │
00:12:04 #35737 [verbose] > │ let v133 : float = v126 * 16666.666666666668 │
00:12:04 #35738 [verbose] > │ let v134 : float = v6 + v133 │
00:12:04 #35739 [verbose] > │ let v135 : float = 16666.666666666668 * v127 │
00:12:04 #35740 [verbose] > │ let v136 : float = 16666.666666666668 * v128 │
00:12:04 #35741 [verbose] > │ let v137 : float = 16666.666666666668 * v129 │
00:12:04 #35742 [verbose] > │ let v138 : float = v3 + v135 │
00:12:04 #35743 [verbose] > │ let v139 : float = v4 + v136 │
00:12:04 #35744 [verbose] > │ let v140 : float = v5 + v137 │
00:12:04 #35745 [verbose] > │ let v141 : float = 16666.666666666668 * v130 │
00:12:04 #35746 [verbose] > │ let v142 : float = 16666.666666666668 * v131 │
00:12:04 #35747 [verbose] > │ let v143 : float = 16666.666666666668 * v132 │
00:12:04 #35748 [verbose] > │ let v144 : float = v7 + v141 │
00:12:04 #35749 [verbose] > │ let v145 : float = v8 + v142 │
00:12:04 #35750 [verbose] > │ let v146 : float = v9 + v143 │
00:12:04 #35751 [verbose] > │ struct (v1, v2, v138, v139, v140, v134, v144, v145, v146) │
00:12:04 #35752 [verbose] > │ and closure0 () (v0 : (struct (float * float * float * float * float * float │
00:12:04 #35753 [verbose] > │ * float * float * float) -> struct (float * float * float * float * float * │
00:12:04 #35754 [verbose] > │ float * float * float * float))) : (struct (float * float * float * float * │
00:12:04 #35755 [verbose] > │ float * float * float * float * float) -> struct (float * float * float * │
00:12:04 #35756 [verbose] > │ float * float * float * float * float * float)) = │
00:12:04 #35757 [verbose] > │ closure1(v0) │
00:12:04 #35758 [verbose] > │ and closure2 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │
00:12:04 #35759 [verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float * │
00:12:04 #35760 [verbose] > │ float * float * float * float * float * float * float * float) = │
00:12:04 #35761 [verbose] > │ let v9 : float = 10.0 / v1 │
00:12:04 #35762 [verbose] > │ let v10 : float = 0.0 / v1 │
00:12:04 #35763 [verbose] > │ struct (0.0, 0.0, v6, v7, v8, 1.0, v9, v10, v10) │
00:12:04 #35764 [verbose] > │ and closure3 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │
00:12:04 #35765 [verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float * │
00:12:04 #35766 [verbose] > │ float * float * float * float * float * float * float * float) = │
00:12:04 #35767 [verbose] > │ let v9 : float = v6 / 299792458.0 │
00:12:04 #35768 [verbose] > │ let v10 : float = v7 / 299792458.0 │
00:12:04 #35769 [verbose] > │ let v11 : float = v8 / 299792458.0 │
00:12:04 #35770 [verbose] > │ let v12 : float = v9 * v9 │
00:12:04 #35771 [verbose] > │ let v13 : float = v10 * v10 │
00:12:04 #35772 [verbose] > │ let v14 : float = v12 + v13 │
00:12:04 #35773 [verbose] > │ let v15 : float = v11 * v11 │
00:12:04 #35774 [verbose] > │ let v16 : float = v14 + v15 │
00:12:04 #35775 [verbose] > │ let v17 : float = 1.0 - v16 │
00:12:04 #35776 [verbose] > │ let v18 : float = sqrt v17 │
00:12:04 #35777 [verbose] > │ let v19 : float = 10.0 * v9 │
00:12:04 #35778 [verbose] > │ let v20 : float = 0.0 * v10 │
00:12:04 #35779 [verbose] > │ let v21 : float = v19 + v20 │
00:12:04 #35780 [verbose] > │ let v22 : float = 0.0 * v11 │
00:12:04 #35781 [verbose] > │ let v23 : float = v21 + v22 │
00:12:04 #35782 [verbose] > │ let v24 : float = v23 * v9 │
00:12:04 #35783 [verbose] > │ let v25 : float = v23 * v10 │
00:12:04 #35784 [verbose] > │ let v26 : float = v23 * v11 │
00:12:04 #35785 [verbose] > │ let v27 : float = -1.0 * v24 │
00:12:04 #35786 [verbose] > │ let v28 : float = -1.0 * v25 │
00:12:04 #35787 [verbose] > │ let v29 : float = -1.0 * v26 │
00:12:04 #35788 [verbose] > │ let v30 : float = 10.0 + v27 │
00:12:04 #35789 [verbose] > │ let v31 : float = v18 * v30 │
00:12:04 #35790 [verbose] > │ let v32 : float = v18 * v28 │
00:12:04 #35791 [verbose] > │ let v33 : float = v18 * v29 │
00:12:04 #35792 [verbose] > │ let v34 : float = v31 / v1 │
00:12:04 #35793 [verbose] > │ let v35 : float = v32 / v1 │
00:12:04 #35794 [verbose] > │ let v36 : float = v33 / v1 │
00:12:04 #35795 [verbose] > │ struct (0.0, 0.0, v6, v7, v8, 1.0, v34, v35, v36) │
00:12:04 #35796 [verbose] > │ and method2 (v0 : (struct (float * float * float * float * float * float * │
00:12:04 #35797 [verbose] > │ float * float * float) -> struct (float * float * float * float * float * │
00:12:04 #35798 [verbose] > │ float * float * float * float)), v1 : float, v2 : float, v3 : float, v4 : │
00:12:04 #35799 [verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float, v9 : float, v10 : │
00:12:04 #35800 [verbose] > │ int32) : struct (float * float * float * float * float * float * float * │
00:12:04 #35801 [verbose] > │ float * float) = │
00:12:04 #35802 [verbose] > │ let v11 : bool = v10 <= 0 │
00:12:04 #35803 [verbose] > │ if v11 then │
00:12:04 #35804 [verbose] > │ struct (v1, v2, v3, v4, v5, v6, v7, v8, v9) │
00:12:04 #35805 [verbose] > │ else │
00:12:04 #35806 [verbose] > │ let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 │
00:12:04 #35807 [verbose] > │ : float, v17 : float, v18 : float, v19 : float, v20 : float) = v0 struct │
00:12:04 #35808 [verbose] > │ (v1, v2, v3, v4, v5, v6, v7, v8, v9) │
00:12:04 #35809 [verbose] > │ let v21 : int32 = v10 - 1 │
00:12:04 #35810 [verbose] > │ method2(v0, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21) │
00:12:04 #35811 [verbose] > │ and method3 (v0 : UH0, v1 : UH0) : UH0 = │
00:12:04 #35812 [verbose] > │ match v0 with │
00:12:04 #35813 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:04 #35814 [verbose] > │ let v12 : UH0 = UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1) │
00:12:04 #35815 [verbose] > │ method3(v11, v12) │
00:12:04 #35816 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:04 #35817 [verbose] > │ v1 │
00:12:04 #35818 [verbose] > │ and method1 (v0 : (struct (float * float * float * float * float * float * │
00:12:04 #35819 [verbose] > │ float * float * float) -> struct (float * float * float * float * float * │
00:12:04 #35820 [verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 = │
00:12:04 #35821 [verbose] > │ let v3 : float = 0.0 │
00:12:04 #35822 [verbose] > │ let v4 : float = 1.0 │
00:12:04 #35823 [verbose] > │ let v5 : float = 0.0 │
00:12:04 #35824 [verbose] > │ let v6 : float = 0.0 │
00:12:04 #35825 [verbose] > │ let v7 : float = 0.0 │
00:12:04 #35826 [verbose] > │ let v8 : float = 0.0 │
00:12:04 #35827 [verbose] > │ let v9 : float = 0.0 │
00:12:04 #35828 [verbose] > │ let v10 : float = 0.0 │
00:12:04 #35829 [verbose] > │ let v11 : float = 0.0 │
00:12:04 #35830 [verbose] > │ let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 : │
00:12:04 #35831 [verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │
00:12:04 #35832 [verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2) │
00:12:04 #35833 [verbose] > │ let v21 : bool = v17 <= 31557600.0 │
00:12:04 #35834 [verbose] > │ if v21 then │
00:12:04 #35835 [verbose] > │ let v22 : UH0 = UH0_1(v12, v13, v14, v15, v16, v17, v18, v19, v20, │
00:12:04 #35836 [verbose] > │ v1) │
00:12:04 #35837 [verbose] > │ let v23 : int32 = v2 + 1 │
00:12:04 #35838 [verbose] > │ method1(v0, v22, v23) │
00:12:04 #35839 [verbose] > │ else │
00:12:04 #35840 [verbose] > │ let v25 : UH0 = UH0_0 │
00:12:04 #35841 [verbose] > │ method3(v1, v25) │
00:12:04 #35842 [verbose] > │ and method4 (v0 : UH0, v1 : UH1) : UH1 = │
00:12:04 #35843 [verbose] > │ match v0 with │
00:12:04 #35844 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:04 #35845 [verbose] > │ let v12 : UH1 = method4(v11, v1) │
00:12:04 #35846 [verbose] > │ let v13 : float = v7 / 31557600.0 │
00:12:04 #35847 [verbose] > │ let v14 : float = v8 / 299792458.0 │
00:12:04 #35848 [verbose] > │ UH1_1(v13, v14, v12) │
00:12:04 #35849 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:04 #35850 [verbose] > │ v1 │
00:12:04 #35851 [verbose] > │ and method5 (v0 : UH1, v1 : UH2, v2 : UH2) : struct (UH2 * UH2) = │
00:12:04 #35852 [verbose] > │ match v0 with │
00:12:04 #35853 [verbose] > │ | UH1_1(v3, v4, v5) -> (* Cons *) │
00:12:04 #35854 [verbose] > │ let v6 : UH2 = UH2_1(v3, v1) │
00:12:04 #35855 [verbose] > │ let v7 : UH2 = UH2_1(v4, v2) │
00:12:04 #35856 [verbose] > │ method5(v5, v6, v7) │
00:12:04 #35857 [verbose] > │ | UH1_0 -> (* Nil *) │
00:12:04 #35858 [verbose] > │ struct (v1, v2) │
00:12:04 #35859 [verbose] > │ and method6 (v0 : UH2, v1 : UH2) : UH2 = │
00:12:04 #35860 [verbose] > │ match v0 with │
00:12:04 #35861 [verbose] > │ | UH2_1(v2, v3) -> (* Cons *) │
00:12:04 #35862 [verbose] > │ let v4 : UH2 = UH2_1(v2, v1) │
00:12:04 #35863 [verbose] > │ method6(v3, v4) │
00:12:04 #35864 [verbose] > │ | UH2_0 -> (* Nil *) │
00:12:04 #35865 [verbose] > │ v1 │
00:12:04 #35866 [verbose] > │ and method7 (v0 : (struct (float * float * float * float * float * float * │
00:12:04 #35867 [verbose] > │ float * float * float) -> struct (float * float * float * float * float * │
00:12:04 #35868 [verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 = │
00:12:04 #35869 [verbose] > │ let v3 : float = 0.0 │
00:12:04 #35870 [verbose] > │ let v4 : float = 1.0 │
00:12:04 #35871 [verbose] > │ let v5 : float = 0.0 │
00:12:04 #35872 [verbose] > │ let v6 : float = 0.0 │
00:12:04 #35873 [verbose] > │ let v7 : float = 0.0 │
00:12:04 #35874 [verbose] > │ let v8 : float = 0.0 │
00:12:04 #35875 [verbose] > │ let v9 : float = 0.0 │
00:12:04 #35876 [verbose] > │ let v10 : float = 0.0 │
00:12:04 #35877 [verbose] > │ let v11 : float = 0.0 │
00:12:04 #35878 [verbose] > │ let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 : │
00:12:04 #35879 [verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │
00:12:04 #35880 [verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2) │
00:12:04 #35881 [verbose] > │ let v21 : bool = v17 <= 31557600.0 │
00:12:04 #35882 [verbose] > │ if v21 then │
00:12:04 #35883 [verbose] > │ let v22 : UH0 = UH0_1(v12, v13, v14, v15, v16, v17, v18, v19, v20, │
00:12:04 #35884 [verbose] > │ v1) │
00:12:04 #35885 [verbose] > │ let v23 : int32 = v2 + 1 │
00:12:04 #35886 [verbose] > │ method7(v0, v22, v23) │
00:12:04 #35887 [verbose] > │ else │
00:12:04 #35888 [verbose] > │ let v25 : UH0 = UH0_0 │
00:12:04 #35889 [verbose] > │ method3(v1, v25) │
00:12:04 #35890 [verbose] > │ and method8 (v0 : UH0, v1 : UH1) : UH1 = │
00:12:04 #35891 [verbose] > │ match v0 with │
00:12:04 #35892 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:04 #35893 [verbose] > │ let v12 : UH1 = method8(v11, v1) │
00:12:04 #35894 [verbose] > │ let v13 : float = v7 / 31557600.0 │
00:12:04 #35895 [verbose] > │ let v14 : float = v8 / 299792458.0 │
00:12:04 #35896 [verbose] > │ UH1_1(v13, v14, v12) │
00:12:04 #35897 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:04 #35898 [verbose] > │ v1 │
00:12:04 #35899 [verbose] > │ and method10 (v0 : UH2, v1 : int32) : int32 = │
00:12:04 #35900 [verbose] > │ match v0 with │
00:12:04 #35901 [verbose] > │ | UH2_1(v2, v3) -> (* Cons *) │
00:12:04 #35902 [verbose] > │ let v4 : int32 = v1 + 1 │
00:12:04 #35903 [verbose] > │ method10(v3, v4) │
00:12:04 #35904 [verbose] > │ | UH2_0 -> (* Nil *) │
00:12:04 #35905 [verbose] > │ v1 │
00:12:04 #35906 [verbose] > │ and method11 (v0 : (float []), v1 : UH2, v2 : int32) : int32 = │
00:12:04 #35907 [verbose] > │ match v1 with │
00:12:04 #35908 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:12:04 #35909 [verbose] > │ v0.[int v2] <- v3 │
00:12:04 #35910 [verbose] > │ let v5 : int32 = v2 + 1 │
00:12:04 #35911 [verbose] > │ method11(v0, v4, v5) │
00:12:04 #35912 [verbose] > │ | UH2_0 -> (* Nil *) │
00:12:04 #35913 [verbose] > │ v2 │
00:12:04 #35914 [verbose] > │ and method9 (v0 : UH2) : (float []) = │
00:12:04 #35915 [verbose] > │ let v1 : int32 = 0 │
00:12:04 #35916 [verbose] > │ let v2 : int32 = method10(v0, v1) │
00:12:04 #35917 [verbose] > │ let v3 : (float []) = Array.zeroCreate<float> (v2) │
00:12:04 #35918 [verbose] > │ let v4 : int32 = 0 │
00:12:04 #35919 [verbose] > │ let v5 : int32 = method11(v3, v0, v4) │
00:12:04 #35920 [verbose] > │ v3 │
00:12:04 #35921 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:12:04 #35922 [verbose] > │ []) * (float [])) [])) = │
00:12:04 #35923 [verbose] > │ let v0 : ((struct (float * float * float * float * float * float * float │
00:12:04 #35924 [verbose] > │ * float * float) -> struct (float * float * float * float * float * float * │
00:12:04 #35925 [verbose] > │ float * float * float)) -> (struct (float * float * float * float * float * │
00:12:04 #35926 [verbose] > │ float * float * float * float) -> struct (float * float * float * float * │
00:12:04 #35927 [verbose] > │ float * float * float * float * float))) = closure0() │
00:12:04 #35928 [verbose] > │ let v1 : (struct (float * float * float * float * float * float * float │
00:12:05 #35929 [verbose] > │ * float * float) -> struct (float * float * float * float * float * float * │
00:12:05 #35930 [verbose] > │ float * float * float)) = closure2() │
00:12:05 #35931 [verbose] > │ let v2 : (struct (float * float * float * float * float * float * float │
00:12:05 #35932 [verbose] > │ * float * float) -> struct (float * float * float * float * float * float * │
00:12:05 #35933 [verbose] > │ float * float * float)) = v0 v1 │
00:12:05 #35934 [verbose] > │ let v3 : (struct (float * float * float * float * float * float * float │
00:12:05 #35935 [verbose] > │ * float * float) -> struct (float * float * float * float * float * float * │
00:12:05 #35936 [verbose] > │ float * float * float)) = closure3() │
00:12:05 #35937 [verbose] > │ let v4 : (struct (float * float * float * float * float * float * float │
00:12:05 #35938 [verbose] > │ * float * float) -> struct (float * float * float * float * float * float * │
00:12:05 #35939 [verbose] > │ float * float * float)) = v0 v3 │
00:12:05 #35940 [verbose] > │ let v5 : UH0 = UH0_0 │
00:12:05 #35941 [verbose] > │ let v6 : int32 = 0 │
00:12:05 #35942 [verbose] > │ let v7 : UH0 = method1(v2, v5, v6) │
00:12:05 #35943 [verbose] > │ let v8 : UH1 = UH1_0 │
00:12:05 #35944 [verbose] > │ let v9 : UH1 = method4(v7, v8) │
00:12:05 #35945 [verbose] > │ let v10 : UH2 = UH2_0 │
00:12:05 #35946 [verbose] > │ let v11 : UH2 = UH2_0 │
00:12:05 #35947 [verbose] > │ let struct (v12 : UH2, v13 : UH2) = method5(v9, v10, v11) │
00:12:05 #35948 [verbose] > │ let v14 : UH2 = UH2_0 │
00:12:05 #35949 [verbose] > │ let v15 : UH2 = method6(v12, v14) │
00:12:05 #35950 [verbose] > │ let v16 : UH2 = UH2_0 │
00:12:05 #35951 [verbose] > │ let v17 : UH2 = method6(v13, v16) │
00:12:05 #35952 [verbose] > │ let v18 : UH0 = UH0_0 │
00:12:05 #35953 [verbose] > │ let v19 : int32 = 0 │
00:12:05 #35954 [verbose] > │ let v20 : UH0 = method7(v4, v18, v19) │
00:12:05 #35955 [verbose] > │ let v21 : UH1 = UH1_0 │
00:12:05 #35956 [verbose] > │ let v22 : UH1 = method8(v20, v21) │
00:12:05 #35957 [verbose] > │ let v23 : UH2 = UH2_0 │
00:12:05 #35958 [verbose] > │ let v24 : UH2 = UH2_0 │
00:12:05 #35959 [verbose] > │ let struct (v25 : UH2, v26 : UH2) = method5(v22, v23, v24) │
00:12:05 #35960 [verbose] > │ let v27 : UH2 = UH2_0 │
00:12:05 #35961 [verbose] > │ let v28 : UH2 = method6(v25, v27) │
00:12:05 #35962 [verbose] > │ let v29 : UH2 = UH2_0 │
00:12:05 #35963 [verbose] > │ let v30 : UH2 = method6(v26, v29) │
00:12:05 #35964 [verbose] > │ let v31 : (float []) = method9(v15) │
00:12:05 #35965 [verbose] > │ let v32 : (float []) = method9(v17) │
00:12:05 #35966 [verbose] > │ let v33 : (float []) = method9(v30) │
00:12:05 #35967 [verbose] > │ let v34 : string = "newtonian" │
00:12:05 #35968 [verbose] > │ let v35 : string = "relativistic" │
00:12:05 #35969 [verbose] > │ let v36 : (struct (string * (float []) * (float [])) []) = [|struct │
00:12:05 #35970 [verbose] > │ (v34, v31, v32); struct (v35, v31, v33)|] │
00:12:05 #35971 [verbose] > │ let v37 : string = "response to a constant force" │
00:12:05 #35972 [verbose] > │ let v38 : string = "time (years)" │
00:12:05 #35973 [verbose] > │ let v39 : string = "velocity (multiples of c)" │
00:12:05 #35974 [verbose] > │ struct (v37, v38, v39, v36) │
00:12:05 #35975 [verbose] > │ method0() │
00:12:05 #35976 [verbose] > │ │
00:12:05 #35977 [verbose] > │ │
00:12:05 #35978 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:05 #35979 [verbose] >
00:12:05 #35980 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:05 #35981 [verbose] > inl uniform_lorentz_force v_e v_b (st : particle_state) =
00:12:05 #35982 [verbose] > st.charge *^ (v_e ^+^ st.velocity >< v_b)
00:12:05 #35983 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\cbb2f705c8bba093264248c964704bb6a2b26b3936dbd010b7061f32030b7a6d\main.spi
00:12:05 #35984 [verbose] >
00:12:05 #35985 [verbose] > ╭─[ 349.68ms - stdout ]────────────────────────────────────────────────────────╮
00:12:05 #35986 [verbose] > │ () │
00:12:05 #35987 [verbose] > │ │
00:12:05 #35988 [verbose] > │ │
00:12:05 #35989 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:05 #35990 [verbose] >
00:12:05 #35991 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:05 #35992 [verbose] > // // test
00:12:05 #35993 [verbose] >
00:12:05 #35994 [verbose] > inl c : f64 = 299792458
00:12:05 #35995 [verbose] > inl ~method = runge_kutta_4 0.000000001
00:12:05 #35996 [verbose] > inl forces = [[ uniform_lorentz_force (zero_vec ()) (k_hat ()) ]]
00:12:05 #35997 [verbose] > inl (particle_state default_particle_state') = default_particle_state ()
00:12:05 #35998 [verbose] > inl initial_state =
00:12:05 #35999 [verbose] > particle_state { default_particle_state' with
00:12:05 #36000 [verbose] > mass = 0.000000000000000000000000001672621898
00:12:05 #36001 [verbose] > charge = 0.0000000000000000001602176621
00:12:05 #36002 [verbose] > velocity = 0.8 *^ (c *^ j_hat ())
00:12:05 #36003 [verbose] > }
00:12:05 #36004 [verbose] >
00:12:05 #36005 [verbose] > inl newton_states = solver_ method (newton_second_ps forces) initial_state
00:12:05 #36006 [verbose] > inl relativity_states = solver_ method (relativity_ps forces) initial_state
00:12:05 #36007 [verbose] >
00:12:05 #36008 [verbose] > inl newton_x, newton_y =
00:12:05 #36009 [verbose] > newton_states
00:12:05 #36010 [verbose] > >> Some
00:12:05 #36011 [verbose] > |> seq.take_while_ (fun (particle_state st) i => i < 100i32)
00:12:05 #36012 [verbose] > |> listm.map (fun (particle_state st) => st.pos_vec.x, st.pos_vec.y)
00:12:05 #36013 [verbose] > |> listm'.unzip
00:12:05 #36014 [verbose] >
00:12:05 #36015 [verbose] > inl relativity_x, relativity_y =
00:12:05 #36016 [verbose] > relativity_states
00:12:05 #36017 [verbose] > >> Some
00:12:05 #36018 [verbose] > |> seq.take_while_ (fun (particle_state st) i => i < 165i32)
00:12:05 #36019 [verbose] > |> listm.map (fun (particle_state st) => st.pos_vec.x, st.pos_vec.y)
00:12:05 #36020 [verbose] > |> listm'.unzip
00:12:05 #36021 [verbose] >
00:12:05 #36022 [verbose] > inl newton_x : a i32 _ = newton_x |> listm.toArray
00:12:05 #36023 [verbose] > inl newton_y : a i32 _ = newton_y |> listm.toArray
00:12:05 #36024 [verbose] >
00:12:05 #36025 [verbose] > inl relativity_x : a i32 _ = relativity_x |> listm.toArray
00:12:05 #36026 [verbose] > inl relativity_y : a i32 _ = relativity_y |> listm.toArray
00:12:05 #36027 [verbose] >
00:12:05 #36028 [verbose] > "proton in a 1-t magnetic field",
00:12:05 #36029 [verbose] > "x (m)",
00:12:05 #36030 [verbose] > "y (m)",
00:12:05 #36031 [verbose] > ;[[
00:12:05 #36032 [verbose] > "newtonian", newton_x, newton_y
00:12:05 #36033 [verbose] > "relativistic", relativity_x, relativity_y
00:12:05 #36034 [verbose] > ]]
00:12:05 #36035 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c1dfbb8efa990352612a1d04ae6bcab5293444527533943095ff279d9b03c39b\main.spi
00:12:05 #36036 [verbose] >
00:12:05 #36037 [verbose] > ╭─[ 496.63ms - return value ]──────────────────────────────────────────────────╮
00:12:05 #36038 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:12:05 #36039 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:12:05 #36040 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:12:05 #36041 [verbose] > │ stroke="none"/> │
00:12:05 #36042 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:12:05 #36043 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:12:05 #36044 [verbose] > │ fill="#FFFFFF"> │
00:12:05 #36045 [verbose] > │ proton in a 1-t magnetic field │
00:12:05 #36046 [verbose] > │ </text> │
00:12:05 #36047 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="58" y1="424" x2="58" │
00:12:05 #36048 [verbose] > │ y2="75"/> │
00:12:05 #36049 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:12:05 #36050 [verbose] > │ y2="75"/> │
00:12:05 #36051 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="81" y1="424" x2="81" │
00:12:05 #36052 [verbose] > │ y2="75"/> │
00:12:05 #36053 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="93" y1="424" x2="93" │
00:12:05 #36054 [verbose] > │ y2="75"/> │
00:12:05 #36055 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x... │
00:12:05 #36056 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:05 #36057 [verbose] >
00:12:05 #36058 [verbose] > ╭─[ 508.15ms - stdout ]────────────────────────────────────────────────────────╮
00:12:05 #36059 [verbose] > │ type UH0 = │
00:12:05 #36060 [verbose] > │ | UH0_0 │
00:12:05 #36061 [verbose] > │ | UH0_1 of float * float * float * float * float * float * float * float │
00:12:05 #36062 [verbose] > │ * float * UH0 │
00:12:05 #36063 [verbose] > │ and UH1 = │
00:12:05 #36064 [verbose] > │ | UH1_0 │
00:12:05 #36065 [verbose] > │ | UH1_1 of float * float * UH1 │
00:12:05 #36066 [verbose] > │ and UH2 = │
00:12:05 #36067 [verbose] > │ | UH2_0 │
00:12:05 #36068 [verbose] > │ | UH2_1 of float * UH2 │
00:12:05 #36069 [verbose] > │ let rec closure1 (v0 : (struct (float * float * float * float * float * │
00:12:05 #36070 [verbose] > │ float * float * float * float) -> struct (float * float * float * float * │
00:12:05 #36071 [verbose] > │ float * float * float * float * float))) struct (v1 : float, v2 : float, v3 │
00:12:05 #36072 [verbose] > │ : float, v4 : float, v5 : float, v6 : float, v7 : float, v8 : float, v9 : │
00:12:05 #36073 [verbose] > │ float) : struct (float * float * float * float * float * float * float * │
00:12:05 #36074 [verbose] > │ float * float) = │
00:12:05 #36075 [verbose] > │ let struct (v10 : float, v11 : float, v12 : float, v13 : float, v14 : │
00:12:05 #36076 [verbose] > │ float, v15 : float, v16 : float, v17 : float, v18 : float) = v0 struct (v1, │
00:12:05 #36077 [verbose] > │ v2, v3, v4, v5, v6, v7, v8, v9) │
00:12:05 #36078 [verbose] > │ let v19 : float = v15 * 5E-10 │
00:12:05 #36079 [verbose] > │ let v20 : float = v6 + v19 │
00:12:05 #36080 [verbose] > │ let v21 : float = 5E-10 * v12 │
00:12:05 #36081 [verbose] > │ let v22 : float = 5E-10 * v13 │
00:12:05 #36082 [verbose] > │ let v23 : float = 5E-10 * v14 │
00:12:05 #36083 [verbose] > │ let v24 : float = v3 + v21 │
00:12:05 #36084 [verbose] > │ let v25 : float = v4 + v22 │
00:12:05 #36085 [verbose] > │ let v26 : float = v5 + v23 │
00:12:05 #36086 [verbose] > │ let v27 : float = 5E-10 * v16 │
00:12:05 #36087 [verbose] > │ let v28 : float = 5E-10 * v17 │
00:12:05 #36088 [verbose] > │ let v29 : float = 5E-10 * v18 │
00:12:05 #36089 [verbose] > │ let v30 : float = v7 + v27 │
00:12:05 #36090 [verbose] > │ let v31 : float = v8 + v28 │
00:12:05 #36091 [verbose] > │ let v32 : float = v9 + v29 │
00:12:05 #36092 [verbose] > │ let struct (v33 : float, v34 : float, v35 : float, v36 : float, v37 : │
00:12:05 #36093 [verbose] > │ float, v38 : float, v39 : float, v40 : float, v41 : float) = v0 struct (v1, │
00:12:05 #36094 [verbose] > │ v2, v24, v25, v26, v20, v30, v31, v32) │
00:12:05 #36095 [verbose] > │ let v42 : float = v38 * 5E-10 │
00:12:05 #36096 [verbose] > │ let v43 : float = v6 + v42 │
00:12:05 #36097 [verbose] > │ let v44 : float = 5E-10 * v35 │
00:12:05 #36098 [verbose] > │ let v45 : float = 5E-10 * v36 │
00:12:05 #36099 [verbose] > │ let v46 : float = 5E-10 * v37 │
00:12:05 #36100 [verbose] > │ let v47 : float = v3 + v44 │
00:12:05 #36101 [verbose] > │ let v48 : float = v4 + v45 │
00:12:05 #36102 [verbose] > │ let v49 : float = v5 + v46 │
00:12:05 #36103 [verbose] > │ let v50 : float = 5E-10 * v39 │
00:12:05 #36104 [verbose] > │ let v51 : float = 5E-10 * v40 │
00:12:05 #36105 [verbose] > │ let v52 : float = 5E-10 * v41 │
00:12:05 #36106 [verbose] > │ let v53 : float = v7 + v50 │
00:12:05 #36107 [verbose] > │ let v54 : float = v8 + v51 │
00:12:05 #36108 [verbose] > │ let v55 : float = v9 + v52 │
00:12:05 #36109 [verbose] > │ let struct (v56 : float, v57 : float, v58 : float, v59 : float, v60 : │
00:12:05 #36110 [verbose] > │ float, v61 : float, v62 : float, v63 : float, v64 : float) = v0 struct (v1, │
00:12:05 #36111 [verbose] > │ v2, v47, v48, v49, v43, v53, v54, v55) │
00:12:05 #36112 [verbose] > │ let v65 : float = v61 * 1E-09 │
00:12:05 #36113 [verbose] > │ let v66 : float = v6 + v65 │
00:12:05 #36114 [verbose] > │ let v67 : float = 1E-09 * v58 │
00:12:05 #36115 [verbose] > │ let v68 : float = 1E-09 * v59 │
00:12:05 #36116 [verbose] > │ let v69 : float = 1E-09 * v60 │
00:12:05 #36117 [verbose] > │ let v70 : float = v3 + v67 │
00:12:05 #36118 [verbose] > │ let v71 : float = v4 + v68 │
00:12:05 #36119 [verbose] > │ let v72 : float = v5 + v69 │
00:12:05 #36120 [verbose] > │ let v73 : float = 1E-09 * v62 │
00:12:05 #36121 [verbose] > │ let v74 : float = 1E-09 * v63 │
00:12:05 #36122 [verbose] > │ let v75 : float = 1E-09 * v64 │
00:12:05 #36123 [verbose] > │ let v76 : float = v7 + v73 │
00:12:05 #36124 [verbose] > │ let v77 : float = v8 + v74 │
00:12:05 #36125 [verbose] > │ let v78 : float = v9 + v75 │
00:12:05 #36126 [verbose] > │ let struct (v79 : float, v80 : float, v81 : float, v82 : float, v83 : │
00:12:05 #36127 [verbose] > │ float, v84 : float, v85 : float, v86 : float, v87 : float) = v0 struct (v1, │
00:12:05 #36128 [verbose] > │ v2, v70, v71, v72, v66, v76, v77, v78) │
00:12:05 #36129 [verbose] > │ let v88 : float = v10 + v33 │
00:12:05 #36130 [verbose] > │ let v89 : float = v11 + v34 │
00:12:05 #36131 [verbose] > │ let v90 : float = v15 + v38 │
00:12:05 #36132 [verbose] > │ let v91 : float = v12 + v35 │
00:12:05 #36133 [verbose] > │ let v92 : float = v13 + v36 │
00:12:05 #36134 [verbose] > │ let v93 : float = v14 + v37 │
00:12:05 #36135 [verbose] > │ let v94 : float = v16 + v39 │
00:12:05 #36136 [verbose] > │ let v95 : float = v17 + v40 │
00:12:05 #36137 [verbose] > │ let v96 : float = v18 + v41 │
00:12:05 #36138 [verbose] > │ let v97 : float = v88 + v33 │
00:12:05 #36139 [verbose] > │ let v98 : float = v89 + v34 │
00:12:05 #36140 [verbose] > │ let v99 : float = v90 + v38 │
00:12:05 #36141 [verbose] > │ let v100 : float = v91 + v35 │
00:12:05 #36142 [verbose] > │ let v101 : float = v92 + v36 │
00:12:05 #36143 [verbose] > │ let v102 : float = v93 + v37 │
00:12:05 #36144 [verbose] > │ let v103 : float = v94 + v39 │
00:12:05 #36145 [verbose] > │ let v104 : float = v95 + v40 │
00:12:05 #36146 [verbose] > │ let v105 : float = v96 + v41 │
00:12:05 #36147 [verbose] > │ let v106 : float = v97 + v56 │
00:12:05 #36148 [verbose] > │ let v107 : float = v98 + v57 │
00:12:05 #36149 [verbose] > │ let v108 : float = v99 + v61 │
00:12:05 #36150 [verbose] > │ let v109 : float = v100 + v58 │
00:12:05 #36151 [verbose] > │ let v110 : float = v101 + v59 │
00:12:05 #36152 [verbose] > │ let v111 : float = v102 + v60 │
00:12:05 #36153 [verbose] > │ let v112 : float = v103 + v62 │
00:12:05 #36154 [verbose] > │ let v113 : float = v104 + v63 │
00:12:05 #36155 [verbose] > │ let v114 : float = v105 + v64 │
00:12:05 #36156 [verbose] > │ let v115 : float = v106 + v56 │
00:12:05 #36157 [verbose] > │ let v116 : float = v107 + v57 │
00:12:05 #36158 [verbose] > │ let v117 : float = v108 + v61 │
00:12:05 #36159 [verbose] > │ let v118 : float = v109 + v58 │
00:12:05 #36160 [verbose] > │ let v119 : float = v110 + v59 │
00:12:05 #36161 [verbose] > │ let v120 : float = v111 + v60 │
00:12:05 #36162 [verbose] > │ let v121 : float = v112 + v62 │
00:12:05 #36163 [verbose] > │ let v122 : float = v113 + v63 │
00:12:05 #36164 [verbose] > │ let v123 : float = v114 + v64 │
00:12:05 #36165 [verbose] > │ let v124 : float = v115 + v79 │
00:12:05 #36166 [verbose] > │ let v125 : float = v116 + v80 │
00:12:05 #36167 [verbose] > │ let v126 : float = v117 + v84 │
00:12:05 #36168 [verbose] > │ let v127 : float = v118 + v81 │
00:12:05 #36169 [verbose] > │ let v128 : float = v119 + v82 │
00:12:05 #36170 [verbose] > │ let v129 : float = v120 + v83 │
00:12:05 #36171 [verbose] > │ let v130 : float = v121 + v85 │
00:12:05 #36172 [verbose] > │ let v131 : float = v122 + v86 │
00:12:05 #36173 [verbose] > │ let v132 : float = v123 + v87 │
00:12:05 #36174 [verbose] > │ let v133 : float = v126 * 1.6666666666666669E-10 │
00:12:05 #36175 [verbose] > │ let v134 : float = v6 + v133 │
00:12:05 #36176 [verbose] > │ let v135 : float = 1.6666666666666669E-10 * v127 │
00:12:05 #36177 [verbose] > │ let v136 : float = 1.6666666666666669E-10 * v128 │
00:12:05 #36178 [verbose] > │ let v137 : float = 1.6666666666666669E-10 * v129 │
00:12:05 #36179 [verbose] > │ let v138 : float = v3 + v135 │
00:12:05 #36180 [verbose] > │ let v139 : float = v4 + v136 │
00:12:05 #36181 [verbose] > │ let v140 : float = v5 + v137 │
00:12:05 #36182 [verbose] > │ let v141 : float = 1.6666666666666669E-10 * v130 │
00:12:05 #36183 [verbose] > │ let v142 : float = 1.6666666666666669E-10 * v131 │
00:12:05 #36184 [verbose] > │ let v143 : float = 1.6666666666666669E-10 * v132 │
00:12:05 #36185 [verbose] > │ let v144 : float = v7 + v141 │
00:12:05 #36186 [verbose] > │ let v145 : float = v8 + v142 │
00:12:05 #36187 [verbose] > │ let v146 : float = v9 + v143 │
00:12:05 #36188 [verbose] > │ struct (v1, v2, v138, v139, v140, v134, v144, v145, v146) │
00:12:05 #36189 [verbose] > │ and closure0 () (v0 : (struct (float * float * float * float * float * float │
00:12:05 #36190 [verbose] > │ * float * float * float) -> struct (float * float * float * float * float * │
00:12:05 #36191 [verbose] > │ float * float * float * float))) : (struct (float * float * float * float * │
00:12:05 #36192 [verbose] > │ float * float * float * float * float) -> struct (float * float * float * │
00:12:05 #36193 [verbose] > │ float * float * float * float * float * float)) = │
00:12:05 #36194 [verbose] > │ closure1(v0) │
00:12:05 #36195 [verbose] > │ and closure2 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │
00:12:05 #36196 [verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float * │
00:12:05 #36197 [verbose] > │ float * float * float * float * float * float * float * float) = │
00:12:05 #36198 [verbose] > │ let v9 : float = v8 * 0.0 │
00:12:05 #36199 [verbose] > │ let v10 : float = v7 - v9 │
00:12:05 #36200 [verbose] > │ let v11 : float = v9 - v6 │
00:12:05 #36201 [verbose] > │ let v12 : float = v6 * 0.0 │
00:12:05 #36202 [verbose] > │ let v13 : float = v7 * 0.0 │
00:12:05 #36203 [verbose] > │ let v14 : float = v12 - v13 │
00:12:05 #36204 [verbose] > │ let v15 : float = v0 * v10 │
00:12:05 #36205 [verbose] > │ let v16 : float = v0 * v11 │
00:12:05 #36206 [verbose] > │ let v17 : float = v0 * v14 │
00:12:05 #36207 [verbose] > │ let v18 : float = v15 / v1 │
00:12:05 #36208 [verbose] > │ let v19 : float = v16 / v1 │
00:12:05 #36209 [verbose] > │ let v20 : float = v17 / v1 │
00:12:05 #36210 [verbose] > │ struct (0.0, 0.0, v6, v7, v8, 1.0, v18, v19, v20) │
00:12:05 #36211 [verbose] > │ and closure3 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │
00:12:05 #36212 [verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float * │
00:12:05 #36213 [verbose] > │ float * float * float * float * float * float * float * float) = │
00:12:05 #36214 [verbose] > │ let v9 : float = v8 * 0.0 │
00:12:05 #36215 [verbose] > │ let v10 : float = v7 - v9 │
00:12:05 #36216 [verbose] > │ let v11 : float = v9 - v6 │
00:12:05 #36217 [verbose] > │ let v12 : float = v6 * 0.0 │
00:12:05 #36218 [verbose] > │ let v13 : float = v7 * 0.0 │
00:12:05 #36219 [verbose] > │ let v14 : float = v12 - v13 │
00:12:05 #36220 [verbose] > │ let v15 : float = v0 * v10 │
00:12:05 #36221 [verbose] > │ let v16 : float = v0 * v11 │
00:12:05 #36222 [verbose] > │ let v17 : float = v0 * v14 │
00:12:05 #36223 [verbose] > │ let v18 : float = v6 / 299792458.0 │
00:12:05 #36224 [verbose] > │ let v19 : float = v7 / 299792458.0 │
00:12:05 #36225 [verbose] > │ let v20 : float = v8 / 299792458.0 │
00:12:05 #36226 [verbose] > │ let v21 : float = v18 * v18 │
00:12:05 #36227 [verbose] > │ let v22 : float = v19 * v19 │
00:12:05 #36228 [verbose] > │ let v23 : float = v21 + v22 │
00:12:05 #36229 [verbose] > │ let v24 : float = v20 * v20 │
00:12:05 #36230 [verbose] > │ let v25 : float = v23 + v24 │
00:12:05 #36231 [verbose] > │ let v26 : float = 1.0 - v25 │
00:12:05 #36232 [verbose] > │ let v27 : float = sqrt v26 │
00:12:05 #36233 [verbose] > │ let v28 : float = v15 * v18 │
00:12:05 #36234 [verbose] > │ let v29 : float = v16 * v19 │
00:12:05 #36235 [verbose] > │ let v30 : float = v28 + v29 │
00:12:05 #36236 [verbose] > │ let v31 : float = v17 * v20 │
00:12:05 #36237 [verbose] > │ let v32 : float = v30 + v31 │
00:12:05 #36238 [verbose] > │ let v33 : float = v32 * v18 │
00:12:05 #36239 [verbose] > │ let v34 : float = v32 * v19 │
00:12:05 #36240 [verbose] > │ let v35 : float = v32 * v20 │
00:12:05 #36241 [verbose] > │ let v36 : float = -1.0 * v33 │
00:12:05 #36242 [verbose] > │ let v37 : float = -1.0 * v34 │
00:12:05 #36243 [verbose] > │ let v38 : float = -1.0 * v35 │
00:12:05 #36244 [verbose] > │ let v39 : float = v15 + v36 │
00:12:05 #36245 [verbose] > │ let v40 : float = v16 + v37 │
00:12:05 #36246 [verbose] > │ let v41 : float = v17 + v38 │
00:12:05 #36247 [verbose] > │ let v42 : float = v27 * v39 │
00:12:05 #36248 [verbose] > │ let v43 : float = v27 * v40 │
00:12:05 #36249 [verbose] > │ let v44 : float = v27 * v41 │
00:12:05 #36250 [verbose] > │ let v45 : float = v42 / v1 │
00:12:05 #36251 [verbose] > │ let v46 : float = v43 / v1 │
00:12:05 #36252 [verbose] > │ let v47 : float = v44 / v1 │
00:12:05 #36253 [verbose] > │ struct (0.0, 0.0, v6, v7, v8, 1.0, v45, v46, v47) │
00:12:05 #36254 [verbose] > │ and method2 (v0 : (struct (float * float * float * float * float * float * │
00:12:05 #36255 [verbose] > │ float * float * float) -> struct (float * float * float * float * float * │
00:12:05 #36256 [verbose] > │ float * float * float * float)), v1 : float, v2 : float, v3 : float, v4 : │
00:12:05 #36257 [verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float, v9 : float, v10 : │
00:12:05 #36258 [verbose] > │ int32) : struct (float * float * float * float * float * float * float * │
00:12:05 #36259 [verbose] > │ float * float) = │
00:12:05 #36260 [verbose] > │ let v11 : bool = v10 <= 0 │
00:12:05 #36261 [verbose] > │ if v11 then │
00:12:05 #36262 [verbose] > │ struct (v1, v2, v3, v4, v5, v6, v7, v8, v9) │
00:12:05 #36263 [verbose] > │ else │
00:12:05 #36264 [verbose] > │ let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 │
00:12:05 #36265 [verbose] > │ : float, v17 : float, v18 : float, v19 : float, v20 : float) = v0 struct │
00:12:05 #36266 [verbose] > │ (v1, v2, v3, v4, v5, v6, v7, v8, v9) │
00:12:05 #36267 [verbose] > │ let v21 : int32 = v10 - 1 │
00:12:05 #36268 [verbose] > │ method2(v0, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21) │
00:12:05 #36269 [verbose] > │ and method3 (v0 : UH0, v1 : UH0) : UH0 = │
00:12:05 #36270 [verbose] > │ match v0 with │
00:12:05 #36271 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:05 #36272 [verbose] > │ let v12 : UH0 = UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1) │
00:12:05 #36273 [verbose] > │ method3(v11, v12) │
00:12:05 #36274 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:05 #36275 [verbose] > │ v1 │
00:12:05 #36276 [verbose] > │ and method1 (v0 : (struct (float * float * float * float * float * float * │
00:12:05 #36277 [verbose] > │ float * float * float) -> struct (float * float * float * float * float * │
00:12:05 #36278 [verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 = │
00:12:05 #36279 [verbose] > │ let v3 : float = 1.602176621E-19 │
00:12:05 #36280 [verbose] > │ let v4 : float = 1.672621898E-27 │
00:12:05 #36281 [verbose] > │ let v5 : float = 0.0 │
00:12:05 #36282 [verbose] > │ let v6 : float = 0.0 │
00:12:05 #36283 [verbose] > │ let v7 : float = 0.0 │
00:12:05 #36284 [verbose] > │ let v8 : float = 0.0 │
00:12:05 #36285 [verbose] > │ let v9 : float = 0.0 │
00:12:05 #36286 [verbose] > │ let v10 : float = 239833966.4 │
00:12:05 #36287 [verbose] > │ let v11 : float = 0.0 │
00:12:05 #36288 [verbose] > │ let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 : │
00:12:05 #36289 [verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │
00:12:05 #36290 [verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2) │
00:12:05 #36291 [verbose] > │ let v21 : bool = v2 < 100 │
00:12:05 #36292 [verbose] > │ if v21 then │
00:12:05 #36293 [verbose] > │ let v22 : UH0 = UH0_1(v12, v13, v14, v15, v16, v17, v18, v19, v20, │
00:12:05 #36294 [verbose] > │ v1) │
00:12:05 #36295 [verbose] > │ let v23 : int32 = v2 + 1 │
00:12:05 #36296 [verbose] > │ method1(v0, v22, v23) │
00:12:05 #36297 [verbose] > │ else │
00:12:05 #36298 [verbose] > │ let v25 : UH0 = UH0_0 │
00:12:05 #36299 [verbose] > │ method3(v1, v25) │
00:12:05 #36300 [verbose] > │ and method4 (v0 : UH0, v1 : UH1) : UH1 = │
00:12:05 #36301 [verbose] > │ match v0 with │
00:12:05 #36302 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:05 #36303 [verbose] > │ let v12 : UH1 = method4(v11, v1) │
00:12:05 #36304 [verbose] > │ UH1_1(v4, v5, v12) │
00:12:05 #36305 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:05 #36306 [verbose] > │ v1 │
00:12:05 #36307 [verbose] > │ and method5 (v0 : UH1, v1 : UH2, v2 : UH2) : struct (UH2 * UH2) = │
00:12:05 #36308 [verbose] > │ match v0 with │
00:12:05 #36309 [verbose] > │ | UH1_1(v3, v4, v5) -> (* Cons *) │
00:12:05 #36310 [verbose] > │ let v6 : UH2 = UH2_1(v3, v1) │
00:12:05 #36311 [verbose] > │ let v7 : UH2 = UH2_1(v4, v2) │
00:12:05 #36312 [verbose] > │ method5(v5, v6, v7) │
00:12:06 #36313 [verbose] > │ | UH1_0 -> (* Nil *) │
00:12:06 #36314 [verbose] > │ struct (v1, v2) │
00:12:06 #36315 [verbose] > │ and method6 (v0 : UH2, v1 : UH2) : UH2 = │
00:12:06 #36316 [verbose] > │ match v0 with │
00:12:06 #36317 [verbose] > │ | UH2_1(v2, v3) -> (* Cons *) │
00:12:06 #36318 [verbose] > │ let v4 : UH2 = UH2_1(v2, v1) │
00:12:06 #36319 [verbose] > │ method6(v3, v4) │
00:12:06 #36320 [verbose] > │ | UH2_0 -> (* Nil *) │
00:12:06 #36321 [verbose] > │ v1 │
00:12:06 #36322 [verbose] > │ and method7 (v0 : (struct (float * float * float * float * float * float * │
00:12:06 #36323 [verbose] > │ float * float * float) -> struct (float * float * float * float * float * │
00:12:06 #36324 [verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 = │
00:12:06 #36325 [verbose] > │ let v3 : float = 1.602176621E-19 │
00:12:06 #36326 [verbose] > │ let v4 : float = 1.672621898E-27 │
00:12:06 #36327 [verbose] > │ let v5 : float = 0.0 │
00:12:06 #36328 [verbose] > │ let v6 : float = 0.0 │
00:12:06 #36329 [verbose] > │ let v7 : float = 0.0 │
00:12:06 #36330 [verbose] > │ let v8 : float = 0.0 │
00:12:06 #36331 [verbose] > │ let v9 : float = 0.0 │
00:12:06 #36332 [verbose] > │ let v10 : float = 239833966.4 │
00:12:06 #36333 [verbose] > │ let v11 : float = 0.0 │
00:12:06 #36334 [verbose] > │ let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 : │
00:12:06 #36335 [verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │
00:12:06 #36336 [verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2) │
00:12:06 #36337 [verbose] > │ let v21 : bool = v2 < 165 │
00:12:06 #36338 [verbose] > │ if v21 then │
00:12:06 #36339 [verbose] > │ let v22 : UH0 = UH0_1(v12, v13, v14, v15, v16, v17, v18, v19, v20, │
00:12:06 #36340 [verbose] > │ v1) │
00:12:06 #36341 [verbose] > │ let v23 : int32 = v2 + 1 │
00:12:06 #36342 [verbose] > │ method7(v0, v22, v23) │
00:12:06 #36343 [verbose] > │ else │
00:12:06 #36344 [verbose] > │ let v25 : UH0 = UH0_0 │
00:12:06 #36345 [verbose] > │ method3(v1, v25) │
00:12:06 #36346 [verbose] > │ and method8 (v0 : UH0, v1 : UH1) : UH1 = │
00:12:06 #36347 [verbose] > │ match v0 with │
00:12:06 #36348 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:06 #36349 [verbose] > │ let v12 : UH1 = method8(v11, v1) │
00:12:06 #36350 [verbose] > │ UH1_1(v4, v5, v12) │
00:12:06 #36351 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:06 #36352 [verbose] > │ v1 │
00:12:06 #36353 [verbose] > │ and method10 (v0 : UH2, v1 : int32) : int32 = │
00:12:06 #36354 [verbose] > │ match v0 with │
00:12:06 #36355 [verbose] > │ | UH2_1(v2, v3) -> (* Cons *) │
00:12:06 #36356 [verbose] > │ let v4 : int32 = v1 + 1 │
00:12:06 #36357 [verbose] > │ method10(v3, v4) │
00:12:06 #36358 [verbose] > │ | UH2_0 -> (* Nil *) │
00:12:06 #36359 [verbose] > │ v1 │
00:12:06 #36360 [verbose] > │ and method11 (v0 : (float []), v1 : UH2, v2 : int32) : int32 = │
00:12:06 #36361 [verbose] > │ match v1 with │
00:12:06 #36362 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:12:06 #36363 [verbose] > │ v0.[int v2] <- v3 │
00:12:06 #36364 [verbose] > │ let v5 : int32 = v2 + 1 │
00:12:06 #36365 [verbose] > │ method11(v0, v4, v5) │
00:12:06 #36366 [verbose] > │ | UH2_0 -> (* Nil *) │
00:12:06 #36367 [verbose] > │ v2 │
00:12:06 #36368 [verbose] > │ and method9 (v0 : UH2) : (float []) = │
00:12:06 #36369 [verbose] > │ let v1 : int32 = 0 │
00:12:06 #36370 [verbose] > │ let v2 : int32 = method10(v0, v1) │
00:12:06 #36371 [verbose] > │ let v3 : (float []) = Array.zeroCreate<float> (v2) │
00:12:06 #36372 [verbose] > │ let v4 : int32 = 0 │
00:12:06 #36373 [verbose] > │ let v5 : int32 = method11(v3, v0, v4) │
00:12:06 #36374 [verbose] > │ v3 │
00:12:06 #36375 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:12:06 #36376 [verbose] > │ []) * (float [])) [])) = │
00:12:06 #36377 [verbose] > │ let v0 : ((struct (float * float * float * float * float * float * float │
00:12:06 #36378 [verbose] > │ * float * float) -> struct (float * float * float * float * float * float * │
00:12:06 #36379 [verbose] > │ float * float * float)) -> (struct (float * float * float * float * float * │
00:12:06 #36380 [verbose] > │ float * float * float * float) -> struct (float * float * float * float * │
00:12:06 #36381 [verbose] > │ float * float * float * float * float))) = closure0() │
00:12:06 #36382 [verbose] > │ let v1 : (struct (float * float * float * float * float * float * float │
00:12:06 #36383 [verbose] > │ * float * float) -> struct (float * float * float * float * float * float * │
00:12:06 #36384 [verbose] > │ float * float * float)) = closure2() │
00:12:06 #36385 [verbose] > │ let v2 : (struct (float * float * float * float * float * float * float │
00:12:06 #36386 [verbose] > │ * float * float) -> struct (float * float * float * float * float * float * │
00:12:06 #36387 [verbose] > │ float * float * float)) = v0 v1 │
00:12:06 #36388 [verbose] > │ let v3 : (struct (float * float * float * float * float * float * float │
00:12:06 #36389 [verbose] > │ * float * float) -> struct (float * float * float * float * float * float * │
00:12:06 #36390 [verbose] > │ float * float * float)) = closure3() │
00:12:06 #36391 [verbose] > │ let v4 : (struct (float * float * float * float * float * float * float │
00:12:06 #36392 [verbose] > │ * float * float) -> struct (float * float * float * float * float * float * │
00:12:06 #36393 [verbose] > │ float * float * float)) = v0 v3 │
00:12:06 #36394 [verbose] > │ let v5 : UH0 = UH0_0 │
00:12:06 #36395 [verbose] > │ let v6 : int32 = 0 │
00:12:06 #36396 [verbose] > │ let v7 : UH0 = method1(v2, v5, v6) │
00:12:06 #36397 [verbose] > │ let v8 : UH1 = UH1_0 │
00:12:06 #36398 [verbose] > │ let v9 : UH1 = method4(v7, v8) │
00:12:06 #36399 [verbose] > │ let v10 : UH2 = UH2_0 │
00:12:06 #36400 [verbose] > │ let v11 : UH2 = UH2_0 │
00:12:06 #36401 [verbose] > │ let struct (v12 : UH2, v13 : UH2) = method5(v9, v10, v11) │
00:12:06 #36402 [verbose] > │ let v14 : UH2 = UH2_0 │
00:12:06 #36403 [verbose] > │ let v15 : UH2 = method6(v12, v14) │
00:12:06 #36404 [verbose] > │ let v16 : UH2 = UH2_0 │
00:12:06 #36405 [verbose] > │ let v17 : UH2 = method6(v13, v16) │
00:12:06 #36406 [verbose] > │ let v18 : UH0 = UH0_0 │
00:12:06 #36407 [verbose] > │ let v19 : int32 = 0 │
00:12:06 #36408 [verbose] > │ let v20 : UH0 = method7(v4, v18, v19) │
00:12:06 #36409 [verbose] > │ let v21 : UH1 = UH1_0 │
00:12:06 #36410 [verbose] > │ let v22 : UH1 = method8(v20, v21) │
00:12:06 #36411 [verbose] > │ let v23 : UH2 = UH2_0 │
00:12:06 #36412 [verbose] > │ let v24 : UH2 = UH2_0 │
00:12:06 #36413 [verbose] > │ let struct (v25 : UH2, v26 : UH2) = method5(v22, v23, v24) │
00:12:06 #36414 [verbose] > │ let v27 : UH2 = UH2_0 │
00:12:06 #36415 [verbose] > │ let v28 : UH2 = method6(v25, v27) │
00:12:06 #36416 [verbose] > │ let v29 : UH2 = UH2_0 │
00:12:06 #36417 [verbose] > │ let v30 : UH2 = method6(v26, v29) │
00:12:06 #36418 [verbose] > │ let v31 : (float []) = method9(v15) │
00:12:06 #36419 [verbose] > │ let v32 : (float []) = method9(v17) │
00:12:06 #36420 [verbose] > │ let v33 : (float []) = method9(v28) │
00:12:06 #36421 [verbose] > │ let v34 : (float []) = method9(v30) │
00:12:06 #36422 [verbose] > │ let v35 : string = "newtonian" │
00:12:06 #36423 [verbose] > │ let v36 : string = "relativistic" │
00:12:06 #36424 [verbose] > │ let v37 : (struct (string * (float []) * (float [])) []) = [|struct │
00:12:06 #36425 [verbose] > │ (v35, v31, v32); struct (v36, v33, v34)|] │
00:12:06 #36426 [verbose] > │ let v38 : string = "proton in a 1-t magnetic field" │
00:12:06 #36427 [verbose] > │ let v39 : string = "x (m)" │
00:12:06 #36428 [verbose] > │ let v40 : string = "y (m)" │
00:12:06 #36429 [verbose] > │ struct (v38, v39, v40, v37) │
00:12:06 #36430 [verbose] > │ method0() │
00:12:06 #36431 [verbose] > │ │
00:12:06 #36432 [verbose] > │ │
00:12:06 #36433 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:06 #36434 [verbose] >
00:12:06 #36435 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:12:06 #36436 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:12:06 #36437 [verbose] > │ ### system kinetic energy versus time 1 │
00:12:06 #36438 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:06 #36439 [verbose] >
00:12:06 #36440 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:06 #36441 [verbose] > // // test
00:12:06 #36442 [verbose] >
00:12:06 #36443 [verbose] > inl central_force f (particle_state st1) (particle_state st2) =
00:12:06 #36444 [verbose] > inl r1 = st1.pos_vec
00:12:06 #36445 [verbose] > inl r2 = st2.pos_vec
00:12:06 #36446 [verbose] > inl r21 = r2 ^-^ r1
00:12:06 #36447 [verbose] > inl r21mag = magnitude r21
00:12:06 #36448 [verbose] > f r21mag *^ r21 ^/ r21mag
00:12:06 #36449 [verbose] >
00:12:06 #36450 [verbose] > inl billiard_force k re =
00:12:06 #36451 [verbose] > inl f r =
00:12:06 #36452 [verbose] > if r >= re
00:12:06 #36453 [verbose] > then 0
00:12:06 #36454 [verbose] > else -k * (r - re)
00:12:06 #36455 [verbose] > central_force f
00:12:06 #36456 [verbose] >
00:12:06 #36457 [verbose] > type force_vector = vec
00:12:06 #36458 [verbose] > type two_body_force = particle_state -> particle_state -> force_vector
00:12:06 #36459 [verbose] >
00:12:06 #36460 [verbose] > union force =
00:12:06 #36461 [verbose] > | ExternalForce : i32 * one_body_force
00:12:06 #36462 [verbose] > | InternalForce : i32 * i32 * two_body_force
00:12:06 #36463 [verbose] >
00:12:06 #36464 [verbose] > nominal multi_particle_state = list particle_state
00:12:06 #36465 [verbose] >
00:12:06 #36466 [verbose] > nominal d_multi_particle_state = list d_particle_state
00:12:06 #36467 [verbose] >
00:12:06 #36468 [verbose] > inl force_on n sts force =
00:12:06 #36469 [verbose] > match force with
00:12:06 #36470 [verbose] > | ExternalForce (n0, f_one_body) =>
00:12:06 #36471 [verbose] > if n = n0
00:12:06 #36472 [verbose] > then f_one_body
00:12:06 #36473 [verbose] > else fun _ => zero_vec ()
00:12:06 #36474 [verbose] > | InternalForce (n0, n1, f_two_body) =>
00:12:06 #36475 [verbose] > if n = n0
00:12:06 #36476 [verbose] > then f_two_body (sts |> listm'.item n1)
00:12:06 #36477 [verbose] > elif n = n1
00:12:06 #36478 [verbose] > then f_two_body (sts |> listm'.item n0)
00:12:06 #36479 [verbose] > else fun _ => zero_vec ()
00:12:06 #36480 [verbose] >
00:12:06 #36481 [verbose] > inl forces_on n (multi_particle_state sts) fs =
00:12:06 #36482 [verbose] > fs |> listm.map (force_on n sts)
00:12:06 #36483 [verbose] >
00:12:06 #36484 [verbose] > inl newton_second_mps fs (multi_particle_state sts) : d_multi_particle_state =
00:12:06 #36485 [verbose] > inl deriv (n, st) =
00:12:06 #36486 [verbose] > newton_second_ps (forces_on n (multi_particle_state sts) fs) st
00:12:06 #36487 [verbose] > sts |> listm'.indexed |> listm.map deriv |> d_multi_particle_state
00:12:06 #36488 [verbose] >
00:12:06 #36489 [verbose] > instance (+++) d_multi_particle_state = fun (d_multi_particle_state dsts1)
00:12:06 #36490 [verbose] > (d_multi_particle_state dsts2) =>
00:12:06 #36491 [verbose] > d_multi_particle_state (listm'.zip_with_ (+++) dsts1 dsts2)
00:12:06 #36492 [verbose] >
00:12:06 #36493 [verbose] > instance scale d_multi_particle_state = fun w (d_multi_particle_state dsts) =>
00:12:06 #36494 [verbose] > d_multi_particle_state (dsts |> listm.map (scale w))
00:12:06 #36495 [verbose] >
00:12:06 #36496 [verbose] > instance shift multi_particle_state = fun dt dsts (multi_particle_state sts) =>
00:12:06 #36497 [verbose] > inl (d_multi_particle_state dsts) =
00:12:06 #36498 [verbose] > real
00:12:06 #36499 [verbose] > match dsts with
00:12:06 #36500 [verbose] > | d_multi_particle_state _ => dsts
00:12:06 #36501 [verbose] > listm'.zip_with_ (shift dt) dsts sts |> multi_particle_state
00:12:06 #36502 [verbose] >
00:12:06 #36503 [verbose] > inl euler_cromer_mps dt : numerical_method multi_particle_state
00:12:06 #36504 [verbose] > d_multi_particle_state =
00:12:06 #36505 [verbose] > fun deriv mpst0 =>
00:12:06 #36506 [verbose] > inl mpst1 = euler dt deriv mpst0
00:12:06 #36507 [verbose] > inl (multi_particle_state sts0) = mpst0
00:12:06 #36508 [verbose] > inl (multi_particle_state sts1) = mpst1
00:12:06 #36509 [verbose] > sts1
00:12:06 #36510 [verbose] > |> listm'.zip_ sts0
00:12:06 #36511 [verbose] > |> listm.map (fun ((particle_state st0), (particle_state st1)) =>
00:12:06 #36512 [verbose] > particle_state {
00:12:06 #36513 [verbose] > st1 with
00:12:06 #36514 [verbose] > pos_vec = st0.pos_vec ^+^ st1.velocity ^* dt
00:12:06 #36515 [verbose] > }
00:12:06 #36516 [verbose] > )
00:12:06 #36517 [verbose] > |> multi_particle_state
00:12:06 #36518 [verbose] >
00:12:06 #36519 [verbose] > inl update_mps (method : numerical_method multi_particle_state
00:12:06 #36520 [verbose] > d_multi_particle_state) =
00:12:06 #36521 [verbose] > newton_second_mps >> method
00:12:06 #36522 [verbose] >
00:12:06 #36523 [verbose] > inl states_mps (method : numerical_method multi_particle_state
00:12:06 #36524 [verbose] > d_multi_particle_state) =
00:12:06 #36525 [verbose] > newton_second_mps >> method >> seq.iterate_
00:12:06 #36526 [verbose] >
00:12:06 #36527 [verbose] >
00:12:06 #36528 [verbose] > inl kinetic_energy (particle_state st) =
00:12:06 #36529 [verbose] > inl m = st.mass
00:12:06 #36530 [verbose] > inl v = magnitude st.velocity
00:12:06 #36531 [verbose] > 0.5 * m * v ** 2
00:12:06 #36532 [verbose] >
00:12:06 #36533 [verbose] > inl system_ke (multi_particle_state sts) =
00:12:06 #36534 [verbose] > sts |> listm.map kinetic_energy |> listm'.sum
00:12:06 #36535 [verbose] >
00:12:06 #36536 [verbose] > inl linear_spring_pe k re (particle_state st1) (particle_state st2) =
00:12:06 #36537 [verbose] > inl r1 = st1.pos_vec
00:12:06 #36538 [verbose] > inl r2 = st2.pos_vec
00:12:06 #36539 [verbose] > inl r21 = r2 ^-^ r1
00:12:06 #36540 [verbose] > inl r21mag = magnitude r21
00:12:06 #36541 [verbose] > k * (r21mag - re) ** 2 / 2
00:12:06 #36542 [verbose] >
00:12:06 #36543 [verbose] > inl earth_surface_gravity_pe (particle_state st) =
00:12:06 #36544 [verbose] > inl g = 9.80665
00:12:06 #36545 [verbose] > inl m = st.mass
00:12:06 #36546 [verbose] > inl z = st.pos_vec.z
00:12:06 #36547 [verbose] > m * g * z
00:12:06 #36548 [verbose] >
00:12:06 #36549 [verbose] > inl two_springs_pe (multi_particle_state sts) =
00:12:06 #36550 [verbose] > inl st0 = sts |> listm'.item 0i32
00:12:06 #36551 [verbose] > inl st1 = sts |> listm'.item 1i32
00:12:06 #36552 [verbose] > linear_spring_pe 100 0.5 (default_particle_state ()) st0
00:12:06 #36553 [verbose] > + linear_spring_pe 100 0.5 st0 st1
00:12:06 #36554 [verbose] > + earth_surface_gravity_pe st0
00:12:06 #36555 [verbose] > + earth_surface_gravity_pe st1
00:12:06 #36556 [verbose] >
00:12:06 #36557 [verbose] > inl two_springs_me mpst =
00:12:06 #36558 [verbose] > system_ke mpst + two_springs_pe mpst
00:12:06 #36559 [verbose] >
00:12:06 #36560 [verbose] > inl ball_radius () = 0.03
00:12:06 #36561 [verbose] >
00:12:06 #36562 [verbose] > inl billiard_forces k =
00:12:06 #36563 [verbose] > [[ InternalForce (0, 1, billiard_force k (2 * ball_radius ())) ]]
00:12:06 #36564 [verbose] >
00:12:06 #36565 [verbose] > inl billiard_update n_method k dt =
00:12:06 #36566 [verbose] > update_mps (n_method dt) (billiard_forces k)
00:12:06 #36567 [verbose] >
00:12:06 #36568 [verbose] > inl billiard_initial () =
00:12:06 #36569 [verbose] > inl ball_mass = 0.160
00:12:06 #36570 [verbose] > inl (particle_state default_particle_state') = default_particle_state ()
00:12:06 #36571 [verbose] > multi_particle_state [[
00:12:06 #36572 [verbose] > particle_state {
00:12:06 #36573 [verbose] > default_particle_state' with
00:12:06 #36574 [verbose] > mass = ball_mass
00:12:06 #36575 [verbose] > pos_vec = zero_vec ()
00:12:06 #36576 [verbose] > velocity = 0.2 *^ i_hat ()
00:12:06 #36577 [verbose] > }
00:12:06 #36578 [verbose] > particle_state {
00:12:06 #36579 [verbose] > default_particle_state' with
00:12:06 #36580 [verbose] > mass = ball_mass
00:12:06 #36581 [verbose] > pos_vec = i_hat () ^+^ 0.02 *^ j_hat ()
00:12:06 #36582 [verbose] > velocity = zero_vec ()
00:12:06 #36583 [verbose] > }
00:12:06 #36584 [verbose] > ]]
00:12:06 #36585 [verbose] >
00:12:06 #36586 [verbose] > inl billiard_states ~n_method k dt =
00:12:06 #36587 [verbose] > states_mps (n_method dt) (billiard_forces k) (billiard_initial ())
00:12:06 #36588 [verbose] >
00:12:06 #36589 [verbose] > inl billiard_states_finite n_method k dt =
00:12:06 #36590 [verbose] > billiard_states n_method k dt
00:12:06 #36591 [verbose] > >> Some
00:12:06 #36592 [verbose] > |> seq.take_while_ (fun (multi_particle_state mpst) (_ : i32) =>
00:12:06 #36593 [verbose] > (mpst |> listm'.item 0i32).time <= 10
00:12:06 #36594 [verbose] > )
00:12:06 #36595 [verbose] >
00:12:06 #36596 [verbose] > inl momentum (particle_state st) =
00:12:06 #36597 [verbose] > inl m = st.mass
00:12:06 #36598 [verbose] > inl v = st.velocity
00:12:06 #36599 [verbose] > m *^ v
00:12:06 #36600 [verbose] >
00:12:06 #36601 [verbose] > inl system_p (multi_particle_state sts) =
00:12:06 #36602 [verbose] > sts |> listm.map momentum |> sum_vec
00:12:06 #36603 [verbose] >
00:12:06 #36604 [verbose] >
00:12:06 #36605 [verbose] > inl time_ke_ec_x, time_ke_ec_y =
00:12:06 #36606 [verbose] > billiard_states_finite euler_cromer_mps 30 0.03
00:12:06 #36607 [verbose] > |> listm.map (fun (multi_particle_state mpst) =>
00:12:06 #36608 [verbose] > (mpst |> listm'.item 0i32).time, system_ke (multi_particle_state mpst)
00:12:06 #36609 [verbose] > )
00:12:06 #36610 [verbose] > |> listm'.unzip
00:12:06 #36611 [verbose] >
00:12:06 #36612 [verbose] > inl time_ke_rk4_x, time_ke_rk4_y =
00:12:06 #36613 [verbose] > billiard_states_finite runge_kutta_4 30 0.03
00:12:06 #36614 [verbose] > |> listm.map (fun (multi_particle_state mpst) =>
00:12:06 #36615 [verbose] > (mpst |> listm'.item 0i32).time, system_ke (multi_particle_state mpst)
00:12:06 #36616 [verbose] > )
00:12:06 #36617 [verbose] > |> listm'.unzip
00:12:06 #36618 [verbose] >
00:12:06 #36619 [verbose] > inl time_ke_ec_x : a i32 _ = time_ke_ec_x |> listm.toArray
00:12:06 #36620 [verbose] > inl time_ke_ec_y : a i32 _ = time_ke_ec_y |> listm.toArray
00:12:06 #36621 [verbose] >
00:12:06 #36622 [verbose] > inl time_ke_rk4_x : a i32 _ = time_ke_rk4_x |> listm.toArray
00:12:06 #36623 [verbose] > inl time_ke_rk4_y : a i32 _ = time_ke_rk4_y |> listm.toArray
00:12:06 #36624 [verbose] >
00:12:06 #36625 [verbose] > "system kinetic energy versus time",
00:12:06 #36626 [verbose] > "time (s)",
00:12:06 #36627 [verbose] > "system kinetic energy (j)",
00:12:06 #36628 [verbose] > ;[[
00:12:06 #36629 [verbose] > "euler-cromer", time_ke_ec_x, time_ke_ec_y
00:12:06 #36630 [verbose] > "runge-kutta 4", time_ke_rk4_x, time_ke_rk4_y
00:12:06 #36631 [verbose] > ]]
00:12:06 #36632 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\47ae9c71253f23499704f357aa2cb3417cc1fc6aa2858a214b8da4a9208e65ca\main.spi
00:12:07 #36633 [verbose] >
00:12:07 #36634 [verbose] > ╭─[ 1.71s - return value ]─────────────────────────────────────────────────────╮
00:12:07 #36635 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:12:07 #36636 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:12:07 #36637 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:12:07 #36638 [verbose] > │ stroke="none"/> │
00:12:07 #36639 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:12:07 #36640 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:12:07 #36641 [verbose] > │ fill="#FFFFFF"> │
00:12:07 #36642 [verbose] > │ system kinetic energy versus time │
00:12:07 #36643 [verbose] > │ </text> │
00:12:07 #36644 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │
00:12:07 #36645 [verbose] > │ y2="75"/> │
00:12:07 #36646 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:12:07 #36647 [verbose] > │ y2="75"/> │
00:12:07 #36648 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │
00:12:07 #36649 [verbose] > │ y2="75"/> │
00:12:07 #36650 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │
00:12:07 #36651 [verbose] > │ y2="75"/> │
00:12:07 #36652 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1... │
00:12:07 #36653 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:07 #36654 [verbose] >
00:12:07 #36655 [verbose] > ╭─[ 1.72s - stdout ]───────────────────────────────────────────────────────────╮
00:12:07 #36656 [verbose] > │ type UH0 = │
00:12:07 #36657 [verbose] > │ | UH0_0 │
00:12:07 #36658 [verbose] > │ | UH0_1 of float * float * float * float * float * float * float * float │
00:12:07 #36659 [verbose] > │ * float * UH0 │
00:12:07 #36660 [verbose] > │ and UH1 = │
00:12:07 #36661 [verbose] > │ | UH1_0 │
00:12:07 #36662 [verbose] > │ | UH1_1 of float * float * float * float * float * float * float * float │
00:12:07 #36663 [verbose] > │ * float * UH1 │
00:12:07 #36664 [verbose] > │ and UH2 = │
00:12:07 #36665 [verbose] > │ | UH2_0 │
00:12:07 #36666 [verbose] > │ | UH2_1 of float * float * float * float * float * float * float * float │
00:12:07 #36667 [verbose] > │ * float * float * float * float * float * float * float * float * float * │
00:12:07 #36668 [verbose] > │ float * UH2 │
00:12:07 #36669 [verbose] > │ and UH3 = │
00:12:07 #36670 [verbose] > │ | UH3_0 │
00:12:07 #36671 [verbose] > │ | UH3_1 of int32 * float * float * float * float * float * float * float │
00:12:07 #36672 [verbose] > │ * float * float * UH3 │
00:12:07 #36673 [verbose] > │ and [<Struct>] US0 = │
00:12:07 #36674 [verbose] > │ | US0_0 of f0_0 : float * f0_1 : float * f0_2 : float * f0_3 : float * │
00:12:07 #36675 [verbose] > │ f0_4 : float * f0_5 : float * f0_6 : float * f0_7 : float * f0_8 : float │
00:12:07 #36676 [verbose] > │ | US0_1 │
00:12:07 #36677 [verbose] > │ and UH4 = │
00:12:07 #36678 [verbose] > │ | UH4_0 │
00:12:07 #36679 [verbose] > │ | UH4_1 of UH0 * UH4 │
00:12:07 #36680 [verbose] > │ and UH5 = │
00:12:07 #36681 [verbose] > │ | UH5_0 │
00:12:07 #36682 [verbose] > │ | UH5_1 of float * float * UH5 │
00:12:07 #36683 [verbose] > │ and UH6 = │
00:12:07 #36684 [verbose] > │ | UH6_0 │
00:12:07 #36685 [verbose] > │ | UH6_1 of float * UH6 │
00:12:07 #36686 [verbose] > │ let rec method2 (v0 : UH0, v1 : UH0) : UH0 = │
00:12:07 #36687 [verbose] > │ match v0 with │
00:12:07 #36688 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:07 #36689 [verbose] > │ let v12 : UH0 = UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1) │
00:12:07 #36690 [verbose] > │ method2(v11, v12) │
00:12:07 #36691 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:07 #36692 [verbose] > │ v1 │
00:12:07 #36693 [verbose] > │ and method1 (v0 : float, v1 : UH0, v2 : UH1, v3 : UH0) : UH0 = │
00:12:07 #36694 [verbose] > │ match v2 with │
00:12:07 #36695 [verbose] > │ | UH1_1(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* Cons *) │
00:12:07 #36696 [verbose] > │ match v3 with │
00:12:07 #36697 [verbose] > │ | UH0_1(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (* Cons │
00:12:07 #36698 [verbose] > │ *) │
00:12:07 #36699 [verbose] > │ let v24 : float = v9 * v0 │
00:12:07 #36700 [verbose] > │ let v25 : float = v19 + v24 │
00:12:07 #36701 [verbose] > │ let v26 : float = v0 * v6 │
00:12:07 #36702 [verbose] > │ let v27 : float = v0 * v7 │
00:12:07 #36703 [verbose] > │ let v28 : float = v0 * v8 │
00:12:07 #36704 [verbose] > │ let v29 : float = v16 + v26 │
00:12:07 #36705 [verbose] > │ let v30 : float = v17 + v27 │
00:12:07 #36706 [verbose] > │ let v31 : float = v18 + v28 │
00:12:07 #36707 [verbose] > │ let v32 : float = v0 * v10 │
00:12:07 #36708 [verbose] > │ let v33 : float = v0 * v11 │
00:12:07 #36709 [verbose] > │ let v34 : float = v0 * v12 │
00:12:07 #36710 [verbose] > │ let v35 : float = v20 + v32 │
00:12:07 #36711 [verbose] > │ let v36 : float = v21 + v33 │
00:12:07 #36712 [verbose] > │ let v37 : float = v22 + v34 │
00:12:07 #36713 [verbose] > │ let v38 : UH0 = UH0_1(v14, v15, v29, v30, v31, v25, v35, v36, │
00:12:07 #36714 [verbose] > │ v37, v1) │
00:12:07 #36715 [verbose] > │ method1(v0, v38, v13, v23) │
00:12:07 #36716 [verbose] > │ | _ -> │
00:12:07 #36717 [verbose] > │ let v40 : UH0 = UH0_0 │
00:12:07 #36718 [verbose] > │ method2(v1, v40) │
00:12:07 #36719 [verbose] > │ | _ -> │
00:12:07 #36720 [verbose] > │ let v43 : UH0 = UH0_0 │
00:12:07 #36721 [verbose] > │ method2(v1, v43) │
00:12:07 #36722 [verbose] > │ and method4 (v0 : UH2, v1 : UH2) : UH2 = │
00:12:07 #36723 [verbose] > │ match v0 with │
00:12:07 #36724 [verbose] > │ | UH2_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, │
00:12:07 #36725 [verbose] > │ v16, v17, v18, v19, v20) -> (* Cons *) │
00:12:07 #36726 [verbose] > │ let v21 : UH2 = UH2_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, │
00:12:07 #36727 [verbose] > │ v13, v14, v15, v16, v17, v18, v19, v1) │
00:12:07 #36728 [verbose] > │ method4(v20, v21) │
00:12:07 #36729 [verbose] > │ | UH2_0 -> (* Nil *) │
00:12:07 #36730 [verbose] > │ v1 │
00:12:07 #36731 [verbose] > │ and method3 (v0 : UH2, v1 : UH0, v2 : UH0) : UH2 = │
00:12:07 #36732 [verbose] > │ match v1 with │
00:12:07 #36733 [verbose] > │ | UH0_1(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *) │
00:12:07 #36734 [verbose] > │ match v2 with │
00:12:07 #36735 [verbose] > │ | UH0_1(v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) -> (* Cons │
00:12:07 #36736 [verbose] > │ *) │
00:12:07 #36737 [verbose] > │ let v23 : UH2 = UH2_1(v3, v4, v5, v6, v7, v8, v9, v10, v11, v13, │
00:12:07 #36738 [verbose] > │ v14, v15, v16, v17, v18, v19, v20, v21, v0) │
00:12:07 #36739 [verbose] > │ method3(v23, v12, v22) │
00:12:07 #36740 [verbose] > │ | _ -> │
00:12:07 #36741 [verbose] > │ let v25 : UH2 = UH2_0 │
00:12:07 #36742 [verbose] > │ method4(v0, v25) │
00:12:07 #36743 [verbose] > │ | _ -> │
00:12:07 #36744 [verbose] > │ let v28 : UH2 = UH2_0 │
00:12:07 #36745 [verbose] > │ method4(v0, v28) │
00:12:07 #36746 [verbose] > │ and method5 (v0 : float, v1 : UH2, v2 : UH0) : UH0 = │
00:12:07 #36747 [verbose] > │ match v1 with │
00:12:07 #36748 [verbose] > │ | UH2_1(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, │
00:12:07 #36749 [verbose] > │ v17, v18, v19, v20, v21) -> (* Cons *) │
00:12:07 #36750 [verbose] > │ let v22 : UH0 = method5(v0, v21, v2) │
00:12:07 #36751 [verbose] > │ let v23 : float = v0 * v18 │
00:12:07 #36752 [verbose] > │ let v24 : float = v0 * v19 │
00:12:07 #36753 [verbose] > │ let v25 : float = v0 * v20 │
00:12:07 #36754 [verbose] > │ let v26 : float = v5 + v23 │
00:12:07 #36755 [verbose] > │ let v27 : float = v6 + v24 │
00:12:07 #36756 [verbose] > │ let v28 : float = v7 + v25 │
00:12:07 #36757 [verbose] > │ UH0_1(v12, v13, v26, v27, v28, v17, v18, v19, v20, v22) │
00:12:07 #36758 [verbose] > │ | UH2_0 -> (* Nil *) │
00:12:07 #36759 [verbose] > │ v2 │
00:12:07 #36760 [verbose] > │ and closure2 (v0 : float, v1 : (UH0 -> UH1)) (v2 : UH0) : UH0 = │
00:12:07 #36761 [verbose] > │ let v3 : UH1 = v1 v2 │
00:12:07 #36762 [verbose] > │ let v4 : UH0 = UH0_0 │
00:12:07 #36763 [verbose] > │ let v5 : UH0 = method1(v0, v4, v3, v2) │
00:12:07 #36764 [verbose] > │ let v6 : UH2 = UH2_0 │
00:12:07 #36765 [verbose] > │ let v7 : UH2 = method3(v6, v2, v5) │
00:12:07 #36766 [verbose] > │ let v8 : UH0 = UH0_0 │
00:12:07 #36767 [verbose] > │ let v9 : UH0 = method5(v0, v7, v8) │
00:12:07 #36768 [verbose] > │ v9 │
00:12:07 #36769 [verbose] > │ and closure1 (v0 : float) (v1 : (UH0 -> UH1)) : (UH0 -> UH0) = │
00:12:07 #36770 [verbose] > │ closure2(v0, v1) │
00:12:07 #36771 [verbose] > │ and closure0 () (v0 : float) : ((UH0 -> UH1) -> (UH0 -> UH0)) = │
00:12:07 #36772 [verbose] > │ closure1(v0) │
00:12:07 #36773 [verbose] > │ and method6 (v0 : UH0, v1 : UH3, v2 : int32) : struct (UH3 * int32) = │
00:12:07 #36774 [verbose] > │ match v0 with │
00:12:07 #36775 [verbose] > │ | UH0_1(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *) │
00:12:07 #36776 [verbose] > │ let v13 : int32 = v2 + 1 │
00:12:07 #36777 [verbose] > │ let v14 : UH3 = UH3_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v1) │
00:12:07 #36778 [verbose] > │ method6(v12, v14, v13) │
00:12:07 #36779 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:07 #36780 [verbose] > │ struct (v1, v2) │
00:12:07 #36781 [verbose] > │ and method7 (v0 : UH3, v1 : UH3) : UH3 = │
00:12:07 #36782 [verbose] > │ match v0 with │
00:12:07 #36783 [verbose] > │ | UH3_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *) │
00:12:07 #36784 [verbose] > │ let v13 : UH3 = UH3_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v1) │
00:12:07 #36785 [verbose] > │ method7(v12, v13) │
00:12:07 #36786 [verbose] > │ | UH3_0 -> (* Nil *) │
00:12:07 #36787 [verbose] > │ v1 │
00:12:07 #36788 [verbose] > │ and closure4 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, v5 │
00:12:07 #36789 [verbose] > │ : float, v6 : float, v7 : float, v8 : float) struct (v9 : float, v10 : │
00:12:07 #36790 [verbose] > │ float, v11 : float, v12 : float, v13 : float, v14 : float, v15 : float, v16 │
00:12:07 #36791 [verbose] > │ : float, v17 : float) : struct (float * float * float) = │
00:12:07 #36792 [verbose] > │ let v18 : float = -1.0 * v2 │
00:12:07 #36793 [verbose] > │ let v19 : float = -1.0 * v3 │
00:12:07 #36794 [verbose] > │ let v20 : float = -1.0 * v4 │
00:12:07 #36795 [verbose] > │ let v21 : float = v11 + v18 │
00:12:07 #36796 [verbose] > │ let v22 : float = v12 + v19 │
00:12:07 #36797 [verbose] > │ let v23 : float = v13 + v20 │
00:12:07 #36798 [verbose] > │ let v24 : float = v21 * v21 │
00:12:07 #36799 [verbose] > │ let v25 : float = v22 * v22 │
00:12:07 #36800 [verbose] > │ let v26 : float = v24 + v25 │
00:12:07 #36801 [verbose] > │ let v27 : float = v23 * v23 │
00:12:07 #36802 [verbose] > │ let v28 : float = v26 + v27 │
00:12:07 #36803 [verbose] > │ let v29 : float = sqrt v28 │
00:12:07 #36804 [verbose] > │ let v30 : bool = v29 >= 0.06 │
00:12:07 #36805 [verbose] > │ let v33 : float = │
00:12:07 #36806 [verbose] > │ if v30 then │
00:12:07 #36807 [verbose] > │ 0.0 │
00:12:07 #36808 [verbose] > │ else │
00:12:07 #36809 [verbose] > │ let v31 : float = v29 - 0.06 │
00:12:07 #36810 [verbose] > │ let v32 : float = -30.0 * v31 │
00:12:07 #36811 [verbose] > │ v32 │
00:12:07 #36812 [verbose] > │ let v34 : float = v33 * v21 │
00:12:07 #36813 [verbose] > │ let v35 : float = v33 * v22 │
00:12:07 #36814 [verbose] > │ let v36 : float = v33 * v23 │
00:12:07 #36815 [verbose] > │ let v37 : float = v34 / v29 │
00:12:07 #36816 [verbose] > │ let v38 : float = v35 / v29 │
00:12:07 #36817 [verbose] > │ let v39 : float = v36 / v29 │
00:12:07 #36818 [verbose] > │ struct (v37, v38, v39) │
00:12:07 #36819 [verbose] > │ and closure5 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │
00:12:07 #36820 [verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float * │
00:12:07 #36821 [verbose] > │ float * float) = │
00:12:07 #36822 [verbose] > │ struct (0.0, 0.0, 0.0) │
00:12:07 #36823 [verbose] > │ and method8 (v0 : UH0, v1 : UH3, v2 : UH1) : UH1 = │
00:12:07 #36824 [verbose] > │ match v1 with │
00:12:07 #36825 [verbose] > │ | UH3_1(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* Cons *) │
00:12:07 #36826 [verbose] > │ let v14 : UH1 = method8(v0, v13, v2) │
00:12:07 #36827 [verbose] > │ let v15 : bool = v3 = 0 │
00:12:07 #36828 [verbose] > │ let v134 : (struct (float * float * float * float * float * float * │
00:12:07 #36829 [verbose] > │ float * float * float) -> struct (float * float * float)) = │
00:12:07 #36830 [verbose] > │ if v15 then │
00:12:07 #36831 [verbose] > │ let v42 : US0 = │
00:12:07 #36832 [verbose] > │ match v0 with │
00:12:07 #36833 [verbose] > │ | UH0_1(v16, v17, v18, v19, v20, v21, v22, v23, v24, │
00:12:07 #36834 [verbose] > │ v25) -> (* Cons *) │
00:12:07 #36835 [verbose] > │ match v25 with │
00:12:07 #36836 [verbose] > │ | UH0_1(v26, v27, v28, v29, v30, v31, v32, v33, v34, │
00:12:07 #36837 [verbose] > │ v35) -> (* Cons *) │
00:12:07 #36838 [verbose] > │ US0_0(v26, v27, v28, v29, v30, v31, v32, v33, │
00:12:07 #36839 [verbose] > │ v34) │
00:12:07 #36840 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:07 #36841 [verbose] > │ US0_1 │
00:12:07 #36842 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:07 #36843 [verbose] > │ US0_1 │
00:12:07 #36844 [verbose] > │ let struct (v70 : float, v71 : float, v72 : float, v73 : │
00:12:07 #36845 [verbose] > │ float, v74 : float, v75 : float, v76 : float, v77 : float, v78 : float) = │
00:12:07 #36846 [verbose] > │ match v42 with │
00:12:07 #36847 [verbose] > │ | US0_1 -> (* None *) │
00:12:07 #36848 [verbose] > │ failwith<struct (float * float * float * float * │
00:12:07 #36849 [verbose] > │ float * float * float * float * float)> "Option does not have a value." │
00:12:07 #36850 [verbose] > │ | US0_0(v43, v44, v45, v46, v47, v48, v49, v50, v51) -> │
00:12:07 #36851 [verbose] > │ (* Some *) │
00:12:07 #36852 [verbose] > │ struct (v43, v44, v45, v46, v47, v48, v49, v50, v51) │
00:12:07 #36853 [verbose] > │ closure4(v70, v71, v72, v73, v74, v75, v76, v77, v78) │
00:12:07 #36854 [verbose] > │ else │
00:12:07 #36855 [verbose] > │ let v80 : bool = v3 = 1 │
00:12:07 #36856 [verbose] > │ if v80 then │
00:12:07 #36857 [verbose] > │ let v94 : US0 = │
00:12:07 #36858 [verbose] > │ match v0 with │
00:12:07 #36859 [verbose] > │ | UH0_1(v81, v82, v83, v84, v85, v86, v87, v88, v89, │
00:12:07 #36860 [verbose] > │ v90) -> (* Cons *) │
00:12:07 #36861 [verbose] > │ US0_0(v81, v82, v83, v84, v85, v86, v87, v88, │
00:12:07 #36862 [verbose] > │ v89) │
00:12:07 #36863 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:07 #36864 [verbose] > │ US0_1 │
00:12:07 #36865 [verbose] > │ let struct (v122 : float, v123 : float, v124 : float, │
00:12:07 #36866 [verbose] > │ v125 : float, v126 : float, v127 : float, v128 : float, v129 : float, v130 : │
00:12:07 #36867 [verbose] > │ float) = │
00:12:07 #36868 [verbose] > │ match v94 with │
00:12:07 #36869 [verbose] > │ | US0_1 -> (* None *) │
00:12:07 #36870 [verbose] > │ failwith<struct (float * float * float * float * │
00:12:07 #36871 [verbose] > │ float * float * float * float * float)> "Option does not have a value." │
00:12:07 #36872 [verbose] > │ | US0_0(v95, v96, v97, v98, v99, v100, v101, v102, │
00:12:07 #36873 [verbose] > │ v103) -> (* Some *) │
00:12:07 #36874 [verbose] > │ struct (v95, v96, v97, v98, v99, v100, v101, │
00:12:07 #36875 [verbose] > │ v102, v103) │
00:12:07 #36876 [verbose] > │ closure4(v122, v123, v124, v125, v126, v127, v128, v129, │
00:12:07 #36877 [verbose] > │ v130) │
00:12:07 #36878 [verbose] > │ else │
00:12:07 #36879 [verbose] > │ closure5() │
00:12:07 #36880 [verbose] > │ let struct (v135 : float, v136 : float, v137 : float) = v134 struct │
00:12:07 #36881 [verbose] > │ (v4, v5, v6, v7, v8, v9, v10, v11, v12) │
00:12:07 #36882 [verbose] > │ let v138 : float = v135 / v5 │
00:12:07 #36883 [verbose] > │ let v139 : float = v136 / v5 │
00:12:07 #36884 [verbose] > │ let v140 : float = v137 / v5 │
00:12:07 #36885 [verbose] > │ UH1_1(0.0, 0.0, v10, v11, v12, 1.0, v138, v139, v140, v14) │
00:12:07 #36886 [verbose] > │ | UH3_0 -> (* Nil *) │
00:12:07 #36887 [verbose] > │ v2 │
00:12:07 #36888 [verbose] > │ and closure3 () (v0 : UH0) : UH1 = │
00:12:07 #36889 [verbose] > │ let v1 : UH3 = UH3_0 │
00:12:07 #36890 [verbose] > │ let v2 : int32 = 0 │
00:12:07 #36891 [verbose] > │ let struct (v3 : UH3, v4 : int32) = method6(v0, v1, v2) │
00:12:07 #36892 [verbose] > │ let v5 : UH3 = UH3_0 │
00:12:07 #36893 [verbose] > │ let v6 : UH3 = method7(v3, v5) │
00:12:07 #36894 [verbose] > │ let v7 : UH1 = UH1_0 │
00:12:07 #36895 [verbose] > │ let v8 : UH1 = method8(v0, v6, v7) │
00:12:07 #36896 [verbose] > │ v8 │
00:12:07 #36897 [verbose] > │ and method10 (v0 : (UH0 -> UH0), v1 : UH0, v2 : int32) : UH0 = │
00:12:07 #36898 [verbose] > │ let v3 : bool = v2 <= 0 │
00:12:07 #36899 [verbose] > │ if v3 then │
00:12:07 #36900 [verbose] > │ v1 │
00:12:07 #36901 [verbose] > │ else │
00:12:07 #36902 [verbose] > │ let v4 : UH0 = v0 v1 │
00:12:07 #36903 [verbose] > │ let v5 : int32 = v2 - 1 │
00:12:07 #36904 [verbose] > │ method10(v0, v4, v5) │
00:12:07 #36905 [verbose] > │ and method11 (v0 : UH4, v1 : UH4) : UH4 = │
00:12:07 #36906 [verbose] > │ match v0 with │
00:12:07 #36907 [verbose] > │ | UH4_1(v2, v3) -> (* Cons *) │
00:12:07 #36908 [verbose] > │ let v4 : UH4 = UH4_1(v2, v1) │
00:12:07 #36909 [verbose] > │ method11(v3, v4) │
00:12:07 #36910 [verbose] > │ | UH4_0 -> (* Nil *) │
00:12:07 #36911 [verbose] > │ v1 │
00:12:07 #36912 [verbose] > │ and method9 (v0 : (UH0 -> UH0), v1 : UH4, v2 : int32) : UH4 = │
00:12:07 #36913 [verbose] > │ let v3 : float = 0.0 │
00:12:07 #36914 [verbose] > │ let v4 : float = 0.16 │
00:12:07 #36915 [verbose] > │ let v5 : float = 0.0 │
00:12:07 #36916 [verbose] > │ let v6 : float = 0.0 │
00:12:07 #36917 [verbose] > │ let v7 : float = 0.0 │
00:12:07 #36918 [verbose] > │ let v8 : float = 0.0 │
00:12:07 #36919 [verbose] > │ let v9 : float = 0.2 │
00:12:07 #36920 [verbose] > │ let v10 : float = 0.0 │
00:12:07 #36921 [verbose] > │ let v11 : float = 0.0 │
00:12:07 #36922 [verbose] > │ let v12 : float = 1.0 │
00:12:07 #36923 [verbose] > │ let v13 : float = 0.02 │
00:12:07 #36924 [verbose] > │ let v14 : float = 0.0 │
00:12:07 #36925 [verbose] > │ let v15 : float = 0.0 │
00:12:07 #36926 [verbose] > │ let v16 : float = 0.0 │
00:12:07 #36927 [verbose] > │ let v17 : float = 0.0 │
00:12:07 #36928 [verbose] > │ let v18 : UH0 = UH0_0 │
00:12:07 #36929 [verbose] > │ let v19 : UH0 = UH0_1(v3, v4, v12, v13, v14, v8, v15, v16, v17, v18) │
00:12:07 #36930 [verbose] > │ let v20 : UH0 = UH0_1(v3, v4, v5, v6, v7, v8, v9, v10, v11, v19) │
00:12:07 #36931 [verbose] > │ let v21 : UH0 = method10(v0, v20, v2) │
00:12:07 #36932 [verbose] > │ let v35 : US0 = │
00:12:07 #36933 [verbose] > │ match v21 with │
00:12:07 #36934 [verbose] > │ | UH0_1(v22, v23, v24, v25, v26, v27, v28, v29, v30, v31) -> (* Cons │
00:12:07 #36935 [verbose] > │ *) │
00:12:07 #36936 [verbose] > │ US0_0(v22, v23, v24, v25, v26, v27, v28, v29, v30) │
00:12:07 #36937 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:07 #36938 [verbose] > │ US0_1 │
00:12:07 #36939 [verbose] > │ let struct (v63 : float, v64 : float, v65 : float, v66 : float, v67 : │
00:12:07 #36940 [verbose] > │ float, v68 : float, v69 : float, v70 : float, v71 : float) = │
00:12:07 #36941 [verbose] > │ match v35 with │
00:12:07 #36942 [verbose] > │ | US0_1 -> (* None *) │
00:12:07 #36943 [verbose] > │ failwith<struct (float * float * float * float * float * float * │
00:12:07 #36944 [verbose] > │ float * float * float)> "Option does not have a value." │
00:12:07 #36945 [verbose] > │ | US0_0(v36, v37, v38, v39, v40, v41, v42, v43, v44) -> (* Some *) │
00:12:07 #36946 [verbose] > │ struct (v36, v37, v38, v39, v40, v41, v42, v43, v44) │
00:12:07 #36947 [verbose] > │ let v72 : bool = v68 <= 10.0 │
00:12:07 #36948 [verbose] > │ if v72 then │
00:12:07 #36949 [verbose] > │ let v73 : UH4 = UH4_1(v21, v1) │
00:12:07 #36950 [verbose] > │ let v74 : int32 = v2 + 1 │
00:12:07 #36951 [verbose] > │ method9(v0, v73, v74) │
00:12:07 #36952 [verbose] > │ else │
00:12:07 #36953 [verbose] > │ let v76 : UH4 = UH4_0 │
00:12:07 #36954 [verbose] > │ method11(v1, v76) │
00:12:07 #36955 [verbose] > │ and method13 (v0 : UH0, v1 : UH6) : UH6 = │
00:12:07 #36956 [verbose] > │ match v0 with │
00:12:07 #36957 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:07 #36958 [verbose] > │ let v12 : UH6 = method13(v11, v1) │
00:12:07 #36959 [verbose] > │ let v13 : float = v8 * v8 │
00:12:07 #36960 [verbose] > │ let v14 : float = v9 * v9 │
00:12:07 #36961 [verbose] > │ let v15 : float = v13 + v14 │
00:12:07 #36962 [verbose] > │ let v16 : float = v10 * v10 │
00:12:07 #36963 [verbose] > │ let v17 : float = v15 + v16 │
00:12:07 #36964 [verbose] > │ let v18 : float = sqrt v17 │
00:12:07 #36965 [verbose] > │ let v19 : float = 0.5 * v3 │
00:12:07 #36966 [verbose] > │ let v20 : float = v18 ** 2.0 │
00:12:07 #36967 [verbose] > │ let v21 : float = v19 * v20 │
00:12:07 #36968 [verbose] > │ UH6_1(v21, v12) │
00:12:07 #36969 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:07 #36970 [verbose] > │ v1 │
00:12:07 #36971 [verbose] > │ and method14 (v0 : UH6, v1 : float) : float = │
00:12:07 #36972 [verbose] > │ match v0 with │
00:12:07 #36973 [verbose] > │ | UH6_1(v2, v3) -> (* Cons *) │
00:12:07 #36974 [verbose] > │ let v4 : float = v1 + v2 │
00:12:07 #36975 [verbose] > │ method14(v3, v4) │
00:12:07 #36976 [verbose] > │ | UH6_0 -> (* Nil *) │
00:12:07 #36977 [verbose] > │ v1 │
00:12:07 #36978 [verbose] > │ and method12 (v0 : UH4, v1 : UH5) : UH5 = │
00:12:07 #36979 [verbose] > │ match v0 with │
00:12:07 #36980 [verbose] > │ | UH4_1(v2, v3) -> (* Cons *) │
00:12:07 #36981 [verbose] > │ let v4 : UH5 = method12(v3, v1) │
00:12:07 #36982 [verbose] > │ let v18 : US0 = │
00:12:07 #36983 [verbose] > │ match v2 with │
00:12:07 #36984 [verbose] > │ | UH0_1(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (* Cons │
00:12:07 #36985 [verbose] > │ *) │
00:12:07 #36986 [verbose] > │ US0_0(v5, v6, v7, v8, v9, v10, v11, v12, v13) │
00:12:07 #36987 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:07 #36988 [verbose] > │ US0_1 │
00:12:07 #36989 [verbose] > │ let struct (v46 : float, v47 : float, v48 : float, v49 : float, v50 │
00:12:07 #36990 [verbose] > │ : float, v51 : float, v52 : float, v53 : float, v54 : float) = │
00:12:07 #36991 [verbose] > │ match v18 with │
00:12:07 #36992 [verbose] > │ | US0_1 -> (* None *) │
00:12:07 #36993 [verbose] > │ failwith<struct (float * float * float * float * float * │
00:12:07 #36994 [verbose] > │ float * float * float * float)> "Option does not have a value." │
00:12:07 #36995 [verbose] > │ | US0_0(v19, v20, v21, v22, v23, v24, v25, v26, v27) -> (* Some │
00:12:07 #36996 [verbose] > │ *) │
00:12:07 #36997 [verbose] > │ struct (v19, v20, v21, v22, v23, v24, v25, v26, v27) │
00:12:07 #36998 [verbose] > │ let v55 : UH6 = UH6_0 │
00:12:07 #36999 [verbose] > │ let v56 : UH6 = method13(v2, v55) │
00:12:07 #37000 [verbose] > │ let v57 : float = 0.0 │
00:12:07 #37001 [verbose] > │ let v58 : float = method14(v56, v57) │
00:12:07 #37002 [verbose] > │ UH5_1(v51, v58, v4) │
00:12:07 #37003 [verbose] > │ | UH4_0 -> (* Nil *) │
00:12:07 #37004 [verbose] > │ v1 │
00:12:07 #37005 [verbose] > │ and method15 (v0 : UH5, v1 : UH6, v2 : UH6) : struct (UH6 * UH6) = │
00:12:07 #37006 [verbose] > │ match v0 with │
00:12:07 #37007 [verbose] > │ | UH5_1(v3, v4, v5) -> (* Cons *) │
00:12:07 #37008 [verbose] > │ let v6 : UH6 = UH6_1(v3, v1) │
00:12:07 #37009 [verbose] > │ let v7 : UH6 = UH6_1(v4, v2) │
00:12:07 #37010 [verbose] > │ method15(v5, v6, v7) │
00:12:07 #37011 [verbose] > │ | UH5_0 -> (* Nil *) │
00:12:07 #37012 [verbose] > │ struct (v1, v2) │
00:12:07 #37013 [verbose] > │ and method16 (v0 : UH6, v1 : UH6) : UH6 = │
00:12:07 #37014 [verbose] > │ match v0 with │
00:12:07 #37015 [verbose] > │ | UH6_1(v2, v3) -> (* Cons *) │
00:12:07 #37016 [verbose] > │ let v4 : UH6 = UH6_1(v2, v1) │
00:12:07 #37017 [verbose] > │ method16(v3, v4) │
00:12:07 #37018 [verbose] > │ | UH6_0 -> (* Nil *) │
00:12:07 #37019 [verbose] > │ v1 │
00:12:07 #37020 [verbose] > │ and method18 (v0 : UH1, v1 : UH1) : UH1 = │
00:12:07 #37021 [verbose] > │ match v0 with │
00:12:07 #37022 [verbose] > │ | UH1_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *) │
00:12:07 #37023 [verbose] > │ let v12 : UH1 = UH1_1(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1) │
00:12:07 #37024 [verbose] > │ method18(v11, v12) │
00:12:07 #37025 [verbose] > │ | UH1_0 -> (* Nil *) │
00:12:07 #37026 [verbose] > │ v1 │
00:12:07 #37027 [verbose] > │ and method17 (v0 : UH1, v1 : UH1, v2 : UH1) : UH1 = │
00:12:07 #37028 [verbose] > │ match v1 with │
00:12:07 #37029 [verbose] > │ | UH1_1(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *) │
00:12:07 #37030 [verbose] > │ match v2 with │
00:12:07 #37031 [verbose] > │ | UH1_1(v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) -> (* Cons │
00:12:07 #37032 [verbose] > │ *) │
00:12:07 #37033 [verbose] > │ let v23 : float = v3 + v13 │
00:12:07 #37034 [verbose] > │ let v24 : float = v4 + v14 │
00:12:07 #37035 [verbose] > │ let v25 : float = v8 + v18 │
00:12:07 #37036 [verbose] > │ let v26 : float = v5 + v15 │
00:12:07 #37037 [verbose] > │ let v27 : float = v6 + v16 │
00:12:07 #37038 [verbose] > │ let v28 : float = v7 + v17 │
00:12:07 #37039 [verbose] > │ let v29 : float = v9 + v19 │
00:12:07 #37040 [verbose] > │ let v30 : float = v10 + v20 │
00:12:07 #37041 [verbose] > │ let v31 : float = v11 + v21 │
00:12:07 #37042 [verbose] > │ let v32 : UH1 = UH1_1(v23, v24, v26, v27, v28, v25, v29, v30, │
00:12:07 #37043 [verbose] > │ v31, v0) │
00:12:07 #37044 [verbose] > │ method17(v32, v12, v22) │
00:12:07 #37045 [verbose] > │ | _ -> │
00:12:07 #37046 [verbose] > │ let v34 : UH1 = UH1_0 │
00:12:07 #37047 [verbose] > │ method18(v0, v34) │
00:12:07 #37048 [verbose] > │ | _ -> │
00:12:07 #37049 [verbose] > │ let v37 : UH1 = UH1_0 │
00:12:07 #37050 [verbose] > │ method18(v0, v37) │
00:12:07 #37051 [verbose] > │ and closure8 (v0 : float, v1 : (UH0 -> UH1)) (v2 : UH0) : UH0 = │
00:12:07 #37052 [verbose] > │ let v3 : UH1 = v1 v2 │
00:12:07 #37053 [verbose] > │ let v4 : float = v0 / 2.0 │
00:12:07 #37054 [verbose] > │ let v5 : UH0 = UH0_0 │
00:12:07 #37055 [verbose] > │ let v6 : UH0 = method1(v4, v5, v3, v2) │
00:12:07 #37056 [verbose] > │ let v7 : UH1 = v1 v6 │
00:12:07 #37057 [verbose] > │ let v8 : UH0 = UH0_0 │
00:12:07 #37058 [verbose] > │ let v9 : UH0 = method1(v4, v8, v7, v2) │
00:12:07 #37059 [verbose] > │ let v10 : UH1 = v1 v9 │
00:12:07 #37060 [verbose] > │ let v11 : UH0 = UH0_0 │
00:12:07 #37061 [verbose] > │ let v12 : UH0 = method1(v0, v11, v10, v2) │
00:12:07 #37062 [verbose] > │ let v13 : UH1 = v1 v12 │
00:12:07 #37063 [verbose] > │ let v14 : float = v0 / 6.0 │
00:12:07 #37064 [verbose] > │ let v15 : UH1 = UH1_0 │
00:12:07 #37065 [verbose] > │ let v16 : UH1 = method17(v15, v3, v7) │
00:12:07 #37066 [verbose] > │ let v17 : UH1 = UH1_0 │
00:12:07 #37067 [verbose] > │ let v18 : UH1 = method17(v17, v16, v7) │
00:12:07 #37068 [verbose] > │ let v19 : UH1 = UH1_0 │
00:12:07 #37069 [verbose] > │ let v20 : UH1 = method17(v19, v18, v10) │
00:12:07 #37070 [verbose] > │ let v21 : UH1 = UH1_0 │
00:12:07 #37071 [verbose] > │ let v22 : UH1 = method17(v21, v20, v10) │
00:12:07 #37072 [verbose] > │ let v23 : UH1 = UH1_0 │
00:12:07 #37073 [verbose] > │ let v24 : UH1 = method17(v23, v22, v13) │
00:12:07 #37074 [verbose] > │ let v25 : UH0 = UH0_0 │
00:12:07 #37075 [verbose] > │ let v26 : UH0 = method1(v14, v25, v24, v2) │
00:12:07 #37076 [verbose] > │ v26 │
00:12:07 #37077 [verbose] > │ and closure7 (v0 : float) (v1 : (UH0 -> UH1)) : (UH0 -> UH0) = │
00:12:07 #37078 [verbose] > │ closure8(v0, v1) │
00:12:07 #37079 [verbose] > │ and closure6 () (v0 : float) : ((UH0 -> UH1) -> (UH0 -> UH0)) = │
00:12:07 #37080 [verbose] > │ closure7(v0) │
00:12:07 #37081 [verbose] > │ and method19 (v0 : UH4, v1 : UH5) : UH5 = │
00:12:07 #37082 [verbose] > │ match v0 with │
00:12:07 #37083 [verbose] > │ | UH4_1(v2, v3) -> (* Cons *) │
00:12:07 #37084 [verbose] > │ let v4 : UH5 = method19(v3, v1) │
00:12:07 #37085 [verbose] > │ let v18 : US0 = │
00:12:07 #37086 [verbose] > │ match v2 with │
00:12:07 #37087 [verbose] > │ | UH0_1(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (* Cons │
00:12:07 #37088 [verbose] > │ *) │
00:12:07 #37089 [verbose] > │ US0_0(v5, v6, v7, v8, v9, v10, v11, v12, v13) │
00:12:07 #37090 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:07 #37091 [verbose] > │ US0_1 │
00:12:07 #37092 [verbose] > │ let struct (v46 : float, v47 : float, v48 : float, v49 : float, v50 │
00:12:07 #37093 [verbose] > │ : float, v51 : float, v52 : float, v53 : float, v54 : float) = │
00:12:07 #37094 [verbose] > │ match v18 with │
00:12:07 #37095 [verbose] > │ | US0_1 -> (* None *) │
00:12:07 #37096 [verbose] > │ failwith<struct (float * float * float * float * float * │
00:12:07 #37097 [verbose] > │ float * float * float * float)> "Option does not have a value." │
00:12:07 #37098 [verbose] > │ | US0_0(v19, v20, v21, v22, v23, v24, v25, v26, v27) -> (* Some │
00:12:07 #37099 [verbose] > │ *) │
00:12:07 #37100 [verbose] > │ struct (v19, v20, v21, v22, v23, v24, v25, v26, v27) │
00:12:07 #37101 [verbose] > │ let v55 : UH6 = UH6_0 │
00:12:07 #37102 [verbose] > │ let v56 : UH6 = method13(v2, v55) │
00:12:07 #37103 [verbose] > │ let v57 : float = 0.0 │
00:12:07 #37104 [verbose] > │ let v58 : float = method14(v56, v57) │
00:12:07 #37105 [verbose] > │ UH5_1(v51, v58, v4) │
00:12:07 #37106 [verbose] > │ | UH4_0 -> (* Nil *) │
00:12:07 #37107 [verbose] > │ v1 │
00:12:07 #37108 [verbose] > │ and method21 (v0 : UH6, v1 : int32) : int32 = │
00:12:07 #37109 [verbose] > │ match v0 with │
00:12:07 #37110 [verbose] > │ | UH6_1(v2, v3) -> (* Cons *) │
00:12:07 #37111 [verbose] > │ let v4 : int32 = v1 + 1 │
00:12:07 #37112 [verbose] > │ method21(v3, v4) │
00:12:07 #37113 [verbose] > │ | UH6_0 -> (* Nil *) │
00:12:07 #37114 [verbose] > │ v1 │
00:12:07 #37115 [verbose] > │ and method22 (v0 : (float []), v1 : UH6, v2 : int32) : int32 = │
00:12:07 #37116 [verbose] > │ match v1 with │
00:12:07 #37117 [verbose] > │ | UH6_1(v3, v4) -> (* Cons *) │
00:12:07 #37118 [verbose] > │ v0.[int v2] <- v3 │
00:12:07 #37119 [verbose] > │ let v5 : int32 = v2 + 1 │
00:12:07 #37120 [verbose] > │ method22(v0, v4, v5) │
00:12:07 #37121 [verbose] > │ | UH6_0 -> (* Nil *) │
00:12:07 #37122 [verbose] > │ v2 │
00:12:07 #37123 [verbose] > │ and method20 (v0 : UH6) : (float []) = │
00:12:07 #37124 [verbose] > │ let v1 : int32 = 0 │
00:12:07 #37125 [verbose] > │ let v2 : int32 = method21(v0, v1) │
00:12:07 #37126 [verbose] > │ let v3 : (float []) = Array.zeroCreate<float> (v2) │
00:12:07 #37127 [verbose] > │ let v4 : int32 = 0 │
00:12:07 #37128 [verbose] > │ let v5 : int32 = method22(v3, v0, v4) │
00:12:07 #37129 [verbose] > │ v3 │
00:12:07 #37130 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:12:07 #37131 [verbose] > │ []) * (float [])) [])) = │
00:12:07 #37132 [verbose] > │ let v0 : (float -> ((UH0 -> UH1) -> (UH0 -> UH0))) = closure0() │
00:12:07 #37133 [verbose] > │ let v1 : ((UH0 -> UH1) -> (UH0 -> UH0)) = v0 0.03 │
00:12:07 #37134 [verbose] > │ let v2 : (UH0 -> UH1) = closure3() │
00:12:07 #37135 [verbose] > │ let v3 : (UH0 -> UH0) = v1 v2 │
00:12:07 #37136 [verbose] > │ let v4 : UH4 = UH4_0 │
00:12:07 #37137 [verbose] > │ let v5 : int32 = 0 │
00:12:07 #37138 [verbose] > │ let v6 : UH4 = method9(v3, v4, v5) │
00:12:07 #37139 [verbose] > │ let v7 : UH5 = UH5_0 │
00:12:07 #37140 [verbose] > │ let v8 : UH5 = method12(v6, v7) │
00:12:07 #37141 [verbose] > │ let v9 : UH6 = UH6_0 │
00:12:07 #37142 [verbose] > │ let v10 : UH6 = UH6_0 │
00:12:07 #37143 [verbose] > │ let struct (v11 : UH6, v12 : UH6) = method15(v8, v9, v10) │
00:12:07 #37144 [verbose] > │ let v13 : UH6 = UH6_0 │
00:12:07 #37145 [verbose] > │ let v14 : UH6 = method16(v11, v13) │
00:12:07 #37146 [verbose] > │ let v15 : UH6 = UH6_0 │
00:12:07 #37147 [verbose] > │ let v16 : UH6 = method16(v12, v15) │
00:12:07 #37148 [verbose] > │ let v17 : (float -> ((UH0 -> UH1) -> (UH0 -> UH0))) = closure6() │
00:12:07 #37149 [verbose] > │ let v18 : ((UH0 -> UH1) -> (UH0 -> UH0)) = v17 0.03 │
00:12:07 #37150 [verbose] > │ let v19 : (UH0 -> UH0) = v18 v2 │
00:12:07 #37151 [verbose] > │ let v20 : UH4 = UH4_0 │
00:12:07 #37152 [verbose] > │ let v21 : int32 = 0 │
00:12:07 #37153 [verbose] > │ let v22 : UH4 = method9(v19, v20, v21) │
00:12:07 #37154 [verbose] > │ let v23 : UH5 = UH5_0 │
00:12:07 #37155 [verbose] > │ let v24 : UH5 = method19(v22, v23) │
00:12:07 #37156 [verbose] > │ let v25 : UH6 = UH6_0 │
00:12:07 #37157 [verbose] > │ let v26 : UH6 = UH6_0 │
00:12:07 #37158 [verbose] > │ let struct (v27 : UH6, v28 : UH6) = method15(v24, v25, v26) │
00:12:07 #37159 [verbose] > │ let v29 : UH6 = UH6_0 │
00:12:07 #37160 [verbose] > │ let v30 : UH6 = method16(v27, v29) │
00:12:07 #37161 [verbose] > │ let v31 : UH6 = UH6_0 │
00:12:07 #37162 [verbose] > │ let v32 : UH6 = method16(v28, v31) │
00:12:07 #37163 [verbose] > │ let v33 : (float []) = method20(v14) │
00:12:07 #37164 [verbose] > │ let v34 : (float []) = method20(v16) │
00:12:07 #37165 [verbose] > │ let v35 : (float []) = method20(v30) │
00:12:07 #37166 [verbose] > │ let v36 : (float []) = method20(v32) │
00:12:07 #37167 [verbose] > │ let v37 : string = "euler-cromer" │
00:12:07 #37168 [verbose] > │ let v38 : string = "runge-kutta 4" │
00:12:07 #37169 [verbose] > │ let v39 : (struct (string * (float []) * (float [])) []) = [|struct │
00:12:07 #37170 [verbose] > │ (v37, v33, v34); struct (v38, v35, v36)|] │
00:12:07 #37171 [verbose] > │ let v40 : string = "system kinetic energy versus time" │
00:12:07 #37172 [verbose] > │ let v41 : string = "time (s)" │
00:12:07 #37173 [verbose] > │ let v42 : string = "system kinetic energy (j)" │
00:12:07 #37174 [verbose] > │ struct (v40, v41, v42, v39) │
00:12:07 #37175 [verbose] > │ method0() │
00:12:07 #37176 [verbose] > │ │
00:12:07 #37177 [verbose] > │ │
00:12:07 #37178 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:08 #37179 [verbose] >
00:12:08 #37180 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:12:08 #37181 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:12:08 #37182 [verbose] > │ ### wave 1 │
00:12:08 #37183 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:08 #37184 [verbose] >
00:12:08 #37185 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:08 #37186 [verbose] > // // test
00:12:08 #37187 [verbose] >
00:12:08 #37188 [verbose] > inl linear_spring k re (particle_state st1) (particle_state st2) =
00:12:08 #37189 [verbose] > inl r1 = st1.pos_vec
00:12:08 #37190 [verbose] > inl r2 = st2.pos_vec
00:12:08 #37191 [verbose] > inl r21 = r2 ^-^ r1
00:12:08 #37192 [verbose] > inl r21mag = magnitude r21
00:12:08 #37193 [verbose] > -k * (r21mag - re) *^ r21 ^/ r21mag
00:12:08 #37194 [verbose] >
00:12:08 #37195 [verbose] > inl fixed_linear_spring k re r1 =
00:12:08 #37196 [verbose] > inl (particle_state default_particle_state') = default_particle_state ()
00:12:08 #37197 [verbose] > linear_spring k re (particle_state { default_particle_state' with pos_vec =
00:12:08 #37198 [verbose] > r1 })
00:12:08 #37199 [verbose] >
00:12:08 #37200 [verbose] > inl forces_string () =
00:12:08 #37201 [verbose] > [[
00:12:08 #37202 [verbose] > ExternalForce (0, fixed_linear_spring 5384 0 (zero_vec ()))
00:12:08 #37203 [verbose] > ExternalForce (63, fixed_linear_spring 5384 0 (0.65 *^ i_hat ()))
00:12:08 #37204 [verbose] > ]] /@ (
00:12:08 #37205 [verbose] > listm'.init_series 0 59 1
00:12:08 #37206 [verbose] > |> listm.map (fun n => InternalForce (n, n + 1, linear_spring 5384 0))
00:12:08 #37207 [verbose] > )
00:12:08 #37208 [verbose] >
00:12:08 #37209 [verbose] > inl string_update dt =
00:12:08 #37210 [verbose] > update_mps (runge_kutta_4 dt) (forces_string ())
00:12:08 #37211 [verbose] >
00:12:08 #37212 [verbose] > inl string_initial_overtone n =
00:12:08 #37213 [verbose] > inl ball_mass = 0.0008293 * 0.65 / 64
00:12:08 #37214 [verbose] > inl (particle_state default_particle_state') = default_particle_state ()
00:12:08 #37215 [verbose] > listm'.init_series 0.01 0.64 0.01
00:12:08 #37216 [verbose] > |> listm.map (fun x =>
00:12:08 #37217 [verbose] > inl y = 0.005 * sin (conv n * pi * x / 0.65)
00:12:08 #37218 [verbose] > particle_state {
00:12:08 #37219 [verbose] > default_particle_state' with
00:12:08 #37220 [verbose] > mass = ball_mass
00:12:08 #37221 [verbose] > pos_vec = x *^ i_hat () ^+^ y *^ j_hat ()
00:12:08 #37222 [verbose] > velocity = zero_vec ()
00:12:08 #37223 [verbose] > }
00:12:08 #37224 [verbose] > )
00:12:08 #37225 [verbose] > |> multi_particle_state
00:12:08 #37226 [verbose] >
00:12:08 #37227 [verbose] > inl string_initial_pluck () =
00:12:08 #37228 [verbose] > inl ball_mass = 0.0008293 * 0.65 / 64
00:12:08 #37229 [verbose] > inl (particle_state default_particle_state') = default_particle_state ()
00:12:08 #37230 [verbose] > listm'.init_series 0.01 0.64 0.01
00:12:08 #37231 [verbose] > |> listm.map (fun x =>
00:12:08 #37232 [verbose] > inl y =
00:12:08 #37233 [verbose] > inl n = if x <= 0.51 then 0 else 0.65
00:12:08 #37234 [verbose] > 0.005 / (0.51 - n) * (x - n)
00:12:08 #37235 [verbose] > particle_state {
00:12:08 #37236 [verbose] > default_particle_state' with
00:12:08 #37237 [verbose] > mass = ball_mass
00:12:08 #37238 [verbose] > pos_vec = x *^ i_hat () ^+^ y *^ j_hat ()
00:12:08 #37239 [verbose] > velocity = zero_vec ()
00:12:08 #37240 [verbose] > }
00:12:08 #37241 [verbose] > )
00:12:08 #37242 [verbose] > |> multi_particle_state
00:12:08 #37243 [verbose] >
00:12:08 #37244 [verbose] > let main () =
00:12:08 #37245 [verbose] > inl ~frames = listm'.init_series 0 9 1f64
00:12:08 #37246 [verbose] > inl initial_state = string_initial_overtone 3i32
00:12:08 #37247 [verbose] > inl frames =
00:12:08 #37248 [verbose] > frames
00:12:08 #37249 [verbose] > |> listm.map (fun n =>
00:12:08 #37250 [verbose] > inl (multi_particle_state sts) =
00:12:08 #37251 [verbose] > seq.iterate' (string_update 0.000025) initial_state |> fun f =>
00:12:08 #37252 [verbose] > f 0f64
00:12:08 #37253 [verbose] > inl rs =
00:12:08 #37254 [verbose] > [[ zero_vec () ]]
00:12:08 #37255 [verbose] > /@ (sts |> listm.map (fun (particle_state st) => st.pos_vec))
00:12:08 #37256 [verbose] > /@ [[ 0.65 *^ i_hat () ]]
00:12:08 #37257 [verbose] > inl x, y =
00:12:08 #37258 [verbose] > rs
00:12:08 #37259 [verbose] > |> listm.map (fun r => r.x, r.y)
00:12:08 #37260 [verbose] > |> listm'.unzip
00:12:08 #37261 [verbose] > inl x : a i32 _ = x |> listm.toArray
00:12:08 #37262 [verbose] > inl y : a i32 _ = y |> listm.toArray
00:12:08 #37263 [verbose] > x, y
00:12:08 #37264 [verbose] > )
00:12:08 #37265 [verbose] > |> listm.toArray : a i32 _
00:12:08 #37266 [verbose] >
00:12:08 #37267 [verbose] > inl n = 0i32
00:12:08 #37268 [verbose] >
00:12:08 #37269 [verbose] > inl x, y = index frames n
00:12:08 #37270 [verbose] >
00:12:08 #37271 [verbose] > "wave",
00:12:08 #37272 [verbose] > "position (m)",
00:12:08 #37273 [verbose] > "displacement (m)",
00:12:08 #37274 [verbose] > ;[[
00:12:08 #37275 [verbose] > ($"$\"{!n}\"" : string), x, y
00:12:08 #37276 [verbose] > ]]
00:12:08 #37277 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\39a2117e8ec4f06264cfe19509b9f7e926f44c1427b679d3540db1632822c706\main.spi
00:12:08 #37278 [verbose] >
00:12:08 #37279 [verbose] > ╭─[ 592.05ms - return value ]──────────────────────────────────────────────────╮
00:12:08 #37280 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:12:08 #37281 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:12:08 #37282 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:12:08 #37283 [verbose] > │ stroke="none"/> │
00:12:08 #37284 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:12:08 #37285 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:12:08 #37286 [verbose] > │ fill="#FFFFFF"> │
00:12:08 #37287 [verbose] > │ wave │
00:12:08 #37288 [verbose] > │ </text> │
00:12:08 #37289 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="62" y1="424" x2="62" │
00:12:08 #37290 [verbose] > │ y2="75"/> │
00:12:08 #37291 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:12:08 #37292 [verbose] > │ y2="75"/> │
00:12:08 #37293 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="77" y1="424" x2="77" │
00:12:08 #37294 [verbose] > │ y2="75"/> │
00:12:08 #37295 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="85" y1="424" x2="85" │
00:12:08 #37296 [verbose] > │ y2="75"/> │
00:12:08 #37297 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="93" y1="424" x2="93" │
00:12:08 #37298 [verbose] > │ y2... │
00:12:08 #37299 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:08 #37300 [verbose] >
00:12:08 #37301 [verbose] > ╭─[ 608.13ms - stdout ]────────────────────────────────────────────────────────╮
00:12:08 #37302 [verbose] > │ type UH0 = │
00:12:08 #37303 [verbose] > │ | UH0_0 │
00:12:08 #37304 [verbose] > │ | UH0_1 of float * UH0 │
00:12:08 #37305 [verbose] > │ and UH1 = │
00:12:08 #37306 [verbose] > │ | UH1_0 │
00:12:08 #37307 [verbose] > │ | UH1_1 of (float []) * (float []) * UH1 │
00:12:08 #37308 [verbose] > │ let rec method3 (v0 : UH0, v1 : int32) : int32 = │
00:12:08 #37309 [verbose] > │ match v0 with │
00:12:08 #37310 [verbose] > │ | UH0_1(v2, v3) -> (* Cons *) │
00:12:08 #37311 [verbose] > │ let v4 : int32 = v1 + 1 │
00:12:08 #37312 [verbose] > │ method3(v3, v4) │
00:12:08 #37313 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:08 #37314 [verbose] > │ v1 │
00:12:08 #37315 [verbose] > │ and method4 (v0 : (float []), v1 : UH0, v2 : int32) : int32 = │
00:12:08 #37316 [verbose] > │ match v1 with │
00:12:08 #37317 [verbose] > │ | UH0_1(v3, v4) -> (* Cons *) │
00:12:08 #37318 [verbose] > │ v0.[int v2] <- v3 │
00:12:08 #37319 [verbose] > │ let v5 : int32 = v2 + 1 │
00:12:08 #37320 [verbose] > │ method4(v0, v4, v5) │
00:12:08 #37321 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:08 #37322 [verbose] > │ v2 │
00:12:08 #37323 [verbose] > │ and method2 (v0 : UH0) : (float []) = │
00:12:08 #37324 [verbose] > │ let v1 : int32 = 0 │
00:12:08 #37325 [verbose] > │ let v2 : int32 = method3(v0, v1) │
00:12:08 #37326 [verbose] > │ let v3 : (float []) = Array.zeroCreate<float> (v2) │
00:12:08 #37327 [verbose] > │ let v4 : int32 = 0 │
00:12:08 #37328 [verbose] > │ let v5 : int32 = method4(v3, v0, v4) │
00:12:08 #37329 [verbose] > │ v3 │
00:12:08 #37330 [verbose] > │ and method1 (v0 : UH0, v1 : UH1) : UH1 = │
00:12:08 #37331 [verbose] > │ match v0 with │
00:12:08 #37332 [verbose] > │ | UH0_1(v2, v3) -> (* Cons *) │
00:12:08 #37333 [verbose] > │ let v4 : UH1 = method1(v3, v1) │
00:12:08 #37334 [verbose] > │ let v5 : float = 0.0 │
00:12:08 #37335 [verbose] > │ let v6 : float = 0.01 │
00:12:08 #37336 [verbose] > │ let v7 : float = 0.02 │
00:12:08 #37337 [verbose] > │ let v8 : float = 0.03 │
00:12:08 #37338 [verbose] > │ let v9 : float = 0.04 │
00:12:08 #37339 [verbose] > │ let v10 : float = 0.05 │
00:12:08 #37340 [verbose] > │ let v11 : float = 0.060000000000000005 │
00:12:08 #37341 [verbose] > │ let v12 : float = 0.06999999999999999 │
00:12:08 #37342 [verbose] > │ let v13 : float = 0.08 │
00:12:08 #37343 [verbose] > │ let v14 : float = 0.09 │
00:12:08 #37344 [verbose] > │ let v15 : float = 0.09999999999999999 │
00:12:08 #37345 [verbose] > │ let v16 : float = 0.11 │
00:12:08 #37346 [verbose] > │ let v17 : float = 0.12 │
00:12:08 #37347 [verbose] > │ let v18 : float = 0.13 │
00:12:08 #37348 [verbose] > │ let v19 : float = 0.14 │
00:12:08 #37349 [verbose] > │ let v20 : float = 0.15000000000000002 │
00:12:08 #37350 [verbose] > │ let v21 : float = 0.16 │
00:12:08 #37351 [verbose] > │ let v22 : float = 0.17 │
00:12:08 #37352 [verbose] > │ let v23 : float = 0.18000000000000002 │
00:12:08 #37353 [verbose] > │ let v24 : float = 0.19 │
00:12:08 #37354 [verbose] > │ let v25 : float = 0.2 │
00:12:08 #37355 [verbose] > │ let v26 : float = 0.21000000000000002 │
00:12:08 #37356 [verbose] > │ let v27 : float = 0.22 │
00:12:08 #37357 [verbose] > │ let v28 : float = 0.23 │
00:12:08 #37358 [verbose] > │ let v29 : float = 0.24000000000000002 │
00:12:08 #37359 [verbose] > │ let v30 : float = 0.25 │
00:12:08 #37360 [verbose] > │ let v31 : float = 0.26 │
00:12:08 #37361 [verbose] > │ let v32 : float = 0.27 │
00:12:08 #37362 [verbose] > │ let v33 : float = 0.28 │
00:12:08 #37363 [verbose] > │ let v34 : float = 0.29000000000000004 │
00:12:08 #37364 [verbose] > │ let v35 : float = 0.3 │
00:12:08 #37365 [verbose] > │ let v36 : float = 0.31 │
00:12:08 #37366 [verbose] > │ let v37 : float = 0.32 │
00:12:08 #37367 [verbose] > │ let v38 : float = 0.33 │
00:12:08 #37368 [verbose] > │ let v39 : float = 0.34 │
00:12:08 #37369 [verbose] > │ let v40 : float = 0.35000000000000003 │
00:12:08 #37370 [verbose] > │ let v41 : float = 0.36000000000000004 │
00:12:08 #37371 [verbose] > │ let v42 : float = 0.37 │
00:12:08 #37372 [verbose] > │ let v43 : float = 0.38 │
00:12:08 #37373 [verbose] > │ let v44 : float = 0.39 │
00:12:08 #37374 [verbose] > │ let v45 : float = 0.4 │
00:12:08 #37375 [verbose] > │ let v46 : float = 0.41000000000000003 │
00:12:08 #37376 [verbose] > │ let v47 : float = 0.42000000000000004 │
00:12:08 #37377 [verbose] > │ let v48 : float = 0.43 │
00:12:08 #37378 [verbose] > │ let v49 : float = 0.44 │
00:12:08 #37379 [verbose] > │ let v50 : float = 0.45 │
00:12:08 #37380 [verbose] > │ let v51 : float = 0.46 │
00:12:08 #37381 [verbose] > │ let v52 : float = 0.47000000000000003 │
00:12:08 #37382 [verbose] > │ let v53 : float = 0.48000000000000004 │
00:12:08 #37383 [verbose] > │ let v54 : float = 0.49 │
00:12:08 #37384 [verbose] > │ let v55 : float = 0.5 │
00:12:08 #37385 [verbose] > │ let v56 : float = 0.51 │
00:12:08 #37386 [verbose] > │ let v57 : float = 0.52 │
00:12:08 #37387 [verbose] > │ let v58 : float = 0.53 │
00:12:08 #37388 [verbose] > │ let v59 : float = 0.54 │
00:12:08 #37389 [verbose] > │ let v60 : float = 0.55 │
00:12:08 #37390 [verbose] > │ let v61 : float = 0.56 │
00:12:08 #37391 [verbose] > │ let v62 : float = 0.5700000000000001 │
00:12:08 #37392 [verbose] > │ let v63 : float = 0.5800000000000001 │
00:12:08 #37393 [verbose] > │ let v64 : float = 0.59 │
00:12:08 #37394 [verbose] > │ let v65 : float = 0.6 │
00:12:08 #37395 [verbose] > │ let v66 : float = 0.61 │
00:12:08 #37396 [verbose] > │ let v67 : float = 0.62 │
00:12:08 #37397 [verbose] > │ let v68 : float = 0.63 │
00:12:08 #37398 [verbose] > │ let v69 : float = 0.64 │
00:12:08 #37399 [verbose] > │ let v70 : float = 0.65 │
00:12:08 #37400 [verbose] > │ let v71 : UH0 = UH0_0 │
00:12:08 #37401 [verbose] > │ let v72 : UH0 = UH0_1(v70, v71) │
00:12:08 #37402 [verbose] > │ let v73 : UH0 = UH0_1(v69, v72) │
00:12:08 #37403 [verbose] > │ let v74 : UH0 = UH0_1(v68, v73) │
00:12:08 #37404 [verbose] > │ let v75 : UH0 = UH0_1(v67, v74) │
00:12:08 #37405 [verbose] > │ let v76 : UH0 = UH0_1(v66, v75) │
00:12:08 #37406 [verbose] > │ let v77 : UH0 = UH0_1(v65, v76) │
00:12:08 #37407 [verbose] > │ let v78 : UH0 = UH0_1(v64, v77) │
00:12:08 #37408 [verbose] > │ let v79 : UH0 = UH0_1(v63, v78) │
00:12:08 #37409 [verbose] > │ let v80 : UH0 = UH0_1(v62, v79) │
00:12:08 #37410 [verbose] > │ let v81 : UH0 = UH0_1(v61, v80) │
00:12:08 #37411 [verbose] > │ let v82 : UH0 = UH0_1(v60, v81) │
00:12:08 #37412 [verbose] > │ let v83 : UH0 = UH0_1(v59, v82) │
00:12:08 #37413 [verbose] > │ let v84 : UH0 = UH0_1(v58, v83) │
00:12:08 #37414 [verbose] > │ let v85 : UH0 = UH0_1(v57, v84) │
00:12:08 #37415 [verbose] > │ let v86 : UH0 = UH0_1(v56, v85) │
00:12:08 #37416 [verbose] > │ let v87 : UH0 = UH0_1(v55, v86) │
00:12:08 #37417 [verbose] > │ let v88 : UH0 = UH0_1(v54, v87) │
00:12:08 #37418 [verbose] > │ let v89 : UH0 = UH0_1(v53, v88) │
00:12:08 #37419 [verbose] > │ let v90 : UH0 = UH0_1(v52, v89) │
00:12:08 #37420 [verbose] > │ let v91 : UH0 = UH0_1(v51, v90) │
00:12:08 #37421 [verbose] > │ let v92 : UH0 = UH0_1(v50, v91) │
00:12:08 #37422 [verbose] > │ let v93 : UH0 = UH0_1(v49, v92) │
00:12:08 #37423 [verbose] > │ let v94 : UH0 = UH0_1(v48, v93) │
00:12:08 #37424 [verbose] > │ let v95 : UH0 = UH0_1(v47, v94) │
00:12:08 #37425 [verbose] > │ let v96 : UH0 = UH0_1(v46, v95) │
00:12:08 #37426 [verbose] > │ let v97 : UH0 = UH0_1(v45, v96) │
00:12:08 #37427 [verbose] > │ let v98 : UH0 = UH0_1(v44, v97) │
00:12:08 #37428 [verbose] > │ let v99 : UH0 = UH0_1(v43, v98) │
00:12:08 #37429 [verbose] > │ let v100 : UH0 = UH0_1(v42, v99) │
00:12:08 #37430 [verbose] > │ let v101 : UH0 = UH0_1(v41, v100) │
00:12:08 #37431 [verbose] > │ let v102 : UH0 = UH0_1(v40, v101) │
00:12:08 #37432 [verbose] > │ let v103 : UH0 = UH0_1(v39, v102) │
00:12:08 #37433 [verbose] > │ let v104 : UH0 = UH0_1(v38, v103) │
00:12:08 #37434 [verbose] > │ let v105 : UH0 = UH0_1(v37, v104) │
00:12:08 #37435 [verbose] > │ let v106 : UH0 = UH0_1(v36, v105) │
00:12:08 #37436 [verbose] > │ let v107 : UH0 = UH0_1(v35, v106) │
00:12:08 #37437 [verbose] > │ let v108 : UH0 = UH0_1(v34, v107) │
00:12:08 #37438 [verbose] > │ let v109 : UH0 = UH0_1(v33, v108) │
00:12:08 #37439 [verbose] > │ let v110 : UH0 = UH0_1(v32, v109) │
00:12:08 #37440 [verbose] > │ let v111 : UH0 = UH0_1(v31, v110) │
00:12:08 #37441 [verbose] > │ let v112 : UH0 = UH0_1(v30, v111) │
00:12:08 #37442 [verbose] > │ let v113 : UH0 = UH0_1(v29, v112) │
00:12:08 #37443 [verbose] > │ let v114 : UH0 = UH0_1(v28, v113) │
00:12:08 #37444 [verbose] > │ let v115 : UH0 = UH0_1(v27, v114) │
00:12:08 #37445 [verbose] > │ let v116 : UH0 = UH0_1(v26, v115) │
00:12:08 #37446 [verbose] > │ let v117 : UH0 = UH0_1(v25, v116) │
00:12:08 #37447 [verbose] > │ let v118 : UH0 = UH0_1(v24, v117) │
00:12:08 #37448 [verbose] > │ let v119 : UH0 = UH0_1(v23, v118) │
00:12:08 #37449 [verbose] > │ let v120 : UH0 = UH0_1(v22, v119) │
00:12:08 #37450 [verbose] > │ let v121 : UH0 = UH0_1(v21, v120) │
00:12:08 #37451 [verbose] > │ let v122 : UH0 = UH0_1(v20, v121) │
00:12:08 #37452 [verbose] > │ let v123 : UH0 = UH0_1(v19, v122) │
00:12:08 #37453 [verbose] > │ let v124 : UH0 = UH0_1(v18, v123) │
00:12:08 #37454 [verbose] > │ let v125 : UH0 = UH0_1(v17, v124) │
00:12:08 #37455 [verbose] > │ let v126 : UH0 = UH0_1(v16, v125) │
00:12:08 #37456 [verbose] > │ let v127 : UH0 = UH0_1(v15, v126) │
00:12:08 #37457 [verbose] > │ let v128 : UH0 = UH0_1(v14, v127) │
00:12:08 #37458 [verbose] > │ let v129 : UH0 = UH0_1(v13, v128) │
00:12:08 #37459 [verbose] > │ let v130 : UH0 = UH0_1(v12, v129) │
00:12:08 #37460 [verbose] > │ let v131 : UH0 = UH0_1(v11, v130) │
00:12:08 #37461 [verbose] > │ let v132 : UH0 = UH0_1(v10, v131) │
00:12:08 #37462 [verbose] > │ let v133 : UH0 = UH0_1(v9, v132) │
00:12:08 #37463 [verbose] > │ let v134 : UH0 = UH0_1(v8, v133) │
00:12:08 #37464 [verbose] > │ let v135 : UH0 = UH0_1(v7, v134) │
00:12:08 #37465 [verbose] > │ let v136 : UH0 = UH0_1(v6, v135) │
00:12:08 #37466 [verbose] > │ let v137 : UH0 = UH0_1(v5, v136) │
00:12:08 #37467 [verbose] > │ let v138 : (float []) = method2(v137) │
00:12:08 #37468 [verbose] > │ let v139 : float = 0.0 │
00:12:08 #37469 [verbose] > │ let v140 : float = 0.0007224452478461068 │
00:12:08 #37470 [verbose] > │ let v141 : float = 0.0014297283919934465 │
00:12:08 #37471 [verbose] > │ let v142 : float = 0.0021070055388626454 │
00:12:08 #37472 [verbose] > │ let v143 : float = 0.00274006253677335 │
00:12:08 #37473 [verbose] > │ let v144 : float = 0.0033156132912039757 │
00:12:08 #37474 [verbose] > │ let v145 : float = 0.0038215786027292415 │
00:12:08 #37475 [verbose] > │ let v146 : float = 0.004247339675607605 │
00:12:08 #37476 [verbose] > │ let v147 : float = 0.004583960976582912 │
00:12:08 #37477 [verbose] > │ let v148 : float = 0.004824377766717757 │
00:12:08 #37478 [verbose] > │ let v149 : float = 0.00496354437049027 │
00:12:08 #37479 [verbose] > │ let v150 : float = 0.004998540070400965 │
00:12:08 #37480 [verbose] > │ let v151 : float = 0.004928630404658255 │
00:12:08 #37481 [verbose] > │ let v152 : float = 0.004755282581475768 │
00:12:08 #37482 [verbose] > │ let v153 : float = 0.004482134686478519 │
00:12:08 #37483 [verbose] > │ let v154 : float = 0.0041149193294682815 │
00:12:08 #37484 [verbose] > │ let v155 : float = 0.0036613433329888666 │
00:12:08 #37485 [verbose] > │ let v156 : float = 0.0031309259876915697 │
00:12:08 #37486 [verbose] > │ let v157 : float = 0.002534799269067951 │
00:12:08 #37487 [verbose] > │ let v158 : float = 0.0018854742084416015 │
00:12:08 #37488 [verbose] > │ let v159 : float = 0.0011965783214377905 │
00:12:08 #37489 [verbose] > │ let v160 : float = 0.00048256960457257535 │
00:12:08 #37490 [verbose] > │ let v161 : float = -0.00024156689762753317 │
00:12:08 #37491 [verbose] > │ let v162 : float = -0.0009606335867685418 │
00:12:08 #37492 [verbose] > │ let v163 : float = -0.001659539265642642 │
00:12:08 #37493 [verbose] > │ let v164 : float = -0.002323615860218842 │
00:12:08 #37494 [verbose] > │ let v165 : float = -0.0029389262614623636 │
00:12:08 #37495 [verbose] > │ let v166 : float = -0.003492556826244686 │
00:12:08 #37496 [verbose] > │ let v167 : float = -0.003972888398568771 │
00:12:08 #37497 [verbose] > │ let v168 : float = -0.00436984016313259 │
00:12:08 #37498 [verbose] > │ let v169 : float = -0.004675081213427074 │
00:12:08 #37499 [verbose] > │ let v170 : float = -0.004882205394146359 │
00:12:08 #37500 [verbose] > │ let v171 : float = -0.004986865748457456 │
00:12:08 #37501 [verbose] > │ let v172 : float = -0.004986865748457456 │
00:12:08 #37502 [verbose] > │ let v173 : float = -0.004882205394146361 │
00:12:08 #37503 [verbose] > │ let v174 : float = -0.004675081213427074 │
00:12:08 #37504 [verbose] > │ let v175 : float = -0.004369840163132589 │
00:12:08 #37505 [verbose] > │ let v176 : float = -0.003972888398568774 │
00:12:08 #37506 [verbose] > │ let v177 : float = -0.0034925568262446837 │
00:12:08 #37507 [verbose] > │ let v178 : float = -0.002938926261462367 │
00:12:08 #37508 [verbose] > │ let v179 : float = -0.002323615860218846 │
00:12:08 #37509 [verbose] > │ let v180 : float = -0.0016595392656426435 │
00:12:08 #37510 [verbose] > │ let v181 : float = -0.0009606335867685414 │
00:12:08 #37511 [verbose] > │ let v182 : float = -0.00024156689762753724 │
00:12:08 #37512 [verbose] > │ let v183 : float = 0.0004825696045725713 │
00:12:08 #37513 [verbose] > │ let v184 : float = 0.0011965783214377866 │
00:12:08 #37514 [verbose] > │ let v185 : float = 0.0018854742084416021 │
00:12:08 #37515 [verbose] > │ let v186 : float = 0.002534799269067953 │
00:12:08 #37516 [verbose] > │ let v187 : float = 0.003130925987691568 │
00:12:08 #37517 [verbose] > │ let v188 : float = 0.0036613433329888622 │
00:12:08 #37518 [verbose] > │ let v189 : float = 0.0041149193294682815 │
00:12:08 #37519 [verbose] > │ let v190 : float = 0.0044821346864785195 │
00:12:08 #37520 [verbose] > │ let v191 : float = 0.004755282581475766 │
00:12:08 #37521 [verbose] > │ let v192 : float = 0.004928630404658255 │
00:12:08 #37522 [verbose] > │ let v193 : float = 0.004998540070400965 │
00:12:08 #37523 [verbose] > │ let v194 : float = 0.004963544370490271 │
00:12:08 #37524 [verbose] > │ let v195 : float = 0.004824377766717758 │
00:12:08 #37525 [verbose] > │ let v196 : float = 0.004583960976582912 │
00:12:08 #37526 [verbose] > │ let v197 : float = 0.004247339675607605 │
00:12:08 #37527 [verbose] > │ let v198 : float = 0.003821578602729245 │
00:12:08 #37528 [verbose] > │ let v199 : float = 0.0033156132912039783 │
00:12:08 #37529 [verbose] > │ let v200 : float = 0.0027400625367733585 │
00:12:08 #37530 [verbose] > │ let v201 : float = 0.0021070055388626528 │
00:12:08 #37531 [verbose] > │ let v202 : float = 0.001429728391993452 │
00:12:08 #37532 [verbose] > │ let v203 : float = 0.0007224452478461016 │
00:12:08 #37533 [verbose] > │ let v204 : float = 0.0 │
00:12:08 #37534 [verbose] > │ let v205 : UH0 = UH0_0 │
00:12:08 #37535 [verbose] > │ let v206 : UH0 = UH0_1(v204, v205) │
00:12:08 #37536 [verbose] > │ let v207 : UH0 = UH0_1(v203, v206) │
00:12:08 #37537 [verbose] > │ let v208 : UH0 = UH0_1(v202, v207) │
00:12:08 #37538 [verbose] > │ let v209 : UH0 = UH0_1(v201, v208) │
00:12:08 #37539 [verbose] > │ let v210 : UH0 = UH0_1(v200, v209) │
00:12:08 #37540 [verbose] > │ let v211 : UH0 = UH0_1(v199, v210) │
00:12:08 #37541 [verbose] > │ let v212 : UH0 = UH0_1(v198, v211) │
00:12:08 #37542 [verbose] > │ let v213 : UH0 = UH0_1(v197, v212) │
00:12:08 #37543 [verbose] > │ let v214 : UH0 = UH0_1(v196, v213) │
00:12:08 #37544 [verbose] > │ let v215 : UH0 = UH0_1(v195, v214) │
00:12:08 #37545 [verbose] > │ let v216 : UH0 = UH0_1(v194, v215) │
00:12:08 #37546 [verbose] > │ let v217 : UH0 = UH0_1(v193, v216) │
00:12:08 #37547 [verbose] > │ let v218 : UH0 = UH0_1(v192, v217) │
00:12:08 #37548 [verbose] > │ let v219 : UH0 = UH0_1(v191, v218) │
00:12:08 #37549 [verbose] > │ let v220 : UH0 = UH0_1(v190, v219) │
00:12:08 #37550 [verbose] > │ let v221 : UH0 = UH0_1(v189, v220) │
00:12:08 #37551 [verbose] > │ let v222 : UH0 = UH0_1(v188, v221) │
00:12:08 #37552 [verbose] > │ let v223 : UH0 = UH0_1(v187, v222) │
00:12:08 #37553 [verbose] > │ let v224 : UH0 = UH0_1(v186, v223) │
00:12:08 #37554 [verbose] > │ let v225 : UH0 = UH0_1(v185, v224) │
00:12:08 #37555 [verbose] > │ let v226 : UH0 = UH0_1(v184, v225) │
00:12:08 #37556 [verbose] > │ let v227 : UH0 = UH0_1(v183, v226) │
00:12:08 #37557 [verbose] > │ let v228 : UH0 = UH0_1(v182, v227) │
00:12:08 #37558 [verbose] > │ let v229 : UH0 = UH0_1(v181, v228) │
00:12:08 #37559 [verbose] > │ let v230 : UH0 = UH0_1(v180, v229) │
00:12:08 #37560 [verbose] > │ let v231 : UH0 = UH0_1(v179, v230) │
00:12:08 #37561 [verbose] > │ let v232 : UH0 = UH0_1(v178, v231) │
00:12:08 #37562 [verbose] > │ let v233 : UH0 = UH0_1(v177, v232) │
00:12:08 #37563 [verbose] > │ let v234 : UH0 = UH0_1(v176, v233) │
00:12:08 #37564 [verbose] > │ let v235 : UH0 = UH0_1(v175, v234) │
00:12:08 #37565 [verbose] > │ let v236 : UH0 = UH0_1(v174, v235) │
00:12:08 #37566 [verbose] > │ let v237 : UH0 = UH0_1(v173, v236) │
00:12:08 #37567 [verbose] > │ let v238 : UH0 = UH0_1(v172, v237) │
00:12:08 #37568 [verbose] > │ let v239 : UH0 = UH0_1(v171, v238) │
00:12:08 #37569 [verbose] > │ let v240 : UH0 = UH0_1(v170, v239) │
00:12:08 #37570 [verbose] > │ let v241 : UH0 = UH0_1(v169, v240) │
00:12:08 #37571 [verbose] > │ let v242 : UH0 = UH0_1(v168, v241) │
00:12:08 #37572 [verbose] > │ let v243 : UH0 = UH0_1(v167, v242) │
00:12:08 #37573 [verbose] > │ let v244 : UH0 = UH0_1(v166, v243) │
00:12:08 #37574 [verbose] > │ let v245 : UH0 = UH0_1(v165, v244) │
00:12:08 #37575 [verbose] > │ let v246 : UH0 = UH0_1(v164, v245) │
00:12:08 #37576 [verbose] > │ let v247 : UH0 = UH0_1(v163, v246) │
00:12:08 #37577 [verbose] > │ let v248 : UH0 = UH0_1(v162, v247) │
00:12:08 #37578 [verbose] > │ let v249 : UH0 = UH0_1(v161, v248) │
00:12:08 #37579 [verbose] > │ let v250 : UH0 = UH0_1(v160, v249) │
00:12:08 #37580 [verbose] > │ let v251 : UH0 = UH0_1(v159, v250) │
00:12:08 #37581 [verbose] > │ let v252 : UH0 = UH0_1(v158, v251) │
00:12:08 #37582 [verbose] > │ let v253 : UH0 = UH0_1(v157, v252) │
00:12:08 #37583 [verbose] > │ let v254 : UH0 = UH0_1(v156, v253) │
00:12:08 #37584 [verbose] > │ let v255 : UH0 = UH0_1(v155, v254) │
00:12:08 #37585 [verbose] > │ let v256 : UH0 = UH0_1(v154, v255) │
00:12:08 #37586 [verbose] > │ let v257 : UH0 = UH0_1(v153, v256) │
00:12:08 #37587 [verbose] > │ let v258 : UH0 = UH0_1(v152, v257) │
00:12:08 #37588 [verbose] > │ let v259 : UH0 = UH0_1(v151, v258) │
00:12:08 #37589 [verbose] > │ let v260 : UH0 = UH0_1(v150, v259) │
00:12:08 #37590 [verbose] > │ let v261 : UH0 = UH0_1(v149, v260) │
00:12:08 #37591 [verbose] > │ let v262 : UH0 = UH0_1(v148, v261) │
00:12:08 #37592 [verbose] > │ let v263 : UH0 = UH0_1(v147, v262) │
00:12:08 #37593 [verbose] > │ let v264 : UH0 = UH0_1(v146, v263) │
00:12:08 #37594 [verbose] > │ let v265 : UH0 = UH0_1(v145, v264) │
00:12:08 #37595 [verbose] > │ let v266 : UH0 = UH0_1(v144, v265) │
00:12:08 #37596 [verbose] > │ let v267 : UH0 = UH0_1(v143, v266) │
00:12:08 #37597 [verbose] > │ let v268 : UH0 = UH0_1(v142, v267) │
00:12:08 #37598 [verbose] > │ let v269 : UH0 = UH0_1(v141, v268) │
00:12:08 #37599 [verbose] > │ let v270 : UH0 = UH0_1(v140, v269) │
00:12:08 #37600 [verbose] > │ let v271 : UH0 = UH0_1(v139, v270) │
00:12:08 #37601 [verbose] > │ let v272 : (float []) = method2(v271) │
00:12:08 #37602 [verbose] > │ UH1_1(v138, v272, v4) │
00:12:08 #37603 [verbose] > │ | UH0_0 -> (* Nil *) │
00:12:08 #37604 [verbose] > │ v1 │
00:12:08 #37605 [verbose] > │ and method6 (v0 : UH1, v1 : int32) : int32 = │
00:12:08 #37606 [verbose] > │ match v0 with │
00:12:08 #37607 [verbose] > │ | UH1_1(v2, v3, v4) -> (* Cons *) │
00:12:08 #37608 [verbose] > │ let v5 : int32 = v1 + 1 │
00:12:08 #37609 [verbose] > │ method6(v4, v5) │
00:12:08 #37610 [verbose] > │ | UH1_0 -> (* Nil *) │
00:12:08 #37611 [verbose] > │ v1 │
00:12:08 #37612 [verbose] > │ and method7 (v0 : (struct ((float []) * (float [])) []), v1 : UH1, v2 : │
00:12:08 #37613 [verbose] > │ int32) : int32 = │
00:12:08 #37614 [verbose] > │ match v1 with │
00:12:08 #37615 [verbose] > │ | UH1_1(v3, v4, v5) -> (* Cons *) │
00:12:08 #37616 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:12:08 #37617 [verbose] > │ let v6 : int32 = v2 + 1 │
00:12:08 #37618 [verbose] > │ method7(v0, v5, v6) │
00:12:08 #37619 [verbose] > │ | UH1_0 -> (* Nil *) │
00:12:08 #37620 [verbose] > │ v2 │
00:12:08 #37621 [verbose] > │ and method5 (v0 : UH1) : (struct ((float []) * (float [])) []) = │
00:12:08 #37622 [verbose] > │ let v1 : int32 = 0 │
00:12:08 #37623 [verbose] > │ let v2 : int32 = method6(v0, v1) │
00:12:08 #37624 [verbose] > │ let v3 : (struct ((float []) * (float [])) []) = Array.zeroCreate<struct │
00:12:08 #37625 [verbose] > │ ((float []) * (float []))> (v2) │
00:12:08 #37626 [verbose] > │ let v4 : int32 = 0 │
00:12:08 #37627 [verbose] > │ let v5 : int32 = method7(v3, v0, v4) │
00:12:08 #37628 [verbose] > │ v3 │
00:12:08 #37629 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:12:08 #37630 [verbose] > │ []) * (float [])) [])) = │
00:12:08 #37631 [verbose] > │ let v0 : float = 0.0 │
00:12:08 #37632 [verbose] > │ let v1 : float = 1.0 │
00:12:08 #37633 [verbose] > │ let v2 : float = 2.0 │
00:12:08 #37634 [verbose] > │ let v3 : float = 3.0 │
00:12:08 #37635 [verbose] > │ let v4 : float = 4.0 │
00:12:08 #37636 [verbose] > │ let v5 : float = 5.0 │
00:12:08 #37637 [verbose] > │ let v6 : float = 6.0 │
00:12:08 #37638 [verbose] > │ let v7 : float = 7.0 │
00:12:08 #37639 [verbose] > │ let v8 : float = 8.0 │
00:12:08 #37640 [verbose] > │ let v9 : float = 9.0 │
00:12:08 #37641 [verbose] > │ let v10 : UH0 = UH0_0 │
00:12:08 #37642 [verbose] > │ let v11 : UH0 = UH0_1(v9, v10) │
00:12:08 #37643 [verbose] > │ let v12 : UH0 = UH0_1(v8, v11) │
00:12:08 #37644 [verbose] > │ let v13 : UH0 = UH0_1(v7, v12) │
00:12:08 #37645 [verbose] > │ let v14 : UH0 = UH0_1(v6, v13) │
00:12:08 #37646 [verbose] > │ let v15 : UH0 = UH0_1(v5, v14) │
00:12:08 #37647 [verbose] > │ let v16 : UH0 = UH0_1(v4, v15) │
00:12:08 #37648 [verbose] > │ let v17 : UH0 = UH0_1(v3, v16) │
00:12:08 #37649 [verbose] > │ let v18 : UH0 = UH0_1(v2, v17) │
00:12:08 #37650 [verbose] > │ let v19 : UH0 = UH0_1(v1, v18) │
00:12:08 #37651 [verbose] > │ let v20 : UH0 = UH0_1(v0, v19) │
00:12:08 #37652 [verbose] > │ let v21 : UH1 = UH1_0 │
00:12:08 #37653 [verbose] > │ let v22 : UH1 = method1(v20, v21) │
00:12:08 #37654 [verbose] > │ let v23 : (struct ((float []) * (float [])) []) = method5(v22) │
00:12:08 #37655 [verbose] > │ let struct (v24 : (float []), v25 : (float [])) = v23.[int 0] │
00:12:08 #37656 [verbose] > │ let v26 : string = $"{0}" │
00:12:08 #37657 [verbose] > │ let v27 : (struct (string * (float []) * (float [])) []) = [|struct │
00:12:08 #37658 [verbose] > │ (v26, v24, v25)|] │
00:12:08 #37659 [verbose] > │ let v28 : string = "wave" │
00:12:08 #37660 [verbose] > │ let v29 : string = "position (m)" │
00:12:08 #37661 [verbose] > │ let v30 : string = "displacement (m)" │
00:12:08 #37662 [verbose] > │ struct (v28, v29, v30, v27) │
00:12:08 #37663 [verbose] > │ method0() │
00:12:08 #37664 [verbose] > │ │
00:12:08 #37665 [verbose] > │ │
00:12:08 #37666 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:08 #37667 [verbose] >
00:12:08 #37668 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:12:08 #37669 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:12:08 #37670 [verbose] > │ ### system kinetic energy versus time 2 │
00:12:08 #37671 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:08 #37672 [verbose] >
00:12:08 #37673 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:08 #37674 [verbose] > // // test
00:12:08 #37675 [verbose] >
00:12:08 #37676 [verbose] > inl central_force f (particle_state st1) (particle_state st2) =
00:12:08 #37677 [verbose] > inl r1 = st1.pos_vec
00:12:08 #37678 [verbose] > inl r2 = st2.pos_vec
00:12:08 #37679 [verbose] > inl r21 = r2 ^-^ r1
00:12:08 #37680 [verbose] > inl r21mag = magnitude r21
00:12:08 #37681 [verbose] > f r21mag *^ r21 ^/ r21mag
00:12:08 #37682 [verbose] >
00:12:08 #37683 [verbose] > inl billiard_force k re =
00:12:08 #37684 [verbose] > inl f r =
00:12:08 #37685 [verbose] > if r >= re
00:12:08 #37686 [verbose] > then 0
00:12:08 #37687 [verbose] > else -k * (r - re)
00:12:08 #37688 [verbose] > central_force f
00:12:08 #37689 [verbose] >
00:12:08 #37690 [verbose] > type force_vector = vec
00:12:08 #37691 [verbose] > type two_body_force = particle_state -> particle_state -> force_vector
00:12:08 #37692 [verbose] >
00:12:08 #37693 [verbose] > union force t =
00:12:08 #37694 [verbose] > | ExternalForce : t * one_body_force
00:12:08 #37695 [verbose] > | InternalForce : t * t * two_body_force
00:12:08 #37696 [verbose] >
00:12:08 #37697 [verbose] > nominal multi_particle_state = stream.stream particle_state
00:12:08 #37698 [verbose] >
00:12:08 #37699 [verbose] > nominal d_multi_particle_state = stream.stream d_particle_state
00:12:08 #37700 [verbose] >
00:12:08 #37701 [verbose] > inl force_on n s force =
00:12:08 #37702 [verbose] > match force with
00:12:08 #37703 [verbose] > | ExternalForce (n0, f_one_body) =>
00:12:08 #37704 [verbose] > if n = n0
00:12:08 #37705 [verbose] > then f_one_body
00:12:08 #37706 [verbose] > else fun _ => zero_vec ()
00:12:08 #37707 [verbose] > | InternalForce (n0, n1, f_two_body) =>
00:12:08 #37708 [verbose] > if n = n0
00:12:08 #37709 [verbose] > then s |> stream.try_item n1 |> optionm.map f_two_body
00:12:08 #37710 [verbose] > elif n = n1
00:12:08 #37711 [verbose] > then s |> stream.try_item n0 |> optionm.map f_two_body
00:12:08 #37712 [verbose] > else None
00:12:08 #37713 [verbose] > |> optionm'.default_value (fun _ => zero_vec ())
00:12:08 #37714 [verbose] >
00:12:08 #37715 [verbose] > inl forces_on n (multi_particle_state sts) fs =
00:12:08 #37716 [verbose] > fs
00:12:08 #37717 [verbose] > |> listm.map (force_on n sts)
00:12:08 #37718 [verbose] >
00:12:08 #37719 [verbose] > inl newton_second_mps fs ((multi_particle_state sts) as mpst) =
00:12:08 #37720 [verbose] > inl deriv (n, st) =
00:12:08 #37721 [verbose] > newton_second_ps (forces_on n mpst fs) st
00:12:08 #37722 [verbose] > sts |> stream.indexed |> stream.map deriv |> d_multi_particle_state
00:12:08 #37723 [verbose] >
00:12:08 #37724 [verbose] > instance (+++) d_multi_particle_state =
00:12:08 #37725 [verbose] > fun (d_multi_particle_state dsts1) (d_multi_particle_state dsts2) =>
00:12:08 #37726 [verbose] > (dsts1, dsts2)
00:12:08 #37727 [verbose] > ||> stream.zip_with (+++)
00:12:08 #37728 [verbose] > |> d_multi_particle_state
00:12:08 #37729 [verbose] >
00:12:08 #37730 [verbose] > instance scale d_multi_particle_state = fun w (d_multi_particle_state dsts) =>
00:12:08 #37731 [verbose] > dsts
00:12:08 #37732 [verbose] > |> stream.map (scale w)
00:12:08 #37733 [verbose] > |> d_multi_particle_state
00:12:08 #37734 [verbose] >
00:12:08 #37735 [verbose] > instance shift multi_particle_state = fun dt dsts (multi_particle_state sts) =>
00:12:08 #37736 [verbose] > inl (d_multi_particle_state dsts) =
00:12:08 #37737 [verbose] > real
00:12:08 #37738 [verbose] > match dsts with
00:12:08 #37739 [verbose] > | d_multi_particle_state _ => dsts
00:12:08 #37740 [verbose] > (dsts, sts)
00:12:08 #37741 [verbose] > ||> stream.zip_with (shift dt)
00:12:08 #37742 [verbose] > |> stream.memoize
00:12:08 #37743 [verbose] > |> fun x => x ()
00:12:08 #37744 [verbose] > |> multi_particle_state
00:12:08 #37745 [verbose] >
00:12:08 #37746 [verbose] > inl euler_cromer_mps dt : numerical_method multi_particle_state
00:12:08 #37747 [verbose] > d_multi_particle_state =
00:12:08 #37748 [verbose] > fun deriv ((multi_particle_state sts0) as mpst0) =>
00:12:08 #37749 [verbose] > inl (multi_particle_state sts1) = euler dt deriv mpst0
00:12:08 #37750 [verbose] > (sts0, sts1)
00:12:08 #37751 [verbose] > ||> stream.zip
00:12:08 #37752 [verbose] > |> stream.map (fun ((particle_state st0), (particle_state st1)) =>
00:12:08 #37753 [verbose] > particle_state {
00:12:08 #37754 [verbose] > st1 with
00:12:08 #37755 [verbose] > pos_vec = st0.pos_vec ^+^ st1.velocity ^* dt
00:12:08 #37756 [verbose] > }
00:12:08 #37757 [verbose] > )
00:12:08 #37758 [verbose] > |> multi_particle_state
00:12:08 #37759 [verbose] >
00:12:08 #37760 [verbose] > inl update_mps (method : numerical_method multi_particle_state
00:12:08 #37761 [verbose] > d_multi_particle_state) =
00:12:08 #37762 [verbose] > newton_second_mps >> method
00:12:08 #37763 [verbose] >
00:12:08 #37764 [verbose] > inl states_mps (method : numerical_method multi_particle_state
00:12:08 #37765 [verbose] > d_multi_particle_state) =
00:12:08 #37766 [verbose] > newton_second_mps
00:12:08 #37767 [verbose] > >> method
00:12:08 #37768 [verbose] > >> (fun x (multi_particle_state y) =>
00:12:08 #37769 [verbose] > y
00:12:08 #37770 [verbose] > |> stream.memoize
00:12:08 #37771 [verbose] > |> (fun x => x ())
00:12:08 #37772 [verbose] > |> multi_particle_state |> x
00:12:08 #37773 [verbose] > )
00:12:08 #37774 [verbose] > // >> stream.iterate
00:12:08 #37775 [verbose] > >> seq.iterate'
00:12:08 #37776 [verbose] >
00:12:08 #37777 [verbose] > inl kinetic_energy (particle_state st) =
00:12:08 #37778 [verbose] > inl m = st.mass
00:12:08 #37779 [verbose] > inl v = magnitude st.velocity
00:12:08 #37780 [verbose] > 0.5 * m * v ** 2
00:12:08 #37781 [verbose] >
00:12:08 #37782 [verbose] > inl system_ke (multi_particle_state sts) =
00:12:08 #37783 [verbose] > sts
00:12:08 #37784 [verbose] > |> stream.map kinetic_energy
00:12:08 #37785 [verbose] > |> stream.sum
00:12:08 #37786 [verbose] >
00:12:08 #37787 [verbose] > inl linear_spring_pe k re (particle_state st1) (particle_state st2) =
00:12:08 #37788 [verbose] > inl r1 = st1.pos_vec
00:12:08 #37789 [verbose] > inl r2 = st2.pos_vec
00:12:08 #37790 [verbose] > inl r21 = r2 ^-^ r1
00:12:08 #37791 [verbose] > inl r21mag = magnitude r21
00:12:08 #37792 [verbose] > k * (r21mag - re) ** 2 / 2
00:12:08 #37793 [verbose] >
00:12:08 #37794 [verbose] > inl earth_surface_gravity_pe (particle_state st) =
00:12:08 #37795 [verbose] > inl g = 9.80665
00:12:08 #37796 [verbose] > inl m = st.mass
00:12:08 #37797 [verbose] > inl z = st.pos_vec.z
00:12:08 #37798 [verbose] > m * g * z
00:12:08 #37799 [verbose] >
00:12:08 #37800 [verbose] > inl ball_radius () = 0.03
00:12:08 #37801 [verbose] >
00:12:08 #37802 [verbose] > inl billiard_forces k =
00:12:08 #37803 [verbose] > [[ InternalForce (0i32, 1, billiard_force k (2 * ball_radius ())) ]]
00:12:08 #37804 [verbose] >
00:12:08 #37805 [verbose] > inl billiard_initial () =
00:12:08 #37806 [verbose] > inl ball_mass = 0.160
00:12:08 #37807 [verbose] > inl (particle_state default_particle_state') = default_particle_state ()
00:12:08 #37808 [verbose] > [[
00:12:08 #37809 [verbose] > particle_state {
00:12:08 #37810 [verbose] > default_particle_state' with
00:12:08 #37811 [verbose] > mass = ball_mass
00:12:08 #37812 [verbose] > pos_vec = zero_vec ()
00:12:08 #37813 [verbose] > velocity = 0.2 *^ i_hat ()
00:12:08 #37814 [verbose] > }
00:12:08 #37815 [verbose] > particle_state {
00:12:08 #37816 [verbose] > default_particle_state' with
00:12:08 #37817 [verbose] > mass = ball_mass
00:12:08 #37818 [verbose] > pos_vec = i_hat () ^+^ 0.02 *^ j_hat ()
00:12:08 #37819 [verbose] > velocity = zero_vec ()
00:12:08 #37820 [verbose] > }
00:12:08 #37821 [verbose] > ]]
00:12:08 #37822 [verbose] > |> stream.from_list
00:12:08 #37823 [verbose] > |> multi_particle_state
00:12:08 #37824 [verbose] >
00:12:08 #37825 [verbose] > inl billiard_states ~n_method k dt =
00:12:08 #37826 [verbose] > states_mps (n_method dt) (billiard_forces k) (billiard_initial ())
00:12:08 #37827 [verbose] >
00:12:08 #37828 [verbose] > inl billiard_states_finite n_method k dt =
00:12:08 #37829 [verbose] > billiard_states n_method k dt
00:12:08 #37830 [verbose] > >> Some
00:12:08 #37831 [verbose] > |> seq.take_while_ (fun (multi_particle_state mpst) (_ : i32) =>
00:12:08 #37832 [verbose] > match mpst |> stream.try_item 0i32 with
00:12:08 #37833 [verbose] > | Some st =>
00:12:08 #37834 [verbose] > st.time <= 10
00:12:08 #37835 [verbose] > | None => false
00:12:08 #37836 [verbose] > )
00:12:08 #37837 [verbose] >
00:12:08 #37838 [verbose] > inl momentum (particle_state st) =
00:12:08 #37839 [verbose] > inl m = st.mass
00:12:08 #37840 [verbose] > inl v = st.velocity
00:12:08 #37841 [verbose] > m *^ v
00:12:08 #37842 [verbose] >
00:12:08 #37843 [verbose] > inl system_p (multi_particle_state sts) =
00:12:08 #37844 [verbose] > sts
00:12:08 #37845 [verbose] > |> stream.map momentum
00:12:08 #37846 [verbose] > |> stream.fold (^+^) (zero_vec ())
00:12:08 #37847 [verbose] >
00:12:08 #37848 [verbose] > inl time_ke_ec_x, time_ke_ec_y =
00:12:08 #37849 [verbose] > billiard_states_finite euler_cromer_mps 30 0.03
00:12:08 #37850 [verbose] > |> listm.map (fun (multi_particle_state mpst) =>
00:12:08 #37851 [verbose] > mpst |> stream.try_item 0i32
00:12:08 #37852 [verbose] > |> optionm.map (fun st =>
00:12:08 #37853 [verbose] > st.time, system_ke (multi_particle_state mpst)
00:12:08 #37854 [verbose] > )
00:12:08 #37855 [verbose] > )
00:12:08 #37856 [verbose] > // |> stream.to_list
00:12:08 #37857 [verbose] > |> listm'.choose id
00:12:08 #37858 [verbose] > |> listm'.unzip
00:12:08 #37859 [verbose] >
00:12:08 #37860 [verbose] > inl time_ke_rk4_x, time_ke_rk4_y =
00:12:08 #37861 [verbose] > billiard_states_finite runge_kutta_4 30 0.03
00:12:08 #37862 [verbose] > |> listm.map (fun (multi_particle_state mpst) =>
00:12:08 #37863 [verbose] > mpst |> stream.try_item 0i32
00:12:08 #37864 [verbose] > |> optionm.map (fun st =>
00:12:08 #37865 [verbose] > st.time, system_ke (multi_particle_state mpst)
00:12:08 #37866 [verbose] > )
00:12:08 #37867 [verbose] > )
00:12:08 #37868 [verbose] > // |> stream.to_list
00:12:08 #37869 [verbose] > |> listm'.choose id
00:12:08 #37870 [verbose] > |> listm'.unzip
00:12:08 #37871 [verbose] >
00:12:08 #37872 [verbose] > inl time_ke_ec_x : a i32 _ = time_ke_ec_x |> listm.toArray
00:12:08 #37873 [verbose] > inl time_ke_ec_y : a i32 _ = time_ke_ec_y |> listm.toArray
00:12:08 #37874 [verbose] >
00:12:08 #37875 [verbose] > inl time_ke_rk4_x : a i32 _ = time_ke_rk4_x |> listm.toArray
00:12:08 #37876 [verbose] > inl time_ke_rk4_y : a i32 _ = time_ke_rk4_y |> listm.toArray
00:12:08 #37877 [verbose] >
00:12:08 #37878 [verbose] > "system kinetic energy versus time",
00:12:08 #37879 [verbose] > "time (s)",
00:12:08 #37880 [verbose] > "system kinetic energy (j)",
00:12:08 #37881 [verbose] > ;[[
00:12:08 #37882 [verbose] > "euler-cromer", time_ke_ec_x, time_ke_ec_y
00:12:08 #37883 [verbose] > "runge-kutta 4", time_ke_rk4_x, time_ke_rk4_y
00:12:08 #37884 [verbose] > ]]
00:12:08 #37885 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\68aab690c7133a96383cef1713571d7b8d6aa8564f5ffb79ede872f1092982cb\main.spi
00:12:10 #37886 [verbose] >
00:12:10 #37887 [verbose] > ╭─[ 2.22s - return value ]─────────────────────────────────────────────────────╮
00:12:10 #37888 [verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480" │
00:12:10 #37889 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:12:10 #37890 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:12:10 #37891 [verbose] > │ stroke="none"/> │
00:12:10 #37892 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:12:10 #37893 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:12:10 #37894 [verbose] > │ fill="#FFFFFF"> │
00:12:10 #37895 [verbose] > │ system kinetic energy versus time │
00:12:10 #37896 [verbose] > │ </text> │
00:12:10 #37897 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │
00:12:10 #37898 [verbose] > │ y2="75"/> │
00:12:10 #37899 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:12:10 #37900 [verbose] > │ y2="75"/> │
00:12:10 #37901 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │
00:12:10 #37902 [verbose] > │ y2="75"/> │
00:12:10 #37903 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │
00:12:10 #37904 [verbose] > │ y2="75"/> │
00:12:10 #37905 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1... │
00:12:10 #37906 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:10 #37907 [verbose] >
00:12:11 #37908 [verbose] > ╭─[ 2.23s - stdout ]───────────────────────────────────────────────────────────╮
00:12:11 #37909 [verbose] > │ type UH0 = │
00:12:11 #37910 [verbose] > │ | UH0_0 of float * float * float * float * float * float * float * float │
00:12:11 #37911 [verbose] > │ * float * (unit -> UH0) │
00:12:11 #37912 [verbose] > │ | UH0_1 │
00:12:11 #37913 [verbose] > │ and UH1 = │
00:12:11 #37914 [verbose] > │ | UH1_0 of float * float * float * float * float * float * float * float │
00:12:11 #37915 [verbose] > │ * float * (unit -> UH1) │
00:12:11 #37916 [verbose] > │ | UH1_1 │
00:12:11 #37917 [verbose] > │ and [<Struct>] US0 = │
00:12:11 #37918 [verbose] > │ | US0_0 of f0_0 : (unit -> UH0) │
00:12:11 #37919 [verbose] > │ | US0_1 of f1_0 : UH0 │
00:12:11 #37920 [verbose] > │ and Mut0 = {mutable l0 : US0} │
00:12:11 #37921 [verbose] > │ and UH2 = │
00:12:11 #37922 [verbose] > │ | UH2_0 of float * float * float * float * float * float * float * float │
00:12:11 #37923 [verbose] > │ * float * float * float * float * float * float * float * float * float * │
00:12:11 #37924 [verbose] > │ float * (unit -> UH2) │
00:12:11 #37925 [verbose] > │ | UH2_1 │
00:12:11 #37926 [verbose] > │ and UH3 = │
00:12:11 #37927 [verbose] > │ | UH3_0 of int32 * float * float * float * float * float * float * float │
00:12:11 #37928 [verbose] > │ * float * float * (unit -> UH3) │
00:12:11 #37929 [verbose] > │ | UH3_1 │
00:12:11 #37930 [verbose] > │ and [<Struct>] US1 = │
00:12:11 #37931 [verbose] > │ | US1_0 of f0_0 : (struct (float * float * float * float * float * float │
00:12:11 #37932 [verbose] > │ * float * float * float) -> struct (float * float * float)) │
00:12:11 #37933 [verbose] > │ | US1_1 │
00:12:11 #37934 [verbose] > │ and [<Struct>] US2 = │
00:12:11 #37935 [verbose] > │ | US2_0 of f0_0 : float * f0_1 : float * f0_2 : float * f0_3 : float * │
00:12:11 #37936 [verbose] > │ f0_4 : float * f0_5 : float * f0_6 : float * f0_7 : float * f0_8 : float │
00:12:11 #37937 [verbose] > │ | US2_1 │
00:12:11 #37938 [verbose] > │ and UH4 = │
00:12:11 #37939 [verbose] > │ | UH4_0 │
00:12:11 #37940 [verbose] > │ | UH4_1 of UH0 * UH4 │
00:12:11 #37941 [verbose] > │ and UH5 = │
00:12:11 #37942 [verbose] > │ | UH5_0 │
00:12:11 #37943 [verbose] > │ | UH5_1 of int32 * UH5 │
00:12:11 #37944 [verbose] > │ and [<Struct>] US3 = │
00:12:11 #37945 [verbose] > │ | US3_0 of f0_0 : float * f0_1 : float │
00:12:11 #37946 [verbose] > │ | US3_1 │
00:12:11 #37947 [verbose] > │ and UH6 = │
00:12:11 #37948 [verbose] > │ | UH6_0 │
00:12:11 #37949 [verbose] > │ | UH6_1 of US3 * UH6 │
00:12:11 #37950 [verbose] > │ and UH7 = │
00:12:11 #37951 [verbose] > │ | UH7_0 of float * (unit -> UH7) │
00:12:11 #37952 [verbose] > │ | UH7_1 │
00:12:11 #37953 [verbose] > │ and UH8 = │
00:12:11 #37954 [verbose] > │ | UH8_0 │
00:12:11 #37955 [verbose] > │ | UH8_1 of float * float * UH8 │
00:12:11 #37956 [verbose] > │ and UH9 = │
00:12:11 #37957 [verbose] > │ | UH9_0 │
00:12:11 #37958 [verbose] > │ | UH9_1 of float * UH9 │
00:12:11 #37959 [verbose] > │ let rec closure3 (v0 : float, v1 : (unit -> UH0), v2 : (unit -> UH1)) () : │
00:12:11 #37960 [verbose] > │ UH0 = │
00:12:11 #37961 [verbose] > │ let v3 : UH1 = v2 () │
00:12:11 #37962 [verbose] > │ let v4 : UH0 = v1 () │
00:12:11 #37963 [verbose] > │ match v3 with │
00:12:11 #37964 [verbose] > │ | UH1_0(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (* StreamCons *) │
00:12:11 #37965 [verbose] > │ match v4 with │
00:12:11 #37966 [verbose] > │ | UH0_0(v15, v16, v17, v18, v19, v20, v21, v22, v23, v24) -> (* │
00:12:11 #37967 [verbose] > │ StreamCons *) │
00:12:11 #37968 [verbose] > │ let v25 : float = v10 * v0 │
00:12:11 #37969 [verbose] > │ let v26 : float = v20 + v25 │
00:12:11 #37970 [verbose] > │ let v27 : float = v0 * v7 │
00:12:11 #37971 [verbose] > │ let v28 : float = v0 * v8 │
00:12:11 #37972 [verbose] > │ let v29 : float = v0 * v9 │
00:12:11 #37973 [verbose] > │ let v30 : float = v17 + v27 │
00:12:11 #37974 [verbose] > │ let v31 : float = v18 + v28 │
00:12:11 #37975 [verbose] > │ let v32 : float = v19 + v29 │
00:12:11 #37976 [verbose] > │ let v33 : float = v0 * v11 │
00:12:11 #37977 [verbose] > │ let v34 : float = v0 * v12 │
00:12:11 #37978 [verbose] > │ let v35 : float = v0 * v13 │
00:12:11 #37979 [verbose] > │ let v36 : float = v21 + v33 │
00:12:11 #37980 [verbose] > │ let v37 : float = v22 + v34 │
00:12:11 #37981 [verbose] > │ let v38 : float = v23 + v35 │
00:12:11 #37982 [verbose] > │ let v39 : (unit -> UH0) = closure3(v0, v24, v14) │
00:12:11 #37983 [verbose] > │ UH0_0(v15, v16, v30, v31, v32, v26, v36, v37, v38, v39) │
00:12:11 #37984 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #37985 [verbose] > │ UH0_1 │
00:12:11 #37986 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #37987 [verbose] > │ UH0_1 │
00:12:11 #37988 [verbose] > │ and closure4 (v0 : UH0) () : UH0 = │
00:12:11 #37989 [verbose] > │ v0 │
00:12:11 #37990 [verbose] > │ and closure5 (v0 : UH0, v1 : Mut0) () : UH0 = │
00:12:11 #37991 [verbose] > │ let v2 : US0 = v1.l0 │
00:12:11 #37992 [verbose] > │ match v2 with │
00:12:11 #37993 [verbose] > │ | US0_1(v3) -> (* Computed *) │
00:12:11 #37994 [verbose] > │ v3 │
00:12:11 #37995 [verbose] > │ | US0_0(v4) -> (* NotComputed *) │
00:12:11 #37996 [verbose] > │ let v5 : UH0 = v4 () │
00:12:11 #37997 [verbose] > │ let v20 : UH0 = │
00:12:11 #37998 [verbose] > │ match v5 with │
00:12:11 #37999 [verbose] > │ | UH0_0(v7, v8, v9, v10, v11, v12, v13, v14, v15, v16) -> (* │
00:12:11 #38000 [verbose] > │ StreamCons *) │
00:12:11 #38001 [verbose] > │ let v17 : (unit -> UH0) = method1(v0, v16) │
00:12:11 #38002 [verbose] > │ UH0_0(v7, v8, v9, v10, v11, v12, v13, v14, v15, v17) │
00:12:11 #38003 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38004 [verbose] > │ UH0_1 │
00:12:11 #38005 [verbose] > │ let v21 : US0 = US0_1(v20) │
00:12:11 #38006 [verbose] > │ v1.l0 <- v21 │
00:12:11 #38007 [verbose] > │ v20 │
00:12:11 #38008 [verbose] > │ and method1 (v0 : UH0, v1 : (unit -> UH0)) : (unit -> UH0) = │
00:12:11 #38009 [verbose] > │ let v2 : US0 = US0_0(v1) │
00:12:11 #38010 [verbose] > │ let v3 : Mut0 = {l0 = v2} : Mut0 │
00:12:11 #38011 [verbose] > │ closure5(v0, v3) │
00:12:11 #38012 [verbose] > │ and closure6 (v0 : (unit -> UH0), v1 : (unit -> UH0)) () : UH2 = │
00:12:11 #38013 [verbose] > │ let v2 : UH0 = v1 () │
00:12:11 #38014 [verbose] > │ let v3 : UH0 = v0 () │
00:12:11 #38015 [verbose] > │ match v2 with │
00:12:11 #38016 [verbose] > │ | UH0_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons *) │
00:12:11 #38017 [verbose] > │ match v3 with │
00:12:11 #38018 [verbose] > │ | UH0_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (* │
00:12:11 #38019 [verbose] > │ StreamCons *) │
00:12:11 #38020 [verbose] > │ let v24 : (unit -> UH2) = closure6(v23, v13) │
00:12:11 #38021 [verbose] > │ UH2_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v14, v15, v16, v17, │
00:12:11 #38022 [verbose] > │ v18, v19, v20, v21, v22, v24) │
00:12:11 #38023 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38024 [verbose] > │ UH2_1 │
00:12:11 #38025 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38026 [verbose] > │ UH2_1 │
00:12:11 #38027 [verbose] > │ and closure7 (v0 : UH0) () : UH0 = │
00:12:11 #38028 [verbose] > │ v0 │
00:12:11 #38029 [verbose] > │ and method2 (v0 : float, v1 : UH2, v2 : UH0) : UH0 = │
00:12:11 #38030 [verbose] > │ match v1 with │
00:12:11 #38031 [verbose] > │ | UH2_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, │
00:12:11 #38032 [verbose] > │ v17, v18, v19, v20, v21) -> (* StreamCons *) │
00:12:11 #38033 [verbose] > │ let v22 : UH2 = v21 () │
00:12:11 #38034 [verbose] > │ let v23 : UH0 = method2(v0, v22, v2) │
00:12:11 #38035 [verbose] > │ let v24 : float = v0 * v18 │
00:12:11 #38036 [verbose] > │ let v25 : float = v0 * v19 │
00:12:11 #38037 [verbose] > │ let v26 : float = v0 * v20 │
00:12:11 #38038 [verbose] > │ let v27 : float = v5 + v24 │
00:12:11 #38039 [verbose] > │ let v28 : float = v6 + v25 │
00:12:11 #38040 [verbose] > │ let v29 : float = v7 + v26 │
00:12:11 #38041 [verbose] > │ let v30 : (unit -> UH0) = closure7(v23) │
00:12:11 #38042 [verbose] > │ UH0_0(v12, v13, v27, v28, v29, v17, v18, v19, v20, v30) │
00:12:11 #38043 [verbose] > │ | UH2_1 -> (* StreamNil *) │
00:12:11 #38044 [verbose] > │ v2 │
00:12:11 #38045 [verbose] > │ and closure2 (v0 : float, v1 : (UH0 -> UH1)) (v2 : UH0) : UH0 = │
00:12:11 #38046 [verbose] > │ let v3 : UH1 = v1 v2 │
00:12:11 #38047 [verbose] > │ let v45 : UH0 = │
00:12:11 #38048 [verbose] > │ match v3 with │
00:12:11 #38049 [verbose] > │ | UH1_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons │
00:12:11 #38050 [verbose] > │ *) │
00:12:11 #38051 [verbose] > │ match v2 with │
00:12:11 #38052 [verbose] > │ | UH0_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (* │
00:12:11 #38053 [verbose] > │ StreamCons *) │
00:12:11 #38054 [verbose] > │ let v24 : float = v9 * v0 │
00:12:11 #38055 [verbose] > │ let v25 : float = v19 + v24 │
00:12:11 #38056 [verbose] > │ let v26 : float = v0 * v6 │
00:12:11 #38057 [verbose] > │ let v27 : float = v0 * v7 │
00:12:11 #38058 [verbose] > │ let v28 : float = v0 * v8 │
00:12:11 #38059 [verbose] > │ let v29 : float = v16 + v26 │
00:12:11 #38060 [verbose] > │ let v30 : float = v17 + v27 │
00:12:11 #38061 [verbose] > │ let v31 : float = v18 + v28 │
00:12:11 #38062 [verbose] > │ let v32 : float = v0 * v10 │
00:12:11 #38063 [verbose] > │ let v33 : float = v0 * v11 │
00:12:11 #38064 [verbose] > │ let v34 : float = v0 * v12 │
00:12:11 #38065 [verbose] > │ let v35 : float = v20 + v32 │
00:12:11 #38066 [verbose] > │ let v36 : float = v21 + v33 │
00:12:11 #38067 [verbose] > │ let v37 : float = v22 + v34 │
00:12:11 #38068 [verbose] > │ let v38 : (unit -> UH0) = closure3(v0, v23, v13) │
00:12:11 #38069 [verbose] > │ UH0_0(v14, v15, v29, v30, v31, v25, v35, v36, v37, v38) │
00:12:11 #38070 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38071 [verbose] > │ UH0_1 │
00:12:11 #38072 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38073 [verbose] > │ UH0_1 │
00:12:11 #38074 [verbose] > │ let v46 : (unit -> UH0) = closure4(v45) │
00:12:11 #38075 [verbose] > │ let v47 : (unit -> UH0) = method1(v45, v46) │
00:12:11 #38076 [verbose] > │ let v48 : UH0 = v47 () │
00:12:11 #38077 [verbose] > │ let v76 : UH2 = │
00:12:11 #38078 [verbose] > │ match v2 with │
00:12:11 #38079 [verbose] > │ | UH0_0(v49, v50, v51, v52, v53, v54, v55, v56, v57, v58) -> (* │
00:12:11 #38080 [verbose] > │ StreamCons *) │
00:12:11 #38081 [verbose] > │ match v48 with │
00:12:11 #38082 [verbose] > │ | UH0_0(v59, v60, v61, v62, v63, v64, v65, v66, v67, v68) -> (* │
00:12:11 #38083 [verbose] > │ StreamCons *) │
00:12:11 #38084 [verbose] > │ let v69 : (unit -> UH2) = closure6(v68, v58) │
00:12:11 #38085 [verbose] > │ UH2_0(v49, v50, v51, v52, v53, v54, v55, v56, v57, v59, v60, │
00:12:11 #38086 [verbose] > │ v61, v62, v63, v64, v65, v66, v67, v69) │
00:12:11 #38087 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38088 [verbose] > │ UH2_1 │
00:12:11 #38089 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38090 [verbose] > │ UH2_1 │
00:12:11 #38091 [verbose] > │ let v77 : UH0 = UH0_1 │
00:12:11 #38092 [verbose] > │ let v78 : UH0 = method2(v0, v76, v77) │
00:12:11 #38093 [verbose] > │ v78 │
00:12:11 #38094 [verbose] > │ and closure1 (v0 : float) (v1 : (UH0 -> UH1)) : (UH0 -> UH0) = │
00:12:11 #38095 [verbose] > │ closure2(v0, v1) │
00:12:11 #38096 [verbose] > │ and closure0 () (v0 : float) : ((UH0 -> UH1) -> (UH0 -> UH0)) = │
00:12:11 #38097 [verbose] > │ closure1(v0) │
00:12:11 #38098 [verbose] > │ and closure9 (v0 : UH3) () : UH3 = │
00:12:11 #38099 [verbose] > │ v0 │
00:12:11 #38100 [verbose] > │ and method3 (v0 : UH0, v1 : UH3, v2 : int32) : struct (UH3 * int32) = │
00:12:11 #38101 [verbose] > │ match v0 with │
00:12:11 #38102 [verbose] > │ | UH0_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* StreamCons *) │
00:12:11 #38103 [verbose] > │ let v13 : int32 = v2 + 1 │
00:12:11 #38104 [verbose] > │ let v14 : UH0 = v12 () │
00:12:11 #38105 [verbose] > │ let v15 : (unit -> UH3) = closure9(v1) │
00:12:11 #38106 [verbose] > │ let v16 : UH3 = UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v15) │
00:12:11 #38107 [verbose] > │ method3(v14, v16, v13) │
00:12:11 #38108 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38109 [verbose] > │ struct (v1, v2) │
00:12:11 #38110 [verbose] > │ and closure10 (v0 : UH3) () : UH3 = │
00:12:11 #38111 [verbose] > │ v0 │
00:12:11 #38112 [verbose] > │ and method4 (v0 : UH3, v1 : UH3) : UH3 = │
00:12:11 #38113 [verbose] > │ match v0 with │
00:12:11 #38114 [verbose] > │ | UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* StreamCons │
00:12:11 #38115 [verbose] > │ *) │
00:12:11 #38116 [verbose] > │ let v13 : UH3 = v12 () │
00:12:11 #38117 [verbose] > │ let v14 : (unit -> UH3) = closure10(v1) │
00:12:11 #38118 [verbose] > │ let v15 : UH3 = UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v14) │
00:12:11 #38119 [verbose] > │ method4(v13, v15) │
00:12:11 #38120 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:11 #38121 [verbose] > │ v1 │
00:12:11 #38122 [verbose] > │ and method6 (v0 : int32, v1 : UH0) : US2 = │
00:12:11 #38123 [verbose] > │ match v1 with │
00:12:11 #38124 [verbose] > │ | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* StreamCons *) │
00:12:11 #38125 [verbose] > │ let v12 : bool = v0 <= 0 │
00:12:11 #38126 [verbose] > │ if v12 then │
00:12:11 #38127 [verbose] > │ US2_0(v2, v3, v4, v5, v6, v7, v8, v9, v10) │
00:12:11 #38128 [verbose] > │ else │
00:12:11 #38129 [verbose] > │ let v14 : int32 = v0 - 1 │
00:12:11 #38130 [verbose] > │ let v15 : UH0 = v11 () │
00:12:11 #38131 [verbose] > │ method6(v14, v15) │
00:12:11 #38132 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38133 [verbose] > │ US2_1 │
00:12:11 #38134 [verbose] > │ and closure11 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, │
00:12:11 #38135 [verbose] > │ v5 : float, v6 : float, v7 : float, v8 : float) struct (v9 : float, v10 : │
00:12:11 #38136 [verbose] > │ float, v11 : float, v12 : float, v13 : float, v14 : float, v15 : float, v16 │
00:12:11 #38137 [verbose] > │ : float, v17 : float) : struct (float * float * float) = │
00:12:11 #38138 [verbose] > │ let v18 : float = -1.0 * v2 │
00:12:11 #38139 [verbose] > │ let v19 : float = -1.0 * v3 │
00:12:11 #38140 [verbose] > │ let v20 : float = -1.0 * v4 │
00:12:11 #38141 [verbose] > │ let v21 : float = v11 + v18 │
00:12:11 #38142 [verbose] > │ let v22 : float = v12 + v19 │
00:12:11 #38143 [verbose] > │ let v23 : float = v13 + v20 │
00:12:11 #38144 [verbose] > │ let v24 : float = v21 * v21 │
00:12:11 #38145 [verbose] > │ let v25 : float = v22 * v22 │
00:12:11 #38146 [verbose] > │ let v26 : float = v24 + v25 │
00:12:11 #38147 [verbose] > │ let v27 : float = v23 * v23 │
00:12:11 #38148 [verbose] > │ let v28 : float = v26 + v27 │
00:12:11 #38149 [verbose] > │ let v29 : float = sqrt v28 │
00:12:11 #38150 [verbose] > │ let v30 : bool = v29 >= 0.06 │
00:12:11 #38151 [verbose] > │ let v33 : float = │
00:12:11 #38152 [verbose] > │ if v30 then │
00:12:11 #38153 [verbose] > │ 0.0 │
00:12:11 #38154 [verbose] > │ else │
00:12:11 #38155 [verbose] > │ let v31 : float = v29 - 0.06 │
00:12:11 #38156 [verbose] > │ let v32 : float = -30.0 * v31 │
00:12:11 #38157 [verbose] > │ v32 │
00:12:11 #38158 [verbose] > │ let v34 : float = v33 * v21 │
00:12:11 #38159 [verbose] > │ let v35 : float = v33 * v22 │
00:12:11 #38160 [verbose] > │ let v36 : float = v33 * v23 │
00:12:11 #38161 [verbose] > │ let v37 : float = v34 / v29 │
00:12:11 #38162 [verbose] > │ let v38 : float = v35 / v29 │
00:12:11 #38163 [verbose] > │ let v39 : float = v36 / v29 │
00:12:11 #38164 [verbose] > │ struct (v37, v38, v39) │
00:12:11 #38165 [verbose] > │ and closure12 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 │
00:12:11 #38166 [verbose] > │ : float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float * │
00:12:11 #38167 [verbose] > │ float * float) = │
00:12:11 #38168 [verbose] > │ struct (0.0, 0.0, 0.0) │
00:12:11 #38169 [verbose] > │ and closure13 (v0 : UH1) () : UH1 = │
00:12:11 #38170 [verbose] > │ v0 │
00:12:11 #38171 [verbose] > │ and method5 (v0 : UH0, v1 : UH3, v2 : UH1) : UH1 = │
00:12:11 #38172 [verbose] > │ match v1 with │
00:12:11 #38173 [verbose] > │ | UH3_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons │
00:12:11 #38174 [verbose] > │ *) │
00:12:11 #38175 [verbose] > │ let v14 : UH3 = v13 () │
00:12:11 #38176 [verbose] > │ let v15 : UH1 = method5(v0, v14, v2) │
00:12:11 #38177 [verbose] > │ let v16 : bool = v3 = 0 │
00:12:11 #38178 [verbose] > │ let v52 : US1 = │
00:12:11 #38179 [verbose] > │ if v16 then │
00:12:11 #38180 [verbose] > │ let v17 : int32 = 1 │
00:12:11 #38181 [verbose] > │ let v18 : US2 = method6(v17, v0) │
00:12:11 #38182 [verbose] > │ match v18 with │
00:12:11 #38183 [verbose] > │ | US2_1 -> (* None *) │
00:12:11 #38184 [verbose] > │ US1_1 │
00:12:11 #38185 [verbose] > │ | US2_0(v19, v20, v21, v22, v23, v24, v25, v26, v27) -> (* │
00:12:11 #38186 [verbose] > │ Some *) │
00:12:11 #38187 [verbose] > │ let v28 : (struct (float * float * float * float * float │
00:12:11 #38188 [verbose] > │ * float * float * float * float) -> struct (float * float * float)) = │
00:12:11 #38189 [verbose] > │ closure11(v19, v20, v21, v22, v23, v24, v25, v26, v27) │
00:12:11 #38190 [verbose] > │ US1_0(v28) │
00:12:11 #38191 [verbose] > │ else │
00:12:11 #38192 [verbose] > │ let v33 : bool = v3 = 1 │
00:12:11 #38193 [verbose] > │ if v33 then │
00:12:11 #38194 [verbose] > │ let v34 : int32 = 0 │
00:12:11 #38195 [verbose] > │ let v35 : US2 = method6(v34, v0) │
00:12:11 #38196 [verbose] > │ match v35 with │
00:12:11 #38197 [verbose] > │ | US2_1 -> (* None *) │
00:12:11 #38198 [verbose] > │ US1_1 │
00:12:11 #38199 [verbose] > │ | US2_0(v36, v37, v38, v39, v40, v41, v42, v43, v44) -> │
00:12:11 #38200 [verbose] > │ (* Some *) │
00:12:11 #38201 [verbose] > │ let v45 : (struct (float * float * float * float * │
00:12:11 #38202 [verbose] > │ float * float * float * float * float) -> struct (float * float * float)) = │
00:12:11 #38203 [verbose] > │ closure11(v36, v37, v38, v39, v40, v41, v42, v43, v44) │
00:12:11 #38204 [verbose] > │ US1_0(v45) │
00:12:11 #38205 [verbose] > │ else │
00:12:11 #38206 [verbose] > │ US1_1 │
00:12:11 #38207 [verbose] > │ let v56 : (struct (float * float * float * float * float * float * │
00:12:11 #38208 [verbose] > │ float * float * float) -> struct (float * float * float)) = │
00:12:11 #38209 [verbose] > │ match v52 with │
00:12:11 #38210 [verbose] > │ | US1_1 -> (* None *) │
00:12:11 #38211 [verbose] > │ closure12() │
00:12:11 #38212 [verbose] > │ | US1_0(v53) -> (* Some *) │
00:12:11 #38213 [verbose] > │ v53 │
00:12:11 #38214 [verbose] > │ let struct (v57 : float, v58 : float, v59 : float) = v56 struct (v4, │
00:12:11 #38215 [verbose] > │ v5, v6, v7, v8, v9, v10, v11, v12) │
00:12:11 #38216 [verbose] > │ let v60 : float = v57 / v5 │
00:12:11 #38217 [verbose] > │ let v61 : float = v58 / v5 │
00:12:11 #38218 [verbose] > │ let v62 : float = v59 / v5 │
00:12:11 #38219 [verbose] > │ let v63 : (unit -> UH1) = closure13(v15) │
00:12:11 #38220 [verbose] > │ UH1_0(0.0, 0.0, v10, v11, v12, 1.0, v60, v61, v62, v63) │
00:12:11 #38221 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:11 #38222 [verbose] > │ v2 │
00:12:11 #38223 [verbose] > │ and closure8 () (v0 : UH0) : UH1 = │
00:12:11 #38224 [verbose] > │ let v1 : UH3 = UH3_1 │
00:12:11 #38225 [verbose] > │ let v2 : int32 = 0 │
00:12:11 #38226 [verbose] > │ let struct (v3 : UH3, v4 : int32) = method3(v0, v1, v2) │
00:12:11 #38227 [verbose] > │ let v5 : UH3 = UH3_1 │
00:12:11 #38228 [verbose] > │ let v6 : UH3 = method4(v3, v5) │
00:12:11 #38229 [verbose] > │ let v7 : UH1 = UH1_1 │
00:12:11 #38230 [verbose] > │ let v8 : UH1 = method5(v0, v6, v7) │
00:12:11 #38231 [verbose] > │ v8 │
00:12:11 #38232 [verbose] > │ and method8 (v0 : int32, v1 : int32) : UH5 = │
00:12:11 #38233 [verbose] > │ let v2 : bool = v1 < v0 │
00:12:11 #38234 [verbose] > │ if v2 then │
00:12:11 #38235 [verbose] > │ let v3 : int32 = v1 + 1 │
00:12:11 #38236 [verbose] > │ let v4 : UH5 = method8(v0, v3) │
00:12:11 #38237 [verbose] > │ UH5_1(v1, v4) │
00:12:11 #38238 [verbose] > │ else │
00:12:11 #38239 [verbose] > │ UH5_0 │
00:12:11 #38240 [verbose] > │ and closure15 () () : UH0 = │
00:12:11 #38241 [verbose] > │ UH0_1 │
00:12:11 #38242 [verbose] > │ and closure14 () () : UH0 = │
00:12:11 #38243 [verbose] > │ let v0 : (unit -> UH0) = closure15() │
00:12:11 #38244 [verbose] > │ UH0_0(0.0, 0.16, 1.0, 0.02, 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:11 #38245 [verbose] > │ and method9 (v0 : (UH0 -> UH0), v1 : UH5, v2 : UH0) : UH0 = │
00:12:11 #38246 [verbose] > │ match v1 with │
00:12:11 #38247 [verbose] > │ | UH5_1(v3, v4) -> (* Cons *) │
00:12:11 #38248 [verbose] > │ let v5 : (unit -> UH0) = closure4(v2) │
00:12:11 #38249 [verbose] > │ let v6 : (unit -> UH0) = method1(v2, v5) │
00:12:11 #38250 [verbose] > │ let v7 : UH0 = v6 () │
00:12:11 #38251 [verbose] > │ let v8 : UH0 = v0 v7 │
00:12:11 #38252 [verbose] > │ method9(v0, v4, v8) │
00:12:11 #38253 [verbose] > │ | UH5_0 -> (* Nil *) │
00:12:11 #38254 [verbose] > │ v2 │
00:12:11 #38255 [verbose] > │ and method10 (v0 : UH4, v1 : UH4) : UH4 = │
00:12:11 #38256 [verbose] > │ match v0 with │
00:12:11 #38257 [verbose] > │ | UH4_1(v2, v3) -> (* Cons *) │
00:12:11 #38258 [verbose] > │ let v4 : UH4 = UH4_1(v2, v1) │
00:12:11 #38259 [verbose] > │ method10(v3, v4) │
00:12:11 #38260 [verbose] > │ | UH4_0 -> (* Nil *) │
00:12:11 #38261 [verbose] > │ v1 │
00:12:11 #38262 [verbose] > │ and method7 (v0 : (UH0 -> UH0), v1 : UH4, v2 : int32) : UH4 = │
00:12:11 #38263 [verbose] > │ let v3 : int32 = 0 │
00:12:11 #38264 [verbose] > │ let v4 : UH5 = method8(v2, v3) │
00:12:11 #38265 [verbose] > │ let v5 : float = 0.0 │
00:12:11 #38266 [verbose] > │ let v6 : float = 0.16 │
00:12:11 #38267 [verbose] > │ let v7 : float = 0.0 │
00:12:11 #38268 [verbose] > │ let v8 : float = 0.0 │
00:12:11 #38269 [verbose] > │ let v9 : float = 0.0 │
00:12:11 #38270 [verbose] > │ let v10 : float = 0.0 │
00:12:11 #38271 [verbose] > │ let v11 : float = 0.2 │
00:12:11 #38272 [verbose] > │ let v12 : float = 0.0 │
00:12:11 #38273 [verbose] > │ let v13 : float = 0.0 │
00:12:11 #38274 [verbose] > │ let v14 : (unit -> UH0) = closure14() │
00:12:11 #38275 [verbose] > │ let v15 : UH0 = UH0_0(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) │
00:12:11 #38276 [verbose] > │ let v16 : UH0 = method9(v0, v4, v15) │
00:12:11 #38277 [verbose] > │ let v17 : int32 = 0 │
00:12:11 #38278 [verbose] > │ let v18 : US2 = method6(v17, v16) │
00:12:11 #38279 [verbose] > │ let v30 : bool = │
00:12:11 #38280 [verbose] > │ match v18 with │
00:12:11 #38281 [verbose] > │ | US2_1 -> (* None *) │
00:12:11 #38282 [verbose] > │ false │
00:12:11 #38283 [verbose] > │ | US2_0(v19, v20, v21, v22, v23, v24, v25, v26, v27) -> (* Some *) │
00:12:11 #38284 [verbose] > │ let v28 : bool = v24 <= 10.0 │
00:12:11 #38285 [verbose] > │ v28 │
00:12:11 #38286 [verbose] > │ if v30 then │
00:12:11 #38287 [verbose] > │ let v31 : UH4 = UH4_1(v16, v1) │
00:12:11 #38288 [verbose] > │ let v32 : int32 = v2 + 1 │
00:12:11 #38289 [verbose] > │ method7(v0, v31, v32) │
00:12:11 #38290 [verbose] > │ else │
00:12:11 #38291 [verbose] > │ let v34 : UH4 = UH4_0 │
00:12:11 #38292 [verbose] > │ method10(v1, v34) │
00:12:11 #38293 [verbose] > │ and closure16 (v0 : UH7) () : UH7 = │
00:12:11 #38294 [verbose] > │ v0 │
00:12:11 #38295 [verbose] > │ and method12 (v0 : UH0, v1 : UH7) : UH7 = │
00:12:11 #38296 [verbose] > │ match v0 with │
00:12:11 #38297 [verbose] > │ | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* StreamCons *) │
00:12:11 #38298 [verbose] > │ let v12 : UH0 = v11 () │
00:12:11 #38299 [verbose] > │ let v13 : UH7 = method12(v12, v1) │
00:12:11 #38300 [verbose] > │ let v14 : float = v8 * v8 │
00:12:11 #38301 [verbose] > │ let v15 : float = v9 * v9 │
00:12:11 #38302 [verbose] > │ let v16 : float = v14 + v15 │
00:12:11 #38303 [verbose] > │ let v17 : float = v10 * v10 │
00:12:11 #38304 [verbose] > │ let v18 : float = v16 + v17 │
00:12:11 #38305 [verbose] > │ let v19 : float = sqrt v18 │
00:12:11 #38306 [verbose] > │ let v20 : float = 0.5 * v3 │
00:12:11 #38307 [verbose] > │ let v21 : float = v19 ** 2.0 │
00:12:11 #38308 [verbose] > │ let v22 : float = v20 * v21 │
00:12:11 #38309 [verbose] > │ let v23 : (unit -> UH7) = closure16(v13) │
00:12:11 #38310 [verbose] > │ UH7_0(v22, v23) │
00:12:11 #38311 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38312 [verbose] > │ v1 │
00:12:11 #38313 [verbose] > │ and method13 (v0 : UH7, v1 : float) : float = │
00:12:11 #38314 [verbose] > │ match v0 with │
00:12:11 #38315 [verbose] > │ | UH7_0(v2, v3) -> (* StreamCons *) │
00:12:11 #38316 [verbose] > │ let v4 : float = v1 + v2 │
00:12:11 #38317 [verbose] > │ let v5 : UH7 = v3 () │
00:12:11 #38318 [verbose] > │ method13(v5, v4) │
00:12:11 #38319 [verbose] > │ | UH7_1 -> (* StreamNil *) │
00:12:11 #38320 [verbose] > │ v1 │
00:12:11 #38321 [verbose] > │ and method11 (v0 : UH4, v1 : UH6) : UH6 = │
00:12:11 #38322 [verbose] > │ match v0 with │
00:12:11 #38323 [verbose] > │ | UH4_1(v2, v3) -> (* Cons *) │
00:12:11 #38324 [verbose] > │ let v4 : UH6 = method11(v3, v1) │
00:12:11 #38325 [verbose] > │ let v5 : int32 = 0 │
00:12:11 #38326 [verbose] > │ let v6 : US2 = method6(v5, v2) │
00:12:11 #38327 [verbose] > │ let v23 : US3 = │
00:12:11 #38328 [verbose] > │ match v6 with │
00:12:11 #38329 [verbose] > │ | US2_1 -> (* None *) │
00:12:11 #38330 [verbose] > │ US3_1 │
00:12:11 #38331 [verbose] > │ | US2_0(v7, v8, v9, v10, v11, v12, v13, v14, v15) -> (* Some *) │
00:12:11 #38332 [verbose] > │ let v16 : UH7 = UH7_1 │
00:12:11 #38333 [verbose] > │ let v17 : UH7 = method12(v2, v16) │
00:12:11 #38334 [verbose] > │ let v18 : float = 0.0 │
00:12:11 #38335 [verbose] > │ let v19 : float = method13(v17, v18) │
00:12:11 #38336 [verbose] > │ US3_0(v12, v19) │
00:12:11 #38337 [verbose] > │ UH6_1(v23, v4) │
00:12:11 #38338 [verbose] > │ | UH4_0 -> (* Nil *) │
00:12:11 #38339 [verbose] > │ v1 │
00:12:11 #38340 [verbose] > │ and method14 (v0 : UH6, v1 : UH8) : UH8 = │
00:12:11 #38341 [verbose] > │ match v0 with │
00:12:11 #38342 [verbose] > │ | UH6_1(v2, v3) -> (* Cons *) │
00:12:11 #38343 [verbose] > │ let v4 : UH8 = method14(v3, v1) │
00:12:11 #38344 [verbose] > │ match v2 with │
00:12:11 #38345 [verbose] > │ | US3_1 -> (* None *) │
00:12:11 #38346 [verbose] > │ v4 │
00:12:11 #38347 [verbose] > │ | US3_0(v5, v6) -> (* Some *) │
00:12:11 #38348 [verbose] > │ UH8_1(v5, v6, v4) │
00:12:11 #38349 [verbose] > │ | UH6_0 -> (* Nil *) │
00:12:11 #38350 [verbose] > │ v1 │
00:12:11 #38351 [verbose] > │ and method15 (v0 : UH8, v1 : UH9, v2 : UH9) : struct (UH9 * UH9) = │
00:12:11 #38352 [verbose] > │ match v0 with │
00:12:11 #38353 [verbose] > │ | UH8_1(v3, v4, v5) -> (* Cons *) │
00:12:11 #38354 [verbose] > │ let v6 : UH9 = UH9_1(v3, v1) │
00:12:11 #38355 [verbose] > │ let v7 : UH9 = UH9_1(v4, v2) │
00:12:11 #38356 [verbose] > │ method15(v5, v6, v7) │
00:12:11 #38357 [verbose] > │ | UH8_0 -> (* Nil *) │
00:12:11 #38358 [verbose] > │ struct (v1, v2) │
00:12:11 #38359 [verbose] > │ and method16 (v0 : UH9, v1 : UH9) : UH9 = │
00:12:11 #38360 [verbose] > │ match v0 with │
00:12:11 #38361 [verbose] > │ | UH9_1(v2, v3) -> (* Cons *) │
00:12:11 #38362 [verbose] > │ let v4 : UH9 = UH9_1(v2, v1) │
00:12:11 #38363 [verbose] > │ method16(v3, v4) │
00:12:11 #38364 [verbose] > │ | UH9_0 -> (* Nil *) │
00:12:11 #38365 [verbose] > │ v1 │
00:12:11 #38366 [verbose] > │ and closure20 (v0 : (unit -> UH1), v1 : (unit -> UH1)) () : UH1 = │
00:12:11 #38367 [verbose] > │ let v2 : UH1 = v1 () │
00:12:11 #38368 [verbose] > │ let v3 : UH1 = v0 () │
00:12:11 #38369 [verbose] > │ match v2 with │
00:12:11 #38370 [verbose] > │ | UH1_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons *) │
00:12:11 #38371 [verbose] > │ match v3 with │
00:12:11 #38372 [verbose] > │ | UH1_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (* │
00:12:11 #38373 [verbose] > │ StreamCons *) │
00:12:11 #38374 [verbose] > │ let v24 : float = v4 + v14 │
00:12:11 #38375 [verbose] > │ let v25 : float = v5 + v15 │
00:12:11 #38376 [verbose] > │ let v26 : float = v9 + v19 │
00:12:11 #38377 [verbose] > │ let v27 : float = v6 + v16 │
00:12:11 #38378 [verbose] > │ let v28 : float = v7 + v17 │
00:12:11 #38379 [verbose] > │ let v29 : float = v8 + v18 │
00:12:11 #38380 [verbose] > │ let v30 : float = v10 + v20 │
00:12:11 #38381 [verbose] > │ let v31 : float = v11 + v21 │
00:12:11 #38382 [verbose] > │ let v32 : float = v12 + v22 │
00:12:11 #38383 [verbose] > │ let v33 : (unit -> UH1) = closure20(v23, v13) │
00:12:11 #38384 [verbose] > │ UH1_0(v24, v25, v27, v28, v29, v26, v30, v31, v32, v33) │
00:12:11 #38385 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38386 [verbose] > │ UH1_1 │
00:12:11 #38387 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38388 [verbose] > │ UH1_1 │
00:12:11 #38389 [verbose] > │ and closure19 (v0 : float, v1 : (UH0 -> UH1)) (v2 : UH0) : UH0 = │
00:12:11 #38390 [verbose] > │ let v3 : UH1 = v1 v2 │
00:12:11 #38391 [verbose] > │ let v4 : float = v0 / 2.0 │
00:12:11 #38392 [verbose] > │ let v46 : UH0 = │
00:12:11 #38393 [verbose] > │ match v3 with │
00:12:11 #38394 [verbose] > │ | UH1_0(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (* │
00:12:11 #38395 [verbose] > │ StreamCons *) │
00:12:11 #38396 [verbose] > │ match v2 with │
00:12:11 #38397 [verbose] > │ | UH0_0(v15, v16, v17, v18, v19, v20, v21, v22, v23, v24) -> (* │
00:12:11 #38398 [verbose] > │ StreamCons *) │
00:12:11 #38399 [verbose] > │ let v25 : float = v10 * v4 │
00:12:11 #38400 [verbose] > │ let v26 : float = v20 + v25 │
00:12:11 #38401 [verbose] > │ let v27 : float = v4 * v7 │
00:12:11 #38402 [verbose] > │ let v28 : float = v4 * v8 │
00:12:11 #38403 [verbose] > │ let v29 : float = v4 * v9 │
00:12:11 #38404 [verbose] > │ let v30 : float = v17 + v27 │
00:12:11 #38405 [verbose] > │ let v31 : float = v18 + v28 │
00:12:11 #38406 [verbose] > │ let v32 : float = v19 + v29 │
00:12:11 #38407 [verbose] > │ let v33 : float = v4 * v11 │
00:12:11 #38408 [verbose] > │ let v34 : float = v4 * v12 │
00:12:11 #38409 [verbose] > │ let v35 : float = v4 * v13 │
00:12:11 #38410 [verbose] > │ let v36 : float = v21 + v33 │
00:12:11 #38411 [verbose] > │ let v37 : float = v22 + v34 │
00:12:11 #38412 [verbose] > │ let v38 : float = v23 + v35 │
00:12:11 #38413 [verbose] > │ let v39 : (unit -> UH0) = closure3(v4, v24, v14) │
00:12:11 #38414 [verbose] > │ UH0_0(v15, v16, v30, v31, v32, v26, v36, v37, v38, v39) │
00:12:11 #38415 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38416 [verbose] > │ UH0_1 │
00:12:11 #38417 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38418 [verbose] > │ UH0_1 │
00:12:11 #38419 [verbose] > │ let v47 : (unit -> UH0) = closure4(v46) │
00:12:11 #38420 [verbose] > │ let v48 : (unit -> UH0) = method1(v46, v47) │
00:12:11 #38421 [verbose] > │ let v49 : UH0 = v48 () │
00:12:11 #38422 [verbose] > │ let v50 : UH1 = v1 v49 │
00:12:11 #38423 [verbose] > │ let v92 : UH0 = │
00:12:11 #38424 [verbose] > │ match v50 with │
00:12:11 #38425 [verbose] > │ | UH1_0(v51, v52, v53, v54, v55, v56, v57, v58, v59, v60) -> (* │
00:12:11 #38426 [verbose] > │ StreamCons *) │
00:12:11 #38427 [verbose] > │ match v2 with │
00:12:11 #38428 [verbose] > │ | UH0_0(v61, v62, v63, v64, v65, v66, v67, v68, v69, v70) -> (* │
00:12:11 #38429 [verbose] > │ StreamCons *) │
00:12:11 #38430 [verbose] > │ let v71 : float = v56 * v4 │
00:12:11 #38431 [verbose] > │ let v72 : float = v66 + v71 │
00:12:11 #38432 [verbose] > │ let v73 : float = v4 * v53 │
00:12:11 #38433 [verbose] > │ let v74 : float = v4 * v54 │
00:12:11 #38434 [verbose] > │ let v75 : float = v4 * v55 │
00:12:11 #38435 [verbose] > │ let v76 : float = v63 + v73 │
00:12:11 #38436 [verbose] > │ let v77 : float = v64 + v74 │
00:12:11 #38437 [verbose] > │ let v78 : float = v65 + v75 │
00:12:11 #38438 [verbose] > │ let v79 : float = v4 * v57 │
00:12:11 #38439 [verbose] > │ let v80 : float = v4 * v58 │
00:12:11 #38440 [verbose] > │ let v81 : float = v4 * v59 │
00:12:11 #38441 [verbose] > │ let v82 : float = v67 + v79 │
00:12:11 #38442 [verbose] > │ let v83 : float = v68 + v80 │
00:12:11 #38443 [verbose] > │ let v84 : float = v69 + v81 │
00:12:11 #38444 [verbose] > │ let v85 : (unit -> UH0) = closure3(v4, v70, v60) │
00:12:11 #38445 [verbose] > │ UH0_0(v61, v62, v76, v77, v78, v72, v82, v83, v84, v85) │
00:12:11 #38446 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38447 [verbose] > │ UH0_1 │
00:12:11 #38448 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38449 [verbose] > │ UH0_1 │
00:12:11 #38450 [verbose] > │ let v93 : (unit -> UH0) = closure4(v92) │
00:12:11 #38451 [verbose] > │ let v94 : (unit -> UH0) = method1(v92, v93) │
00:12:11 #38452 [verbose] > │ let v95 : UH0 = v94 () │
00:12:11 #38453 [verbose] > │ let v96 : UH1 = v1 v95 │
00:12:11 #38454 [verbose] > │ let v138 : UH0 = │
00:12:11 #38455 [verbose] > │ match v96 with │
00:12:11 #38456 [verbose] > │ | UH1_0(v97, v98, v99, v100, v101, v102, v103, v104, v105, v106) -> │
00:12:11 #38457 [verbose] > │ (* StreamCons *) │
00:12:11 #38458 [verbose] > │ match v2 with │
00:12:11 #38459 [verbose] > │ | UH0_0(v107, v108, v109, v110, v111, v112, v113, v114, v115, │
00:12:11 #38460 [verbose] > │ v116) -> (* StreamCons *) │
00:12:11 #38461 [verbose] > │ let v117 : float = v102 * v0 │
00:12:11 #38462 [verbose] > │ let v118 : float = v112 + v117 │
00:12:11 #38463 [verbose] > │ let v119 : float = v0 * v99 │
00:12:11 #38464 [verbose] > │ let v120 : float = v0 * v100 │
00:12:11 #38465 [verbose] > │ let v121 : float = v0 * v101 │
00:12:11 #38466 [verbose] > │ let v122 : float = v109 + v119 │
00:12:11 #38467 [verbose] > │ let v123 : float = v110 + v120 │
00:12:11 #38468 [verbose] > │ let v124 : float = v111 + v121 │
00:12:11 #38469 [verbose] > │ let v125 : float = v0 * v103 │
00:12:11 #38470 [verbose] > │ let v126 : float = v0 * v104 │
00:12:11 #38471 [verbose] > │ let v127 : float = v0 * v105 │
00:12:11 #38472 [verbose] > │ let v128 : float = v113 + v125 │
00:12:11 #38473 [verbose] > │ let v129 : float = v114 + v126 │
00:12:11 #38474 [verbose] > │ let v130 : float = v115 + v127 │
00:12:11 #38475 [verbose] > │ let v131 : (unit -> UH0) = closure3(v0, v116, v106) │
00:12:11 #38476 [verbose] > │ UH0_0(v107, v108, v122, v123, v124, v118, v128, v129, v130, │
00:12:11 #38477 [verbose] > │ v131) │
00:12:11 #38478 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38479 [verbose] > │ UH0_1 │
00:12:11 #38480 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38481 [verbose] > │ UH0_1 │
00:12:11 #38482 [verbose] > │ let v139 : (unit -> UH0) = closure4(v138) │
00:12:11 #38483 [verbose] > │ let v140 : (unit -> UH0) = method1(v138, v139) │
00:12:11 #38484 [verbose] > │ let v141 : UH0 = v140 () │
00:12:11 #38485 [verbose] > │ let v142 : UH1 = v1 v141 │
00:12:11 #38486 [verbose] > │ let v143 : float = v0 / 6.0 │
00:12:11 #38487 [verbose] > │ let v180 : UH1 = │
00:12:11 #38488 [verbose] > │ match v3 with │
00:12:11 #38489 [verbose] > │ | UH1_0(v144, v145, v146, v147, v148, v149, v150, v151, v152, v153) │
00:12:11 #38490 [verbose] > │ -> (* StreamCons *) │
00:12:11 #38491 [verbose] > │ match v50 with │
00:12:11 #38492 [verbose] > │ | UH1_0(v154, v155, v156, v157, v158, v159, v160, v161, v162, │
00:12:11 #38493 [verbose] > │ v163) -> (* StreamCons *) │
00:12:11 #38494 [verbose] > │ let v164 : float = v144 + v154 │
00:12:11 #38495 [verbose] > │ let v165 : float = v145 + v155 │
00:12:11 #38496 [verbose] > │ let v166 : float = v149 + v159 │
00:12:11 #38497 [verbose] > │ let v167 : float = v146 + v156 │
00:12:11 #38498 [verbose] > │ let v168 : float = v147 + v157 │
00:12:11 #38499 [verbose] > │ let v169 : float = v148 + v158 │
00:12:11 #38500 [verbose] > │ let v170 : float = v150 + v160 │
00:12:11 #38501 [verbose] > │ let v171 : float = v151 + v161 │
00:12:11 #38502 [verbose] > │ let v172 : float = v152 + v162 │
00:12:11 #38503 [verbose] > │ let v173 : (unit -> UH1) = closure20(v163, v153) │
00:12:11 #38504 [verbose] > │ UH1_0(v164, v165, v167, v168, v169, v166, v170, v171, v172, │
00:12:11 #38505 [verbose] > │ v173) │
00:12:11 #38506 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38507 [verbose] > │ UH1_1 │
00:12:11 #38508 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38509 [verbose] > │ UH1_1 │
00:12:11 #38510 [verbose] > │ let v217 : UH1 = │
00:12:11 #38511 [verbose] > │ match v180 with │
00:12:11 #38512 [verbose] > │ | UH1_0(v181, v182, v183, v184, v185, v186, v187, v188, v189, v190) │
00:12:11 #38513 [verbose] > │ -> (* StreamCons *) │
00:12:11 #38514 [verbose] > │ match v50 with │
00:12:11 #38515 [verbose] > │ | UH1_0(v191, v192, v193, v194, v195, v196, v197, v198, v199, │
00:12:11 #38516 [verbose] > │ v200) -> (* StreamCons *) │
00:12:11 #38517 [verbose] > │ let v201 : float = v181 + v191 │
00:12:11 #38518 [verbose] > │ let v202 : float = v182 + v192 │
00:12:11 #38519 [verbose] > │ let v203 : float = v186 + v196 │
00:12:11 #38520 [verbose] > │ let v204 : float = v183 + v193 │
00:12:11 #38521 [verbose] > │ let v205 : float = v184 + v194 │
00:12:11 #38522 [verbose] > │ let v206 : float = v185 + v195 │
00:12:11 #38523 [verbose] > │ let v207 : float = v187 + v197 │
00:12:11 #38524 [verbose] > │ let v208 : float = v188 + v198 │
00:12:11 #38525 [verbose] > │ let v209 : float = v189 + v199 │
00:12:11 #38526 [verbose] > │ let v210 : (unit -> UH1) = closure20(v200, v190) │
00:12:11 #38527 [verbose] > │ UH1_0(v201, v202, v204, v205, v206, v203, v207, v208, v209, │
00:12:11 #38528 [verbose] > │ v210) │
00:12:11 #38529 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38530 [verbose] > │ UH1_1 │
00:12:11 #38531 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38532 [verbose] > │ UH1_1 │
00:12:11 #38533 [verbose] > │ let v254 : UH1 = │
00:12:11 #38534 [verbose] > │ match v217 with │
00:12:11 #38535 [verbose] > │ | UH1_0(v218, v219, v220, v221, v222, v223, v224, v225, v226, v227) │
00:12:11 #38536 [verbose] > │ -> (* StreamCons *) │
00:12:11 #38537 [verbose] > │ match v96 with │
00:12:11 #38538 [verbose] > │ | UH1_0(v228, v229, v230, v231, v232, v233, v234, v235, v236, │
00:12:11 #38539 [verbose] > │ v237) -> (* StreamCons *) │
00:12:11 #38540 [verbose] > │ let v238 : float = v218 + v228 │
00:12:11 #38541 [verbose] > │ let v239 : float = v219 + v229 │
00:12:11 #38542 [verbose] > │ let v240 : float = v223 + v233 │
00:12:11 #38543 [verbose] > │ let v241 : float = v220 + v230 │
00:12:11 #38544 [verbose] > │ let v242 : float = v221 + v231 │
00:12:11 #38545 [verbose] > │ let v243 : float = v222 + v232 │
00:12:11 #38546 [verbose] > │ let v244 : float = v224 + v234 │
00:12:11 #38547 [verbose] > │ let v245 : float = v225 + v235 │
00:12:11 #38548 [verbose] > │ let v246 : float = v226 + v236 │
00:12:11 #38549 [verbose] > │ let v247 : (unit -> UH1) = closure20(v237, v227) │
00:12:11 #38550 [verbose] > │ UH1_0(v238, v239, v241, v242, v243, v240, v244, v245, v246, │
00:12:11 #38551 [verbose] > │ v247) │
00:12:11 #38552 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38553 [verbose] > │ UH1_1 │
00:12:11 #38554 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38555 [verbose] > │ UH1_1 │
00:12:11 #38556 [verbose] > │ let v291 : UH1 = │
00:12:11 #38557 [verbose] > │ match v254 with │
00:12:11 #38558 [verbose] > │ | UH1_0(v255, v256, v257, v258, v259, v260, v261, v262, v263, v264) │
00:12:11 #38559 [verbose] > │ -> (* StreamCons *) │
00:12:11 #38560 [verbose] > │ match v96 with │
00:12:11 #38561 [verbose] > │ | UH1_0(v265, v266, v267, v268, v269, v270, v271, v272, v273, │
00:12:11 #38562 [verbose] > │ v274) -> (* StreamCons *) │
00:12:11 #38563 [verbose] > │ let v275 : float = v255 + v265 │
00:12:11 #38564 [verbose] > │ let v276 : float = v256 + v266 │
00:12:11 #38565 [verbose] > │ let v277 : float = v260 + v270 │
00:12:11 #38566 [verbose] > │ let v278 : float = v257 + v267 │
00:12:11 #38567 [verbose] > │ let v279 : float = v258 + v268 │
00:12:11 #38568 [verbose] > │ let v280 : float = v259 + v269 │
00:12:11 #38569 [verbose] > │ let v281 : float = v261 + v271 │
00:12:11 #38570 [verbose] > │ let v282 : float = v262 + v272 │
00:12:11 #38571 [verbose] > │ let v283 : float = v263 + v273 │
00:12:11 #38572 [verbose] > │ let v284 : (unit -> UH1) = closure20(v274, v264) │
00:12:11 #38573 [verbose] > │ UH1_0(v275, v276, v278, v279, v280, v277, v281, v282, v283, │
00:12:11 #38574 [verbose] > │ v284) │
00:12:11 #38575 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38576 [verbose] > │ UH1_1 │
00:12:11 #38577 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38578 [verbose] > │ UH1_1 │
00:12:11 #38579 [verbose] > │ let v328 : UH1 = │
00:12:11 #38580 [verbose] > │ match v291 with │
00:12:11 #38581 [verbose] > │ | UH1_0(v292, v293, v294, v295, v296, v297, v298, v299, v300, v301) │
00:12:11 #38582 [verbose] > │ -> (* StreamCons *) │
00:12:11 #38583 [verbose] > │ match v142 with │
00:12:11 #38584 [verbose] > │ | UH1_0(v302, v303, v304, v305, v306, v307, v308, v309, v310, │
00:12:11 #38585 [verbose] > │ v311) -> (* StreamCons *) │
00:12:11 #38586 [verbose] > │ let v312 : float = v292 + v302 │
00:12:11 #38587 [verbose] > │ let v313 : float = v293 + v303 │
00:12:11 #38588 [verbose] > │ let v314 : float = v297 + v307 │
00:12:11 #38589 [verbose] > │ let v315 : float = v294 + v304 │
00:12:11 #38590 [verbose] > │ let v316 : float = v295 + v305 │
00:12:11 #38591 [verbose] > │ let v317 : float = v296 + v306 │
00:12:11 #38592 [verbose] > │ let v318 : float = v298 + v308 │
00:12:11 #38593 [verbose] > │ let v319 : float = v299 + v309 │
00:12:11 #38594 [verbose] > │ let v320 : float = v300 + v310 │
00:12:11 #38595 [verbose] > │ let v321 : (unit -> UH1) = closure20(v311, v301) │
00:12:11 #38596 [verbose] > │ UH1_0(v312, v313, v315, v316, v317, v314, v318, v319, v320, │
00:12:11 #38597 [verbose] > │ v321) │
00:12:11 #38598 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38599 [verbose] > │ UH1_1 │
00:12:11 #38600 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38601 [verbose] > │ UH1_1 │
00:12:11 #38602 [verbose] > │ let v370 : UH0 = │
00:12:11 #38603 [verbose] > │ match v328 with │
00:12:11 #38604 [verbose] > │ | UH1_0(v329, v330, v331, v332, v333, v334, v335, v336, v337, v338) │
00:12:11 #38605 [verbose] > │ -> (* StreamCons *) │
00:12:11 #38606 [verbose] > │ match v2 with │
00:12:11 #38607 [verbose] > │ | UH0_0(v339, v340, v341, v342, v343, v344, v345, v346, v347, │
00:12:11 #38608 [verbose] > │ v348) -> (* StreamCons *) │
00:12:11 #38609 [verbose] > │ let v349 : float = v334 * v143 │
00:12:11 #38610 [verbose] > │ let v350 : float = v344 + v349 │
00:12:11 #38611 [verbose] > │ let v351 : float = v143 * v331 │
00:12:11 #38612 [verbose] > │ let v352 : float = v143 * v332 │
00:12:11 #38613 [verbose] > │ let v353 : float = v143 * v333 │
00:12:11 #38614 [verbose] > │ let v354 : float = v341 + v351 │
00:12:11 #38615 [verbose] > │ let v355 : float = v342 + v352 │
00:12:11 #38616 [verbose] > │ let v356 : float = v343 + v353 │
00:12:11 #38617 [verbose] > │ let v357 : float = v143 * v335 │
00:12:11 #38618 [verbose] > │ let v358 : float = v143 * v336 │
00:12:11 #38619 [verbose] > │ let v359 : float = v143 * v337 │
00:12:11 #38620 [verbose] > │ let v360 : float = v345 + v357 │
00:12:11 #38621 [verbose] > │ let v361 : float = v346 + v358 │
00:12:11 #38622 [verbose] > │ let v362 : float = v347 + v359 │
00:12:11 #38623 [verbose] > │ let v363 : (unit -> UH0) = closure3(v143, v348, v338) │
00:12:11 #38624 [verbose] > │ UH0_0(v339, v340, v354, v355, v356, v350, v360, v361, v362, │
00:12:11 #38625 [verbose] > │ v363) │
00:12:11 #38626 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:11 #38627 [verbose] > │ UH0_1 │
00:12:11 #38628 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:11 #38629 [verbose] > │ UH0_1 │
00:12:11 #38630 [verbose] > │ let v371 : (unit -> UH0) = closure4(v370) │
00:12:11 #38631 [verbose] > │ let v372 : (unit -> UH0) = method1(v370, v371) │
00:12:11 #38632 [verbose] > │ let v373 : UH0 = v372 () │
00:12:11 #38633 [verbose] > │ v373 │
00:12:11 #38634 [verbose] > │ and closure18 (v0 : float) (v1 : (UH0 -> UH1)) : (UH0 -> UH0) = │
00:12:11 #38635 [verbose] > │ closure19(v0, v1) │
00:12:11 #38636 [verbose] > │ and closure17 () (v0 : float) : ((UH0 -> UH1) -> (UH0 -> UH0)) = │
00:12:11 #38637 [verbose] > │ closure18(v0) │
00:12:11 #38638 [verbose] > │ and method17 (v0 : UH4, v1 : UH6) : UH6 = │
00:12:11 #38639 [verbose] > │ match v0 with │
00:12:11 #38640 [verbose] > │ | UH4_1(v2, v3) -> (* Cons *) │
00:12:11 #38641 [verbose] > │ let v4 : UH6 = method17(v3, v1) │
00:12:11 #38642 [verbose] > │ let v5 : int32 = 0 │
00:12:11 #38643 [verbose] > │ let v6 : US2 = method6(v5, v2) │
00:12:11 #38644 [verbose] > │ let v23 : US3 = │
00:12:11 #38645 [verbose] > │ match v6 with │
00:12:11 #38646 [verbose] > │ | US2_1 -> (* None *) │
00:12:11 #38647 [verbose] > │ US3_1 │
00:12:11 #38648 [verbose] > │ | US2_0(v7, v8, v9, v10, v11, v12, v13, v14, v15) -> (* Some *) │
00:12:11 #38649 [verbose] > │ let v16 : UH7 = UH7_1 │
00:12:11 #38650 [verbose] > │ let v17 : UH7 = method12(v2, v16) │
00:12:11 #38651 [verbose] > │ let v18 : float = 0.0 │
00:12:11 #38652 [verbose] > │ let v19 : float = method13(v17, v18) │
00:12:11 #38653 [verbose] > │ US3_0(v12, v19) │
00:12:11 #38654 [verbose] > │ UH6_1(v23, v4) │
00:12:11 #38655 [verbose] > │ | UH4_0 -> (* Nil *) │
00:12:11 #38656 [verbose] > │ v1 │
00:12:11 #38657 [verbose] > │ and method19 (v0 : UH9, v1 : int32) : int32 = │
00:12:11 #38658 [verbose] > │ match v0 with │
00:12:11 #38659 [verbose] > │ | UH9_1(v2, v3) -> (* Cons *) │
00:12:11 #38660 [verbose] > │ let v4 : int32 = v1 + 1 │
00:12:11 #38661 [verbose] > │ method19(v3, v4) │
00:12:11 #38662 [verbose] > │ | UH9_0 -> (* Nil *) │
00:12:11 #38663 [verbose] > │ v1 │
00:12:11 #38664 [verbose] > │ and method20 (v0 : (float []), v1 : UH9, v2 : int32) : int32 = │
00:12:11 #38665 [verbose] > │ match v1 with │
00:12:11 #38666 [verbose] > │ | UH9_1(v3, v4) -> (* Cons *) │
00:12:11 #38667 [verbose] > │ v0.[int v2] <- v3 │
00:12:11 #38668 [verbose] > │ let v5 : int32 = v2 + 1 │
00:12:11 #38669 [verbose] > │ method20(v0, v4, v5) │
00:12:11 #38670 [verbose] > │ | UH9_0 -> (* Nil *) │
00:12:11 #38671 [verbose] > │ v2 │
00:12:11 #38672 [verbose] > │ and method18 (v0 : UH9) : (float []) = │
00:12:11 #38673 [verbose] > │ let v1 : int32 = 0 │
00:12:11 #38674 [verbose] > │ let v2 : int32 = method19(v0, v1) │
00:12:11 #38675 [verbose] > │ let v3 : (float []) = Array.zeroCreate<float> (v2) │
00:12:11 #38676 [verbose] > │ let v4 : int32 = 0 │
00:12:11 #38677 [verbose] > │ let v5 : int32 = method20(v3, v0, v4) │
00:12:11 #38678 [verbose] > │ v3 │
00:12:11 #38679 [verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │
00:12:11 #38680 [verbose] > │ []) * (float [])) [])) = │
00:12:11 #38681 [verbose] > │ let v0 : (float -> ((UH0 -> UH1) -> (UH0 -> UH0))) = closure0() │
00:12:11 #38682 [verbose] > │ let v1 : ((UH0 -> UH1) -> (UH0 -> UH0)) = v0 0.03 │
00:12:11 #38683 [verbose] > │ let v2 : (UH0 -> UH1) = closure8() │
00:12:11 #38684 [verbose] > │ let v3 : (UH0 -> UH0) = v1 v2 │
00:12:11 #38685 [verbose] > │ let v4 : UH4 = UH4_0 │
00:12:11 #38686 [verbose] > │ let v5 : int32 = 0 │
00:12:11 #38687 [verbose] > │ let v6 : UH4 = method7(v3, v4, v5) │
00:12:11 #38688 [verbose] > │ let v7 : UH6 = UH6_0 │
00:12:11 #38689 [verbose] > │ let v8 : UH6 = method11(v6, v7) │
00:12:11 #38690 [verbose] > │ let v9 : UH8 = UH8_0 │
00:12:11 #38691 [verbose] > │ let v10 : UH8 = method14(v8, v9) │
00:12:11 #38692 [verbose] > │ let v11 : UH9 = UH9_0 │
00:12:11 #38693 [verbose] > │ let v12 : UH9 = UH9_0 │
00:12:11 #38694 [verbose] > │ let struct (v13 : UH9, v14 : UH9) = method15(v10, v11, v12) │
00:12:11 #38695 [verbose] > │ let v15 : UH9 = UH9_0 │
00:12:11 #38696 [verbose] > │ let v16 : UH9 = method16(v13, v15) │
00:12:11 #38697 [verbose] > │ let v17 : UH9 = UH9_0 │
00:12:11 #38698 [verbose] > │ let v18 : UH9 = method16(v14, v17) │
00:12:11 #38699 [verbose] > │ let v19 : (float -> ((UH0 -> UH1) -> (UH0 -> UH0))) = closure17() │
00:12:11 #38700 [verbose] > │ let v20 : ((UH0 -> UH1) -> (UH0 -> UH0)) = v19 0.03 │
00:12:11 #38701 [verbose] > │ let v21 : (UH0 -> UH0) = v20 v2 │
00:12:11 #38702 [verbose] > │ let v22 : UH4 = UH4_0 │
00:12:11 #38703 [verbose] > │ let v23 : int32 = 0 │
00:12:11 #38704 [verbose] > │ let v24 : UH4 = method7(v21, v22, v23) │
00:12:11 #38705 [verbose] > │ let v25 : UH6 = UH6_0 │
00:12:11 #38706 [verbose] > │ let v26 : UH6 = method17(v24, v25) │
00:12:11 #38707 [verbose] > │ let v27 : UH8 = UH8_0 │
00:12:11 #38708 [verbose] > │ let v28 : UH8 = method14(v26, v27) │
00:12:11 #38709 [verbose] > │ let v29 : UH9 = UH9_0 │
00:12:11 #38710 [verbose] > │ let v30 : UH9 = UH9_0 │
00:12:11 #38711 [verbose] > │ let struct (v31 : UH9, v32 : UH9) = method15(v28, v29, v30) │
00:12:11 #38712 [verbose] > │ let v33 : UH9 = UH9_0 │
00:12:11 #38713 [verbose] > │ let v34 : UH9 = method16(v31, v33) │
00:12:11 #38714 [verbose] > │ let v35 : UH9 = UH9_0 │
00:12:11 #38715 [verbose] > │ let v36 : UH9 = method16(v32, v35) │
00:12:11 #38716 [verbose] > │ let v37 : (float []) = method18(v16) │
00:12:11 #38717 [verbose] > │ let v38 : (float []) = method18(v18) │
00:12:11 #38718 [verbose] > │ let v39 : (float []) = method18(v34) │
00:12:11 #38719 [verbose] > │ let v40 : (float []) = method18(v36) │
00:12:11 #38720 [verbose] > │ let v41 : string = "euler-cromer" │
00:12:11 #38721 [verbose] > │ let v42 : string = "runge-kutta 4" │
00:12:11 #38722 [verbose] > │ let v43 : (struct (string * (float []) * (float [])) []) = [|struct │
00:12:11 #38723 [verbose] > │ (v41, v37, v38); struct (v42, v39, v40)|] │
00:12:11 #38724 [verbose] > │ let v44 : string = "system kinetic energy versus time" │
00:12:11 #38725 [verbose] > │ let v45 : string = "time (s)" │
00:12:11 #38726 [verbose] > │ let v46 : string = "system kinetic energy (j)" │
00:12:11 #38727 [verbose] > │ struct (v44, v45, v46, v43) │
00:12:11 #38728 [verbose] > │ method0() │
00:12:11 #38729 [verbose] > │ │
00:12:11 #38730 [verbose] > │ │
00:12:11 #38731 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:11 #38732 [verbose] >
00:12:11 #38733 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:12:11 #38734 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:12:11 #38735 [verbose] > │ ### wave 2 │
00:12:11 #38736 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:11 #38737 [verbose] >
00:12:11 #38738 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:12:11 #38739 [verbose] > // // test
00:12:11 #38740 [verbose] >
00:12:11 #38741 [verbose] > inl linear_spring k re (particle_state st1) (particle_state st2) =
00:12:11 #38742 [verbose] > inl r1 = st1.pos_vec
00:12:11 #38743 [verbose] > inl r2 = st2.pos_vec
00:12:11 #38744 [verbose] > inl r21 = r2 ^-^ r1
00:12:11 #38745 [verbose] > inl r21mag = magnitude r21
00:12:11 #38746 [verbose] > -k * (r21mag - re) *^ r21 ^/ r21mag
00:12:11 #38747 [verbose] >
00:12:11 #38748 [verbose] > inl fixed_linear_spring k re r1 =
00:12:11 #38749 [verbose] > inl (particle_state default_particle_state') = default_particle_state ()
00:12:11 #38750 [verbose] > linear_spring k re (particle_state { default_particle_state' with pos_vec =
00:12:11 #38751 [verbose] > r1 })
00:12:11 #38752 [verbose] >
00:12:11 #38753 [verbose] > inl forces_string () =
00:12:11 #38754 [verbose] > [[
00:12:11 #38755 [verbose] > ExternalForce (0i32, fixed_linear_spring 5384 0 (zero_vec ()))
00:12:11 #38756 [verbose] > ExternalForce (63, fixed_linear_spring 5384 0 (0.65 *^ i_hat ()))
00:12:11 #38757 [verbose] > ]] /@ (
00:12:11 #38758 [verbose] > listm'.init_series 0 59 1
00:12:11 #38759 [verbose] > |> listm.map (fun n => InternalForce (n, n + 1, linear_spring 5384 0))
00:12:11 #38760 [verbose] > )
00:12:11 #38761 [verbose] >
00:12:11 #38762 [verbose] > inl string_update dt =
00:12:11 #38763 [verbose] > update_mps (join runge_kutta_4 dt) (join forces_string ())
00:12:11 #38764 [verbose] >
00:12:11 #38765 [verbose] > inl string_initial_overtone n =
00:12:11 #38766 [verbose] > inl ball_mass = 0.0008293 * 0.65 / 64
00:12:11 #38767 [verbose] > inl (particle_state default_particle_state') = default_particle_state ()
00:12:11 #38768 [verbose] > listm'.init_series 0.01 0.64 0.01
00:12:11 #38769 [verbose] > |> listm.map (fun x =>
00:12:11 #38770 [verbose] > inl y = 0.005 * sin (conv n * pi * x / 0.65)
00:12:11 #38771 [verbose] > particle_state {
00:12:11 #38772 [verbose] > default_particle_state' with
00:12:11 #38773 [verbose] > mass = ball_mass
00:12:11 #38774 [verbose] > pos_vec = x *^ i_hat () ^+^ y *^ j_hat ()
00:12:11 #38775 [verbose] > velocity = zero_vec ()
00:12:11 #38776 [verbose] > }
00:12:11 #38777 [verbose] > )
00:12:11 #38778 [verbose] > |> stream.from_list
00:12:11 #38779 [verbose] > |> multi_particle_state
00:12:11 #38780 [verbose] >
00:12:11 #38781 [verbose] > let main () =
00:12:11 #38782 [verbose] > inl ~frames = listm'.init_series 0 65 1f64 |> stream.from_list
00:12:11 #38783 [verbose] > inl ~initial_state = string_initial_overtone 3i32
00:12:11 #38784 [verbose] > inl frames =
00:12:11 #38785 [verbose] > frames
00:12:11 #38786 [verbose] > |> stream.map (fun n =>
00:12:11 #38787 [verbose] > inl (multi_particle_state sts) =
00:12:11 #38788 [verbose] > stream.iterate (string_update 0.000025) initial_state |>
00:12:11 #38789 [verbose] > stream.item n
00:12:11 #38790 [verbose] > inl x, y =
00:12:11 #38791 [verbose] > [[ zero_vec () ]]
00:12:11 #38792 [verbose] > /@ (sts |> stream.map (fun (particle_state st) => st.pos_vec) |>
00:12:11 #38793 [verbose] > stream.to_list)
00:12:11 #38794 [verbose] > /@ [[ 0.65 *^ i_hat () ]]
00:12:11 #38795 [verbose] > |> listm.map (fun r => r.x, r.y)
00:12:11 #38796 [verbose] > |> stream.from_list
00:12:11 #38797 [verbose] > |> stream.unzip
00:12:11 #38798 [verbose] > inl x : a i32 _ = x |> stream.to_list |> listm.toArray
00:12:11 #38799 [verbose] > inl y : a i32 _ = y |> stream.to_list |> listm.toArray
00:12:11 #38800 [verbose] > x, y
00:12:11 #38801 [verbose] > )
00:12:11 #38802 [verbose] >
00:12:11 #38803 [verbose] > inl plots =
00:12:11 #38804 [verbose] > frames
00:12:11 #38805 [verbose] > |> stream.indexed
00:12:11 #38806 [verbose] > |> stream.map (fun ((n : i32), (x, y)) =>
00:12:11 #38807 [verbose] > "wave",
00:12:11 #38808 [verbose] > "position (m)",
00:12:11 #38809 [verbose] > "displacement (m)",
00:12:11 #38810 [verbose] > ;[[
00:12:11 #38811 [verbose] > ($"$\"{!n}\"" : string), x, y
00:12:11 #38812 [verbose] > ]]
00:12:11 #38813 [verbose] > )
00:12:11 #38814 [verbose] >
00:12:11 #38815 [verbose] > plots |> stream.to_list |> listm.toArray : a i32 _
00:12:11 #38816 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\404df2b23725c585572771454e61e8548ee739e708ea3f415087fcde659c7e0a\main.spi
00:12:17 #38817 [verbose] >
00:12:17 #38818 [verbose] > ╭─[ 6.47s - return value ]─────────────────────────────────────────────────────╮
00:12:17 #38819 [verbose] > │ <table><thead><tr><th><i>index</i></th><th>value</th></tr></thead><tbody><tr │
00:12:17 #38820 [verbose] > │ ><td>0</td><td><svg width="640" height="480" viewBox="0 0 640 480" │
00:12:17 #38821 [verbose] > │ xmlns="http://www.w3.org/2000/svg"> │
00:12:17 #38822 [verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414" │
00:12:17 #38823 [verbose] > │ stroke="none"/> │
00:12:17 #38824 [verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle" │
00:12:17 #38825 [verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1" │
00:12:17 #38826 [verbose] > │ fill="#FFFFFF"> │
00:12:17 #38827 [verbose] > │ wave │
00:12:17 #38828 [verbose] > │ </text> │
00:12:17 #38829 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="62" y1="424" x2="62" │
00:12:17 #38830 [verbose] > │ y2="75"/> │
00:12:17 #38831 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │
00:12:17 #38832 [verbose] > │ y2="75"/> │
00:12:17 #38833 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="77" y1="424" x2="77" │
00:12:17 #38834 [verbose] > │ y2="75"/> │
00:12:17 #38835 [verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="85" y1="424" │
00:12:17 #38836 [verbose] > │ x2="85... │
00:12:17 #38837 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:17 #38838 [verbose] >
00:12:17 #38839 [verbose] > ╭─[ 6.57s - stdout ]───────────────────────────────────────────────────────────╮
00:12:17 #38840 [verbose] > │ type UH0 = │
00:12:17 #38841 [verbose] > │ | UH0_0 of float * (unit -> UH0) │
00:12:17 #38842 [verbose] > │ | UH0_1 │
00:12:17 #38843 [verbose] > │ and UH1 = │
00:12:17 #38844 [verbose] > │ | UH1_0 of float * float * float * float * float * float * float * float │
00:12:17 #38845 [verbose] > │ * float * (unit -> UH1) │
00:12:17 #38846 [verbose] > │ | UH1_1 │
00:12:17 #38847 [verbose] > │ and UH2 = │
00:12:17 #38848 [verbose] > │ | UH2_0 of (float []) * (float []) * (unit -> UH2) │
00:12:18 #38849 [verbose] > │ | UH2_1 │
00:12:18 #38850 [verbose] > │ and UH3 = │
00:12:18 #38851 [verbose] > │ | UH3_0 of float * float * float * float * float * float * float * float │
00:12:18 #38852 [verbose] > │ * float * (unit -> UH3) │
00:12:18 #38853 [verbose] > │ | UH3_1 │
00:12:18 #38854 [verbose] > │ and [<Struct>] US0 = │
00:12:18 #38855 [verbose] > │ | US0_0 of f0_0 : (unit -> UH1) │
00:12:18 #38856 [verbose] > │ | US0_1 of f1_0 : UH1 │
00:12:18 #38857 [verbose] > │ and Mut0 = {mutable l0 : US0} │
00:12:18 #38858 [verbose] > │ and [<Struct>] US1 = │
00:12:18 #38859 [verbose] > │ | US1_0 of f0_0 : int32 * f0_1 : (struct (float * float * float * float │
00:12:18 #38860 [verbose] > │ * float * float * float * float * float) -> struct (float * float * float)) │
00:12:18 #38861 [verbose] > │ | US1_1 of f1_0 : int32 * f1_1 : int32 * f1_2 : (struct (float * float * │
00:12:18 #38862 [verbose] > │ float * float * float * float * float * float * float) -> (struct (float * │
00:12:18 #38863 [verbose] > │ float * float * float * float * float * float * float * float) -> struct │
00:12:18 #38864 [verbose] > │ (float * float * float))) │
00:12:18 #38865 [verbose] > │ and UH4 = │
00:12:18 #38866 [verbose] > │ | UH4_0 │
00:12:18 #38867 [verbose] > │ | UH4_1 of US1 * UH4 │
00:12:18 #38868 [verbose] > │ and UH5 = │
00:12:18 #38869 [verbose] > │ | UH5_0 of int32 * float * float * float * float * float * float * float │
00:12:18 #38870 [verbose] > │ * float * float * (unit -> UH5) │
00:12:18 #38871 [verbose] > │ | UH5_1 │
00:12:18 #38872 [verbose] > │ and UH6 = │
00:12:18 #38873 [verbose] > │ | UH6_0 │
00:12:18 #38874 [verbose] > │ | UH6_1 of (struct (float * float * float * float * float * float * │
00:12:18 #38875 [verbose] > │ float * float * float) -> struct (float * float * float)) * UH6 │
00:12:18 #38876 [verbose] > │ and [<Struct>] US2 = │
00:12:18 #38877 [verbose] > │ | US2_0 of f0_0 : (struct (float * float * float * float * float * float │
00:12:18 #38878 [verbose] > │ * float * float * float) -> struct (float * float * float)) │
00:12:18 #38879 [verbose] > │ | US2_1 │
00:12:18 #38880 [verbose] > │ and [<Struct>] US3 = │
00:12:18 #38881 [verbose] > │ | US3_0 of f0_0 : float * f0_1 : float * f0_2 : float * f0_3 : float * │
00:12:18 #38882 [verbose] > │ f0_4 : float * f0_5 : float * f0_6 : float * f0_7 : float * f0_8 : float │
00:12:18 #38883 [verbose] > │ | US3_1 │
00:12:18 #38884 [verbose] > │ and UH7 = │
00:12:18 #38885 [verbose] > │ | UH7_0 │
00:12:18 #38886 [verbose] > │ | UH7_1 of float * float * float * UH7 │
00:12:18 #38887 [verbose] > │ and UH8 = │
00:12:18 #38888 [verbose] > │ | UH8_0 of UH1 * (unit -> UH8) │
00:12:18 #38889 [verbose] > │ | UH8_1 │
00:12:18 #38890 [verbose] > │ and [<Struct>] US4 = │
00:12:18 #38891 [verbose] > │ | US4_0 of f0_0 : UH1 │
00:12:18 #38892 [verbose] > │ | US4_1 │
00:12:18 #38893 [verbose] > │ and UH9 = │
00:12:18 #38894 [verbose] > │ | UH9_0 of float * float * float * (unit -> UH9) │
00:12:18 #38895 [verbose] > │ | UH9_1 │
00:12:18 #38896 [verbose] > │ and UH10 = │
00:12:18 #38897 [verbose] > │ | UH10_0 │
00:12:18 #38898 [verbose] > │ | UH10_1 of float * float * UH10 │
00:12:18 #38899 [verbose] > │ and UH11 = │
00:12:18 #38900 [verbose] > │ | UH11_0 of float * float * (unit -> UH11) │
00:12:18 #38901 [verbose] > │ | UH11_1 │
00:12:18 #38902 [verbose] > │ and UH12 = │
00:12:18 #38903 [verbose] > │ | UH12_0 │
00:12:18 #38904 [verbose] > │ | UH12_1 of float * UH12 │
00:12:18 #38905 [verbose] > │ and UH13 = │
00:12:18 #38906 [verbose] > │ | UH13_0 of int32 * (float []) * (float []) * (unit -> UH13) │
00:12:18 #38907 [verbose] > │ | UH13_1 │
00:12:18 #38908 [verbose] > │ and UH14 = │
00:12:18 #38909 [verbose] > │ | UH14_0 of string * string * string * (struct (string * (float []) * │
00:12:18 #38910 [verbose] > │ (float [])) []) * (unit -> UH14) │
00:12:18 #38911 [verbose] > │ | UH14_1 │
00:12:18 #38912 [verbose] > │ and UH15 = │
00:12:18 #38913 [verbose] > │ | UH15_0 │
00:12:18 #38914 [verbose] > │ | UH15_1 of string * string * string * (struct (string * (float []) * │
00:12:18 #38915 [verbose] > │ (float [])) []) * UH15 │
00:12:18 #38916 [verbose] > │ let rec closure65 () () : UH0 = │
00:12:18 #38917 [verbose] > │ UH0_1 │
00:12:18 #38918 [verbose] > │ and closure64 () () : UH0 = │
00:12:18 #38919 [verbose] > │ let v0 : (unit -> UH0) = closure65() │
00:12:18 #38920 [verbose] > │ UH0_0(65.0, v0) │
00:12:18 #38921 [verbose] > │ and closure63 () () : UH0 = │
00:12:18 #38922 [verbose] > │ let v0 : (unit -> UH0) = closure64() │
00:12:18 #38923 [verbose] > │ UH0_0(64.0, v0) │
00:12:18 #38924 [verbose] > │ and closure62 () () : UH0 = │
00:12:18 #38925 [verbose] > │ let v0 : (unit -> UH0) = closure63() │
00:12:18 #38926 [verbose] > │ UH0_0(63.0, v0) │
00:12:18 #38927 [verbose] > │ and closure61 () () : UH0 = │
00:12:18 #38928 [verbose] > │ let v0 : (unit -> UH0) = closure62() │
00:12:18 #38929 [verbose] > │ UH0_0(62.0, v0) │
00:12:18 #38930 [verbose] > │ and closure60 () () : UH0 = │
00:12:18 #38931 [verbose] > │ let v0 : (unit -> UH0) = closure61() │
00:12:18 #38932 [verbose] > │ UH0_0(61.0, v0) │
00:12:18 #38933 [verbose] > │ and closure59 () () : UH0 = │
00:12:18 #38934 [verbose] > │ let v0 : (unit -> UH0) = closure60() │
00:12:18 #38935 [verbose] > │ UH0_0(60.0, v0) │
00:12:18 #38936 [verbose] > │ and closure58 () () : UH0 = │
00:12:18 #38937 [verbose] > │ let v0 : (unit -> UH0) = closure59() │
00:12:18 #38938 [verbose] > │ UH0_0(59.0, v0) │
00:12:18 #38939 [verbose] > │ and closure57 () () : UH0 = │
00:12:18 #38940 [verbose] > │ let v0 : (unit -> UH0) = closure58() │
00:12:18 #38941 [verbose] > │ UH0_0(58.0, v0) │
00:12:18 #38942 [verbose] > │ and closure56 () () : UH0 = │
00:12:18 #38943 [verbose] > │ let v0 : (unit -> UH0) = closure57() │
00:12:18 #38944 [verbose] > │ UH0_0(57.0, v0) │
00:12:18 #38945 [verbose] > │ and closure55 () () : UH0 = │
00:12:18 #38946 [verbose] > │ let v0 : (unit -> UH0) = closure56() │
00:12:18 #38947 [verbose] > │ UH0_0(56.0, v0) │
00:12:18 #38948 [verbose] > │ and closure54 () () : UH0 = │
00:12:18 #38949 [verbose] > │ let v0 : (unit -> UH0) = closure55() │
00:12:18 #38950 [verbose] > │ UH0_0(55.0, v0) │
00:12:18 #38951 [verbose] > │ and closure53 () () : UH0 = │
00:12:18 #38952 [verbose] > │ let v0 : (unit -> UH0) = closure54() │
00:12:18 #38953 [verbose] > │ UH0_0(54.0, v0) │
00:12:18 #38954 [verbose] > │ and closure52 () () : UH0 = │
00:12:18 #38955 [verbose] > │ let v0 : (unit -> UH0) = closure53() │
00:12:18 #38956 [verbose] > │ UH0_0(53.0, v0) │
00:12:18 #38957 [verbose] > │ and closure51 () () : UH0 = │
00:12:18 #38958 [verbose] > │ let v0 : (unit -> UH0) = closure52() │
00:12:18 #38959 [verbose] > │ UH0_0(52.0, v0) │
00:12:18 #38960 [verbose] > │ and closure50 () () : UH0 = │
00:12:18 #38961 [verbose] > │ let v0 : (unit -> UH0) = closure51() │
00:12:18 #38962 [verbose] > │ UH0_0(51.0, v0) │
00:12:18 #38963 [verbose] > │ and closure49 () () : UH0 = │
00:12:18 #38964 [verbose] > │ let v0 : (unit -> UH0) = closure50() │
00:12:18 #38965 [verbose] > │ UH0_0(50.0, v0) │
00:12:18 #38966 [verbose] > │ and closure48 () () : UH0 = │
00:12:18 #38967 [verbose] > │ let v0 : (unit -> UH0) = closure49() │
00:12:18 #38968 [verbose] > │ UH0_0(49.0, v0) │
00:12:18 #38969 [verbose] > │ and closure47 () () : UH0 = │
00:12:18 #38970 [verbose] > │ let v0 : (unit -> UH0) = closure48() │
00:12:18 #38971 [verbose] > │ UH0_0(48.0, v0) │
00:12:18 #38972 [verbose] > │ and closure46 () () : UH0 = │
00:12:18 #38973 [verbose] > │ let v0 : (unit -> UH0) = closure47() │
00:12:18 #38974 [verbose] > │ UH0_0(47.0, v0) │
00:12:18 #38975 [verbose] > │ and closure45 () () : UH0 = │
00:12:18 #38976 [verbose] > │ let v0 : (unit -> UH0) = closure46() │
00:12:18 #38977 [verbose] > │ UH0_0(46.0, v0) │
00:12:18 #38978 [verbose] > │ and closure44 () () : UH0 = │
00:12:18 #38979 [verbose] > │ let v0 : (unit -> UH0) = closure45() │
00:12:18 #38980 [verbose] > │ UH0_0(45.0, v0) │
00:12:18 #38981 [verbose] > │ and closure43 () () : UH0 = │
00:12:18 #38982 [verbose] > │ let v0 : (unit -> UH0) = closure44() │
00:12:18 #38983 [verbose] > │ UH0_0(44.0, v0) │
00:12:18 #38984 [verbose] > │ and closure42 () () : UH0 = │
00:12:18 #38985 [verbose] > │ let v0 : (unit -> UH0) = closure43() │
00:12:18 #38986 [verbose] > │ UH0_0(43.0, v0) │
00:12:18 #38987 [verbose] > │ and closure41 () () : UH0 = │
00:12:18 #38988 [verbose] > │ let v0 : (unit -> UH0) = closure42() │
00:12:18 #38989 [verbose] > │ UH0_0(42.0, v0) │
00:12:18 #38990 [verbose] > │ and closure40 () () : UH0 = │
00:12:18 #38991 [verbose] > │ let v0 : (unit -> UH0) = closure41() │
00:12:18 #38992 [verbose] > │ UH0_0(41.0, v0) │
00:12:18 #38993 [verbose] > │ and closure39 () () : UH0 = │
00:12:18 #38994 [verbose] > │ let v0 : (unit -> UH0) = closure40() │
00:12:18 #38995 [verbose] > │ UH0_0(40.0, v0) │
00:12:18 #38996 [verbose] > │ and closure38 () () : UH0 = │
00:12:18 #38997 [verbose] > │ let v0 : (unit -> UH0) = closure39() │
00:12:18 #38998 [verbose] > │ UH0_0(39.0, v0) │
00:12:18 #38999 [verbose] > │ and closure37 () () : UH0 = │
00:12:18 #39000 [verbose] > │ let v0 : (unit -> UH0) = closure38() │
00:12:18 #39001 [verbose] > │ UH0_0(38.0, v0) │
00:12:18 #39002 [verbose] > │ and closure36 () () : UH0 = │
00:12:18 #39003 [verbose] > │ let v0 : (unit -> UH0) = closure37() │
00:12:18 #39004 [verbose] > │ UH0_0(37.0, v0) │
00:12:18 #39005 [verbose] > │ and closure35 () () : UH0 = │
00:12:18 #39006 [verbose] > │ let v0 : (unit -> UH0) = closure36() │
00:12:18 #39007 [verbose] > │ UH0_0(36.0, v0) │
00:12:18 #39008 [verbose] > │ and closure34 () () : UH0 = │
00:12:18 #39009 [verbose] > │ let v0 : (unit -> UH0) = closure35() │
00:12:18 #39010 [verbose] > │ UH0_0(35.0, v0) │
00:12:18 #39011 [verbose] > │ and closure33 () () : UH0 = │
00:12:18 #39012 [verbose] > │ let v0 : (unit -> UH0) = closure34() │
00:12:18 #39013 [verbose] > │ UH0_0(34.0, v0) │
00:12:18 #39014 [verbose] > │ and closure32 () () : UH0 = │
00:12:18 #39015 [verbose] > │ let v0 : (unit -> UH0) = closure33() │
00:12:18 #39016 [verbose] > │ UH0_0(33.0, v0) │
00:12:18 #39017 [verbose] > │ and closure31 () () : UH0 = │
00:12:18 #39018 [verbose] > │ let v0 : (unit -> UH0) = closure32() │
00:12:18 #39019 [verbose] > │ UH0_0(32.0, v0) │
00:12:18 #39020 [verbose] > │ and closure30 () () : UH0 = │
00:12:18 #39021 [verbose] > │ let v0 : (unit -> UH0) = closure31() │
00:12:18 #39022 [verbose] > │ UH0_0(31.0, v0) │
00:12:18 #39023 [verbose] > │ and closure29 () () : UH0 = │
00:12:18 #39024 [verbose] > │ let v0 : (unit -> UH0) = closure30() │
00:12:18 #39025 [verbose] > │ UH0_0(30.0, v0) │
00:12:18 #39026 [verbose] > │ and closure28 () () : UH0 = │
00:12:18 #39027 [verbose] > │ let v0 : (unit -> UH0) = closure29() │
00:12:18 #39028 [verbose] > │ UH0_0(29.0, v0) │
00:12:18 #39029 [verbose] > │ and closure27 () () : UH0 = │
00:12:18 #39030 [verbose] > │ let v0 : (unit -> UH0) = closure28() │
00:12:18 #39031 [verbose] > │ UH0_0(28.0, v0) │
00:12:18 #39032 [verbose] > │ and closure26 () () : UH0 = │
00:12:18 #39033 [verbose] > │ let v0 : (unit -> UH0) = closure27() │
00:12:18 #39034 [verbose] > │ UH0_0(27.0, v0) │
00:12:18 #39035 [verbose] > │ and closure25 () () : UH0 = │
00:12:18 #39036 [verbose] > │ let v0 : (unit -> UH0) = closure26() │
00:12:18 #39037 [verbose] > │ UH0_0(26.0, v0) │
00:12:18 #39038 [verbose] > │ and closure24 () () : UH0 = │
00:12:18 #39039 [verbose] > │ let v0 : (unit -> UH0) = closure25() │
00:12:18 #39040 [verbose] > │ UH0_0(25.0, v0) │
00:12:18 #39041 [verbose] > │ and closure23 () () : UH0 = │
00:12:18 #39042 [verbose] > │ let v0 : (unit -> UH0) = closure24() │
00:12:18 #39043 [verbose] > │ UH0_0(24.0, v0) │
00:12:18 #39044 [verbose] > │ and closure22 () () : UH0 = │
00:12:18 #39045 [verbose] > │ let v0 : (unit -> UH0) = closure23() │
00:12:18 #39046 [verbose] > │ UH0_0(23.0, v0) │
00:12:18 #39047 [verbose] > │ and closure21 () () : UH0 = │
00:12:18 #39048 [verbose] > │ let v0 : (unit -> UH0) = closure22() │
00:12:18 #39049 [verbose] > │ UH0_0(22.0, v0) │
00:12:18 #39050 [verbose] > │ and closure20 () () : UH0 = │
00:12:18 #39051 [verbose] > │ let v0 : (unit -> UH0) = closure21() │
00:12:18 #39052 [verbose] > │ UH0_0(21.0, v0) │
00:12:18 #39053 [verbose] > │ and closure19 () () : UH0 = │
00:12:18 #39054 [verbose] > │ let v0 : (unit -> UH0) = closure20() │
00:12:18 #39055 [verbose] > │ UH0_0(20.0, v0) │
00:12:18 #39056 [verbose] > │ and closure18 () () : UH0 = │
00:12:18 #39057 [verbose] > │ let v0 : (unit -> UH0) = closure19() │
00:12:18 #39058 [verbose] > │ UH0_0(19.0, v0) │
00:12:18 #39059 [verbose] > │ and closure17 () () : UH0 = │
00:12:18 #39060 [verbose] > │ let v0 : (unit -> UH0) = closure18() │
00:12:18 #39061 [verbose] > │ UH0_0(18.0, v0) │
00:12:18 #39062 [verbose] > │ and closure16 () () : UH0 = │
00:12:18 #39063 [verbose] > │ let v0 : (unit -> UH0) = closure17() │
00:12:18 #39064 [verbose] > │ UH0_0(17.0, v0) │
00:12:18 #39065 [verbose] > │ and closure15 () () : UH0 = │
00:12:18 #39066 [verbose] > │ let v0 : (unit -> UH0) = closure16() │
00:12:18 #39067 [verbose] > │ UH0_0(16.0, v0) │
00:12:18 #39068 [verbose] > │ and closure14 () () : UH0 = │
00:12:18 #39069 [verbose] > │ let v0 : (unit -> UH0) = closure15() │
00:12:18 #39070 [verbose] > │ UH0_0(15.0, v0) │
00:12:18 #39071 [verbose] > │ and closure13 () () : UH0 = │
00:12:18 #39072 [verbose] > │ let v0 : (unit -> UH0) = closure14() │
00:12:18 #39073 [verbose] > │ UH0_0(14.0, v0) │
00:12:18 #39074 [verbose] > │ and closure12 () () : UH0 = │
00:12:18 #39075 [verbose] > │ let v0 : (unit -> UH0) = closure13() │
00:12:18 #39076 [verbose] > │ UH0_0(13.0, v0) │
00:12:18 #39077 [verbose] > │ and closure11 () () : UH0 = │
00:12:18 #39078 [verbose] > │ let v0 : (unit -> UH0) = closure12() │
00:12:18 #39079 [verbose] > │ UH0_0(12.0, v0) │
00:12:18 #39080 [verbose] > │ and closure10 () () : UH0 = │
00:12:18 #39081 [verbose] > │ let v0 : (unit -> UH0) = closure11() │
00:12:18 #39082 [verbose] > │ UH0_0(11.0, v0) │
00:12:18 #39083 [verbose] > │ and closure9 () () : UH0 = │
00:12:18 #39084 [verbose] > │ let v0 : (unit -> UH0) = closure10() │
00:12:18 #39085 [verbose] > │ UH0_0(10.0, v0) │
00:12:18 #39086 [verbose] > │ and closure8 () () : UH0 = │
00:12:18 #39087 [verbose] > │ let v0 : (unit -> UH0) = closure9() │
00:12:18 #39088 [verbose] > │ UH0_0(9.0, v0) │
00:12:18 #39089 [verbose] > │ and closure7 () () : UH0 = │
00:12:18 #39090 [verbose] > │ let v0 : (unit -> UH0) = closure8() │
00:12:18 #39091 [verbose] > │ UH0_0(8.0, v0) │
00:12:18 #39092 [verbose] > │ and closure6 () () : UH0 = │
00:12:18 #39093 [verbose] > │ let v0 : (unit -> UH0) = closure7() │
00:12:18 #39094 [verbose] > │ UH0_0(7.0, v0) │
00:12:18 #39095 [verbose] > │ and closure5 () () : UH0 = │
00:12:18 #39096 [verbose] > │ let v0 : (unit -> UH0) = closure6() │
00:12:18 #39097 [verbose] > │ UH0_0(6.0, v0) │
00:12:18 #39098 [verbose] > │ and closure4 () () : UH0 = │
00:12:18 #39099 [verbose] > │ let v0 : (unit -> UH0) = closure5() │
00:12:18 #39100 [verbose] > │ UH0_0(5.0, v0) │
00:12:18 #39101 [verbose] > │ and closure3 () () : UH0 = │
00:12:18 #39102 [verbose] > │ let v0 : (unit -> UH0) = closure4() │
00:12:18 #39103 [verbose] > │ UH0_0(4.0, v0) │
00:12:18 #39104 [verbose] > │ and closure2 () () : UH0 = │
00:12:18 #39105 [verbose] > │ let v0 : (unit -> UH0) = closure3() │
00:12:18 #39106 [verbose] > │ UH0_0(3.0, v0) │
00:12:18 #39107 [verbose] > │ and closure1 () () : UH0 = │
00:12:18 #39108 [verbose] > │ let v0 : (unit -> UH0) = closure2() │
00:12:18 #39109 [verbose] > │ UH0_0(2.0, v0) │
00:12:18 #39110 [verbose] > │ and closure0 () () : UH0 = │
00:12:18 #39111 [verbose] > │ let v0 : (unit -> UH0) = closure1() │
00:12:18 #39112 [verbose] > │ UH0_0(1.0, v0) │
00:12:18 #39113 [verbose] > │ and closure129 () () : UH1 = │
00:12:18 #39114 [verbose] > │ UH1_1 │
00:12:18 #39115 [verbose] > │ and closure128 () () : UH1 = │
00:12:18 #39116 [verbose] > │ let v0 : (unit -> UH1) = closure129() │
00:12:18 #39117 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.64, 0.0007224452478461016, 0.0, 0.0, 0.0, │
00:12:18 #39118 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39119 [verbose] > │ and closure127 () () : UH1 = │
00:12:18 #39120 [verbose] > │ let v0 : (unit -> UH1) = closure128() │
00:12:18 #39121 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.63, 0.001429728391993452, 0.0, 0.0, 0.0, │
00:12:18 #39122 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39123 [verbose] > │ and closure126 () () : UH1 = │
00:12:18 #39124 [verbose] > │ let v0 : (unit -> UH1) = closure127() │
00:12:18 #39125 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.62, 0.0021070055388626528, 0.0, 0.0, 0.0, │
00:12:18 #39126 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39127 [verbose] > │ and closure125 () () : UH1 = │
00:12:18 #39128 [verbose] > │ let v0 : (unit -> UH1) = closure126() │
00:12:18 #39129 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.61, 0.0027400625367733585, 0.0, 0.0, 0.0, │
00:12:18 #39130 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39131 [verbose] > │ and closure124 () () : UH1 = │
00:12:18 #39132 [verbose] > │ let v0 : (unit -> UH1) = closure125() │
00:12:18 #39133 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.6, 0.0033156132912039783, 0.0, 0.0, 0.0, │
00:12:18 #39134 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39135 [verbose] > │ and closure123 () () : UH1 = │
00:12:18 #39136 [verbose] > │ let v0 : (unit -> UH1) = closure124() │
00:12:18 #39137 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.59, 0.003821578602729245, 0.0, 0.0, 0.0, │
00:12:18 #39138 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39139 [verbose] > │ and closure122 () () : UH1 = │
00:12:18 #39140 [verbose] > │ let v0 : (unit -> UH1) = closure123() │
00:12:18 #39141 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.5800000000000001, 0.004247339675607605, │
00:12:18 #39142 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39143 [verbose] > │ and closure121 () () : UH1 = │
00:12:18 #39144 [verbose] > │ let v0 : (unit -> UH1) = closure122() │
00:12:18 #39145 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.5700000000000001, 0.004583960976582912, │
00:12:18 #39146 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39147 [verbose] > │ and closure120 () () : UH1 = │
00:12:18 #39148 [verbose] > │ let v0 : (unit -> UH1) = closure121() │
00:12:18 #39149 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.56, 0.004824377766717758, 0.0, 0.0, 0.0, │
00:12:18 #39150 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39151 [verbose] > │ and closure119 () () : UH1 = │
00:12:18 #39152 [verbose] > │ let v0 : (unit -> UH1) = closure120() │
00:12:18 #39153 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.55, 0.004963544370490271, 0.0, 0.0, 0.0, │
00:12:18 #39154 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39155 [verbose] > │ and closure118 () () : UH1 = │
00:12:18 #39156 [verbose] > │ let v0 : (unit -> UH1) = closure119() │
00:12:18 #39157 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.54, 0.004998540070400965, 0.0, 0.0, 0.0, │
00:12:18 #39158 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39159 [verbose] > │ and closure117 () () : UH1 = │
00:12:18 #39160 [verbose] > │ let v0 : (unit -> UH1) = closure118() │
00:12:18 #39161 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.53, 0.004928630404658255, 0.0, 0.0, 0.0, │
00:12:18 #39162 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39163 [verbose] > │ and closure116 () () : UH1 = │
00:12:18 #39164 [verbose] > │ let v0 : (unit -> UH1) = closure117() │
00:12:18 #39165 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.52, 0.004755282581475766, 0.0, 0.0, 0.0, │
00:12:18 #39166 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39167 [verbose] > │ and closure115 () () : UH1 = │
00:12:18 #39168 [verbose] > │ let v0 : (unit -> UH1) = closure116() │
00:12:18 #39169 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.51, 0.0044821346864785195, 0.0, 0.0, 0.0, │
00:12:18 #39170 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39171 [verbose] > │ and closure114 () () : UH1 = │
00:12:18 #39172 [verbose] > │ let v0 : (unit -> UH1) = closure115() │
00:12:18 #39173 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.5, 0.0041149193294682815, 0.0, 0.0, 0.0, │
00:12:18 #39174 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39175 [verbose] > │ and closure113 () () : UH1 = │
00:12:18 #39176 [verbose] > │ let v0 : (unit -> UH1) = closure114() │
00:12:18 #39177 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.49, 0.0036613433329888622, 0.0, 0.0, 0.0, │
00:12:18 #39178 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39179 [verbose] > │ and closure112 () () : UH1 = │
00:12:18 #39180 [verbose] > │ let v0 : (unit -> UH1) = closure113() │
00:12:18 #39181 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.48000000000000004, 0.003130925987691568, │
00:12:18 #39182 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39183 [verbose] > │ and closure111 () () : UH1 = │
00:12:18 #39184 [verbose] > │ let v0 : (unit -> UH1) = closure112() │
00:12:18 #39185 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.47000000000000003, 0.002534799269067953, │
00:12:18 #39186 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39187 [verbose] > │ and closure110 () () : UH1 = │
00:12:18 #39188 [verbose] > │ let v0 : (unit -> UH1) = closure111() │
00:12:18 #39189 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.46, 0.0018854742084416021, 0.0, 0.0, 0.0, │
00:12:18 #39190 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39191 [verbose] > │ and closure109 () () : UH1 = │
00:12:18 #39192 [verbose] > │ let v0 : (unit -> UH1) = closure110() │
00:12:18 #39193 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.45, 0.0011965783214377866, 0.0, 0.0, 0.0, │
00:12:18 #39194 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39195 [verbose] > │ and closure108 () () : UH1 = │
00:12:18 #39196 [verbose] > │ let v0 : (unit -> UH1) = closure109() │
00:12:18 #39197 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.44, 0.0004825696045725713, 0.0, 0.0, 0.0, │
00:12:18 #39198 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39199 [verbose] > │ and closure107 () () : UH1 = │
00:12:18 #39200 [verbose] > │ let v0 : (unit -> UH1) = closure108() │
00:12:18 #39201 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.43, -0.00024156689762753724, 0.0, 0.0, │
00:12:18 #39202 [verbose] > │ 0.0, 0.0, 0.0, v0) │
00:12:18 #39203 [verbose] > │ and closure106 () () : UH1 = │
00:12:18 #39204 [verbose] > │ let v0 : (unit -> UH1) = closure107() │
00:12:18 #39205 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.42000000000000004, -0.0009606335867685414, │
00:12:18 #39206 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39207 [verbose] > │ and closure105 () () : UH1 = │
00:12:18 #39208 [verbose] > │ let v0 : (unit -> UH1) = closure106() │
00:12:18 #39209 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.41000000000000003, -0.0016595392656426435, │
00:12:18 #39210 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39211 [verbose] > │ and closure104 () () : UH1 = │
00:12:18 #39212 [verbose] > │ let v0 : (unit -> UH1) = closure105() │
00:12:18 #39213 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.4, -0.002323615860218846, 0.0, 0.0, 0.0, │
00:12:18 #39214 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39215 [verbose] > │ and closure103 () () : UH1 = │
00:12:18 #39216 [verbose] > │ let v0 : (unit -> UH1) = closure104() │
00:12:18 #39217 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.39, -0.002938926261462367, 0.0, 0.0, 0.0, │
00:12:18 #39218 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39219 [verbose] > │ and closure102 () () : UH1 = │
00:12:18 #39220 [verbose] > │ let v0 : (unit -> UH1) = closure103() │
00:12:18 #39221 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.38, -0.0034925568262446837, 0.0, 0.0, 0.0, │
00:12:18 #39222 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39223 [verbose] > │ and closure101 () () : UH1 = │
00:12:18 #39224 [verbose] > │ let v0 : (unit -> UH1) = closure102() │
00:12:18 #39225 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.37, -0.003972888398568774, 0.0, 0.0, 0.0, │
00:12:18 #39226 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39227 [verbose] > │ and closure100 () () : UH1 = │
00:12:18 #39228 [verbose] > │ let v0 : (unit -> UH1) = closure101() │
00:12:18 #39229 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.36000000000000004, -0.004369840163132589, │
00:12:18 #39230 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39231 [verbose] > │ and closure99 () () : UH1 = │
00:12:18 #39232 [verbose] > │ let v0 : (unit -> UH1) = closure100() │
00:12:18 #39233 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.35000000000000003, -0.004675081213427074, │
00:12:18 #39234 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39235 [verbose] > │ and closure98 () () : UH1 = │
00:12:18 #39236 [verbose] > │ let v0 : (unit -> UH1) = closure99() │
00:12:18 #39237 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.34, -0.004882205394146361, 0.0, 0.0, 0.0, │
00:12:18 #39238 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39239 [verbose] > │ and closure97 () () : UH1 = │
00:12:18 #39240 [verbose] > │ let v0 : (unit -> UH1) = closure98() │
00:12:18 #39241 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.33, -0.004986865748457456, 0.0, 0.0, 0.0, │
00:12:18 #39242 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39243 [verbose] > │ and closure96 () () : UH1 = │
00:12:18 #39244 [verbose] > │ let v0 : (unit -> UH1) = closure97() │
00:12:18 #39245 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.32, -0.004986865748457456, 0.0, 0.0, 0.0, │
00:12:18 #39246 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39247 [verbose] > │ and closure95 () () : UH1 = │
00:12:18 #39248 [verbose] > │ let v0 : (unit -> UH1) = closure96() │
00:12:18 #39249 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.31, -0.004882205394146359, 0.0, 0.0, 0.0, │
00:12:18 #39250 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39251 [verbose] > │ and closure94 () () : UH1 = │
00:12:18 #39252 [verbose] > │ let v0 : (unit -> UH1) = closure95() │
00:12:18 #39253 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.3, -0.004675081213427074, 0.0, 0.0, 0.0, │
00:12:18 #39254 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39255 [verbose] > │ and closure93 () () : UH1 = │
00:12:18 #39256 [verbose] > │ let v0 : (unit -> UH1) = closure94() │
00:12:18 #39257 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.29000000000000004, -0.00436984016313259, │
00:12:18 #39258 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39259 [verbose] > │ and closure92 () () : UH1 = │
00:12:18 #39260 [verbose] > │ let v0 : (unit -> UH1) = closure93() │
00:12:18 #39261 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.28, -0.003972888398568771, 0.0, 0.0, 0.0, │
00:12:18 #39262 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39263 [verbose] > │ and closure91 () () : UH1 = │
00:12:18 #39264 [verbose] > │ let v0 : (unit -> UH1) = closure92() │
00:12:18 #39265 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.27, -0.003492556826244686, 0.0, 0.0, 0.0, │
00:12:18 #39266 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39267 [verbose] > │ and closure90 () () : UH1 = │
00:12:18 #39268 [verbose] > │ let v0 : (unit -> UH1) = closure91() │
00:12:18 #39269 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.26, -0.0029389262614623636, 0.0, 0.0, 0.0, │
00:12:18 #39270 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39271 [verbose] > │ and closure89 () () : UH1 = │
00:12:18 #39272 [verbose] > │ let v0 : (unit -> UH1) = closure90() │
00:12:18 #39273 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.25, -0.002323615860218842, 0.0, 0.0, 0.0, │
00:12:18 #39274 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39275 [verbose] > │ and closure88 () () : UH1 = │
00:12:18 #39276 [verbose] > │ let v0 : (unit -> UH1) = closure89() │
00:12:18 #39277 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.24000000000000002, -0.001659539265642642, │
00:12:18 #39278 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39279 [verbose] > │ and closure87 () () : UH1 = │
00:12:18 #39280 [verbose] > │ let v0 : (unit -> UH1) = closure88() │
00:12:18 #39281 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.23, -0.0009606335867685418, 0.0, 0.0, 0.0, │
00:12:18 #39282 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39283 [verbose] > │ and closure86 () () : UH1 = │
00:12:18 #39284 [verbose] > │ let v0 : (unit -> UH1) = closure87() │
00:12:18 #39285 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.22, -0.00024156689762753317, 0.0, 0.0, │
00:12:18 #39286 [verbose] > │ 0.0, 0.0, 0.0, v0) │
00:12:18 #39287 [verbose] > │ and closure85 () () : UH1 = │
00:12:18 #39288 [verbose] > │ let v0 : (unit -> UH1) = closure86() │
00:12:18 #39289 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.21000000000000002, 0.00048256960457257535, │
00:12:18 #39290 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39291 [verbose] > │ and closure84 () () : UH1 = │
00:12:18 #39292 [verbose] > │ let v0 : (unit -> UH1) = closure85() │
00:12:18 #39293 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.2, 0.0011965783214377905, 0.0, 0.0, 0.0, │
00:12:18 #39294 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39295 [verbose] > │ and closure83 () () : UH1 = │
00:12:18 #39296 [verbose] > │ let v0 : (unit -> UH1) = closure84() │
00:12:18 #39297 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.19, 0.0018854742084416015, 0.0, 0.0, 0.0, │
00:12:18 #39298 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39299 [verbose] > │ and closure82 () () : UH1 = │
00:12:18 #39300 [verbose] > │ let v0 : (unit -> UH1) = closure83() │
00:12:18 #39301 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.18000000000000002, 0.002534799269067951, │
00:12:18 #39302 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39303 [verbose] > │ and closure81 () () : UH1 = │
00:12:18 #39304 [verbose] > │ let v0 : (unit -> UH1) = closure82() │
00:12:18 #39305 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.17, 0.0031309259876915697, 0.0, 0.0, 0.0, │
00:12:18 #39306 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39307 [verbose] > │ and closure80 () () : UH1 = │
00:12:18 #39308 [verbose] > │ let v0 : (unit -> UH1) = closure81() │
00:12:18 #39309 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.16, 0.0036613433329888666, 0.0, 0.0, 0.0, │
00:12:18 #39310 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39311 [verbose] > │ and closure79 () () : UH1 = │
00:12:18 #39312 [verbose] > │ let v0 : (unit -> UH1) = closure80() │
00:12:18 #39313 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.15000000000000002, 0.0041149193294682815, │
00:12:18 #39314 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39315 [verbose] > │ and closure78 () () : UH1 = │
00:12:18 #39316 [verbose] > │ let v0 : (unit -> UH1) = closure79() │
00:12:18 #39317 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.14, 0.004482134686478519, 0.0, 0.0, 0.0, │
00:12:18 #39318 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39319 [verbose] > │ and closure77 () () : UH1 = │
00:12:18 #39320 [verbose] > │ let v0 : (unit -> UH1) = closure78() │
00:12:18 #39321 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.13, 0.004755282581475768, 0.0, 0.0, 0.0, │
00:12:18 #39322 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39323 [verbose] > │ and closure76 () () : UH1 = │
00:12:18 #39324 [verbose] > │ let v0 : (unit -> UH1) = closure77() │
00:12:18 #39325 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.12, 0.004928630404658255, 0.0, 0.0, 0.0, │
00:12:18 #39326 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39327 [verbose] > │ and closure75 () () : UH1 = │
00:12:18 #39328 [verbose] > │ let v0 : (unit -> UH1) = closure76() │
00:12:18 #39329 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.11, 0.004998540070400965, 0.0, 0.0, 0.0, │
00:12:18 #39330 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39331 [verbose] > │ and closure74 () () : UH1 = │
00:12:18 #39332 [verbose] > │ let v0 : (unit -> UH1) = closure75() │
00:12:18 #39333 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.09999999999999999, 0.00496354437049027, │
00:12:18 #39334 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39335 [verbose] > │ and closure73 () () : UH1 = │
00:12:18 #39336 [verbose] > │ let v0 : (unit -> UH1) = closure74() │
00:12:18 #39337 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.09, 0.004824377766717757, 0.0, 0.0, 0.0, │
00:12:18 #39338 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39339 [verbose] > │ and closure72 () () : UH1 = │
00:12:18 #39340 [verbose] > │ let v0 : (unit -> UH1) = closure73() │
00:12:18 #39341 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.08, 0.004583960976582912, 0.0, 0.0, 0.0, │
00:12:18 #39342 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39343 [verbose] > │ and closure71 () () : UH1 = │
00:12:18 #39344 [verbose] > │ let v0 : (unit -> UH1) = closure72() │
00:12:18 #39345 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.06999999999999999, 0.004247339675607605, │
00:12:18 #39346 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39347 [verbose] > │ and closure70 () () : UH1 = │
00:12:18 #39348 [verbose] > │ let v0 : (unit -> UH1) = closure71() │
00:12:18 #39349 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.060000000000000005, 0.0038215786027292415, │
00:12:18 #39350 [verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0) │
00:12:18 #39351 [verbose] > │ and closure69 () () : UH1 = │
00:12:18 #39352 [verbose] > │ let v0 : (unit -> UH1) = closure70() │
00:12:18 #39353 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.05, 0.0033156132912039757, 0.0, 0.0, 0.0, │
00:12:18 #39354 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39355 [verbose] > │ and closure68 () () : UH1 = │
00:12:18 #39356 [verbose] > │ let v0 : (unit -> UH1) = closure69() │
00:12:18 #39357 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.04, 0.00274006253677335, 0.0, 0.0, 0.0, │
00:12:18 #39358 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39359 [verbose] > │ and closure67 () () : UH1 = │
00:12:18 #39360 [verbose] > │ let v0 : (unit -> UH1) = closure68() │
00:12:18 #39361 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.03, 0.0021070055388626454, 0.0, 0.0, 0.0, │
00:12:18 #39362 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39363 [verbose] > │ and closure66 () () : UH1 = │
00:12:18 #39364 [verbose] > │ let v0 : (unit -> UH1) = closure67() │
00:12:18 #39365 [verbose] > │ UH1_0(0.0, 8.422578125E-06, 0.02, 0.0014297283919934465, 0.0, 0.0, 0.0, │
00:12:18 #39366 [verbose] > │ 0.0, 0.0, v0) │
00:12:18 #39367 [verbose] > │ and closure132 (v0 : (unit -> UH1), v1 : (unit -> UH3)) () : UH1 = │
00:12:18 #39368 [verbose] > │ let v2 : UH3 = v1 () │
00:12:18 #39369 [verbose] > │ let v3 : UH1 = v0 () │
00:12:18 #39370 [verbose] > │ match v2 with │
00:12:18 #39371 [verbose] > │ | UH3_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons *) │
00:12:18 #39372 [verbose] > │ match v3 with │
00:12:18 #39373 [verbose] > │ | UH1_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (* │
00:12:18 #39374 [verbose] > │ StreamCons *) │
00:12:18 #39375 [verbose] > │ let v24 : float = v9 * 1.25E-05 │
00:12:18 #39376 [verbose] > │ let v25 : float = v19 + v24 │
00:12:18 #39377 [verbose] > │ let v26 : float = 1.25E-05 * v6 │
00:12:18 #39378 [verbose] > │ let v27 : float = 1.25E-05 * v7 │
00:12:18 #39379 [verbose] > │ let v28 : float = 1.25E-05 * v8 │
00:12:18 #39380 [verbose] > │ let v29 : float = v16 + v26 │
00:12:18 #39381 [verbose] > │ let v30 : float = v17 + v27 │
00:12:18 #39382 [verbose] > │ let v31 : float = v18 + v28 │
00:12:18 #39383 [verbose] > │ let v32 : float = 1.25E-05 * v10 │
00:12:18 #39384 [verbose] > │ let v33 : float = 1.25E-05 * v11 │
00:12:18 #39385 [verbose] > │ let v34 : float = 1.25E-05 * v12 │
00:12:18 #39386 [verbose] > │ let v35 : float = v20 + v32 │
00:12:18 #39387 [verbose] > │ let v36 : float = v21 + v33 │
00:12:18 #39388 [verbose] > │ let v37 : float = v22 + v34 │
00:12:18 #39389 [verbose] > │ let v38 : (unit -> UH1) = closure132(v23, v13) │
00:12:18 #39390 [verbose] > │ UH1_0(v14, v15, v29, v30, v31, v25, v35, v36, v37, v38) │
00:12:18 #39391 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:18 #39392 [verbose] > │ UH1_1 │
00:12:18 #39393 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39394 [verbose] > │ UH1_1 │
00:12:18 #39395 [verbose] > │ and closure133 (v0 : UH1) () : UH1 = │
00:12:18 #39396 [verbose] > │ v0 │
00:12:18 #39397 [verbose] > │ and closure134 (v0 : UH1, v1 : Mut0) () : UH1 = │
00:12:18 #39398 [verbose] > │ let v2 : US0 = v1.l0 │
00:12:18 #39399 [verbose] > │ match v2 with │
00:12:18 #39400 [verbose] > │ | US0_1(v3) -> (* Computed *) │
00:12:18 #39401 [verbose] > │ v3 │
00:12:18 #39402 [verbose] > │ | US0_0(v4) -> (* NotComputed *) │
00:12:18 #39403 [verbose] > │ let v5 : UH1 = v4 () │
00:12:18 #39404 [verbose] > │ let v20 : UH1 = │
00:12:18 #39405 [verbose] > │ match v5 with │
00:12:18 #39406 [verbose] > │ | UH1_0(v7, v8, v9, v10, v11, v12, v13, v14, v15, v16) -> (* │
00:12:18 #39407 [verbose] > │ StreamCons *) │
00:12:18 #39408 [verbose] > │ let v17 : (unit -> UH1) = method3(v0, v16) │
00:12:18 #39409 [verbose] > │ UH1_0(v7, v8, v9, v10, v11, v12, v13, v14, v15, v17) │
00:12:18 #39410 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:18 #39411 [verbose] > │ UH1_1 │
00:12:18 #39412 [verbose] > │ let v21 : US0 = US0_1(v20) │
00:12:18 #39413 [verbose] > │ v1.l0 <- v21 │
00:12:18 #39414 [verbose] > │ v20 │
00:12:18 #39415 [verbose] > │ and method3 (v0 : UH1, v1 : (unit -> UH1)) : (unit -> UH1) = │
00:12:18 #39416 [verbose] > │ let v2 : US0 = US0_0(v1) │
00:12:18 #39417 [verbose] > │ let v3 : Mut0 = {l0 = v2} : Mut0 │
00:12:18 #39418 [verbose] > │ closure134(v0, v3) │
00:12:18 #39419 [verbose] > │ and closure135 (v0 : (unit -> UH1), v1 : (unit -> UH3)) () : UH1 = │
00:12:18 #39420 [verbose] > │ let v2 : UH3 = v1 () │
00:12:18 #39421 [verbose] > │ let v3 : UH1 = v0 () │
00:12:18 #39422 [verbose] > │ match v2 with │
00:12:18 #39423 [verbose] > │ | UH3_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons *) │
00:12:18 #39424 [verbose] > │ match v3 with │
00:12:18 #39425 [verbose] > │ | UH1_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (* │
00:12:18 #39426 [verbose] > │ StreamCons *) │
00:12:18 #39427 [verbose] > │ let v24 : float = v9 * 2.5E-05 │
00:12:18 #39428 [verbose] > │ let v25 : float = v19 + v24 │
00:12:18 #39429 [verbose] > │ let v26 : float = 2.5E-05 * v6 │
00:12:18 #39430 [verbose] > │ let v27 : float = 2.5E-05 * v7 │
00:12:18 #39431 [verbose] > │ let v28 : float = 2.5E-05 * v8 │
00:12:18 #39432 [verbose] > │ let v29 : float = v16 + v26 │
00:12:18 #39433 [verbose] > │ let v30 : float = v17 + v27 │
00:12:18 #39434 [verbose] > │ let v31 : float = v18 + v28 │
00:12:18 #39435 [verbose] > │ let v32 : float = 2.5E-05 * v10 │
00:12:18 #39436 [verbose] > │ let v33 : float = 2.5E-05 * v11 │
00:12:18 #39437 [verbose] > │ let v34 : float = 2.5E-05 * v12 │
00:12:18 #39438 [verbose] > │ let v35 : float = v20 + v32 │
00:12:18 #39439 [verbose] > │ let v36 : float = v21 + v33 │
00:12:18 #39440 [verbose] > │ let v37 : float = v22 + v34 │
00:12:18 #39441 [verbose] > │ let v38 : (unit -> UH1) = closure135(v23, v13) │
00:12:18 #39442 [verbose] > │ UH1_0(v14, v15, v29, v30, v31, v25, v35, v36, v37, v38) │
00:12:18 #39443 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:18 #39444 [verbose] > │ UH1_1 │
00:12:18 #39445 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39446 [verbose] > │ UH1_1 │
00:12:18 #39447 [verbose] > │ and closure136 (v0 : (unit -> UH3), v1 : (unit -> UH3)) () : UH3 = │
00:12:18 #39448 [verbose] > │ let v2 : UH3 = v1 () │
00:12:18 #39449 [verbose] > │ let v3 : UH3 = v0 () │
00:12:18 #39450 [verbose] > │ match v2 with │
00:12:18 #39451 [verbose] > │ | UH3_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons *) │
00:12:18 #39452 [verbose] > │ match v3 with │
00:12:18 #39453 [verbose] > │ | UH3_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (* │
00:12:18 #39454 [verbose] > │ StreamCons *) │
00:12:18 #39455 [verbose] > │ let v24 : float = v4 + v14 │
00:12:18 #39456 [verbose] > │ let v25 : float = v5 + v15 │
00:12:18 #39457 [verbose] > │ let v26 : float = v9 + v19 │
00:12:18 #39458 [verbose] > │ let v27 : float = v6 + v16 │
00:12:18 #39459 [verbose] > │ let v28 : float = v7 + v17 │
00:12:18 #39460 [verbose] > │ let v29 : float = v8 + v18 │
00:12:18 #39461 [verbose] > │ let v30 : float = v10 + v20 │
00:12:18 #39462 [verbose] > │ let v31 : float = v11 + v21 │
00:12:18 #39463 [verbose] > │ let v32 : float = v12 + v22 │
00:12:18 #39464 [verbose] > │ let v33 : (unit -> UH3) = closure136(v23, v13) │
00:12:18 #39465 [verbose] > │ UH3_0(v24, v25, v27, v28, v29, v26, v30, v31, v32, v33) │
00:12:18 #39466 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39467 [verbose] > │ UH3_1 │
00:12:18 #39468 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39469 [verbose] > │ UH3_1 │
00:12:18 #39470 [verbose] > │ and closure137 (v0 : (unit -> UH1), v1 : (unit -> UH3)) () : UH1 = │
00:12:18 #39471 [verbose] > │ let v2 : UH3 = v1 () │
00:12:18 #39472 [verbose] > │ let v3 : UH1 = v0 () │
00:12:18 #39473 [verbose] > │ match v2 with │
00:12:18 #39474 [verbose] > │ | UH3_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons *) │
00:12:18 #39475 [verbose] > │ match v3 with │
00:12:18 #39476 [verbose] > │ | UH1_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (* │
00:12:18 #39477 [verbose] > │ StreamCons *) │
00:12:18 #39478 [verbose] > │ let v24 : float = v9 * 4.166666666666667E-06 │
00:12:18 #39479 [verbose] > │ let v25 : float = v19 + v24 │
00:12:18 #39480 [verbose] > │ let v26 : float = 4.166666666666667E-06 * v6 │
00:12:18 #39481 [verbose] > │ let v27 : float = 4.166666666666667E-06 * v7 │
00:12:18 #39482 [verbose] > │ let v28 : float = 4.166666666666667E-06 * v8 │
00:12:18 #39483 [verbose] > │ let v29 : float = v16 + v26 │
00:12:18 #39484 [verbose] > │ let v30 : float = v17 + v27 │
00:12:18 #39485 [verbose] > │ let v31 : float = v18 + v28 │
00:12:18 #39486 [verbose] > │ let v32 : float = 4.166666666666667E-06 * v10 │
00:12:18 #39487 [verbose] > │ let v33 : float = 4.166666666666667E-06 * v11 │
00:12:18 #39488 [verbose] > │ let v34 : float = 4.166666666666667E-06 * v12 │
00:12:18 #39489 [verbose] > │ let v35 : float = v20 + v32 │
00:12:18 #39490 [verbose] > │ let v36 : float = v21 + v33 │
00:12:18 #39491 [verbose] > │ let v37 : float = v22 + v34 │
00:12:18 #39492 [verbose] > │ let v38 : (unit -> UH1) = closure137(v23, v13) │
00:12:18 #39493 [verbose] > │ UH1_0(v14, v15, v29, v30, v31, v25, v35, v36, v37, v38) │
00:12:18 #39494 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:18 #39495 [verbose] > │ UH1_1 │
00:12:18 #39496 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39497 [verbose] > │ UH1_1 │
00:12:18 #39498 [verbose] > │ and closure131 (v0 : (UH1 -> UH3)) (v1 : UH1) : UH1 = │
00:12:18 #39499 [verbose] > │ let v2 : UH3 = v0 v1 │
00:12:18 #39500 [verbose] > │ let v44 : UH1 = │
00:12:18 #39501 [verbose] > │ match v2 with │
00:12:18 #39502 [verbose] > │ | UH3_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* StreamCons │
00:12:18 #39503 [verbose] > │ *) │
00:12:18 #39504 [verbose] > │ match v1 with │
00:12:18 #39505 [verbose] > │ | UH1_0(v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) -> (* │
00:12:18 #39506 [verbose] > │ StreamCons *) │
00:12:18 #39507 [verbose] > │ let v23 : float = v8 * 1.25E-05 │
00:12:18 #39508 [verbose] > │ let v24 : float = v18 + v23 │
00:12:18 #39509 [verbose] > │ let v25 : float = 1.25E-05 * v5 │
00:12:18 #39510 [verbose] > │ let v26 : float = 1.25E-05 * v6 │
00:12:18 #39511 [verbose] > │ let v27 : float = 1.25E-05 * v7 │
00:12:18 #39512 [verbose] > │ let v28 : float = v15 + v25 │
00:12:18 #39513 [verbose] > │ let v29 : float = v16 + v26 │
00:12:18 #39514 [verbose] > │ let v30 : float = v17 + v27 │
00:12:18 #39515 [verbose] > │ let v31 : float = 1.25E-05 * v9 │
00:12:18 #39516 [verbose] > │ let v32 : float = 1.25E-05 * v10 │
00:12:18 #39517 [verbose] > │ let v33 : float = 1.25E-05 * v11 │
00:12:18 #39518 [verbose] > │ let v34 : float = v19 + v31 │
00:12:18 #39519 [verbose] > │ let v35 : float = v20 + v32 │
00:12:18 #39520 [verbose] > │ let v36 : float = v21 + v33 │
00:12:18 #39521 [verbose] > │ let v37 : (unit -> UH1) = closure132(v22, v12) │
00:12:18 #39522 [verbose] > │ UH1_0(v13, v14, v28, v29, v30, v24, v34, v35, v36, v37) │
00:12:18 #39523 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:18 #39524 [verbose] > │ UH1_1 │
00:12:18 #39525 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39526 [verbose] > │ UH1_1 │
00:12:18 #39527 [verbose] > │ let v45 : (unit -> UH1) = closure133(v44) │
00:12:18 #39528 [verbose] > │ let v46 : (unit -> UH1) = method3(v44, v45) │
00:12:18 #39529 [verbose] > │ let v47 : UH1 = v46 () │
00:12:18 #39530 [verbose] > │ let v48 : UH3 = v0 v47 │
00:12:18 #39531 [verbose] > │ let v90 : UH1 = │
00:12:18 #39532 [verbose] > │ match v48 with │
00:12:18 #39533 [verbose] > │ | UH3_0(v49, v50, v51, v52, v53, v54, v55, v56, v57, v58) -> (* │
00:12:18 #39534 [verbose] > │ StreamCons *) │
00:12:18 #39535 [verbose] > │ match v1 with │
00:12:18 #39536 [verbose] > │ | UH1_0(v59, v60, v61, v62, v63, v64, v65, v66, v67, v68) -> (* │
00:12:18 #39537 [verbose] > │ StreamCons *) │
00:12:18 #39538 [verbose] > │ let v69 : float = v54 * 1.25E-05 │
00:12:18 #39539 [verbose] > │ let v70 : float = v64 + v69 │
00:12:18 #39540 [verbose] > │ let v71 : float = 1.25E-05 * v51 │
00:12:18 #39541 [verbose] > │ let v72 : float = 1.25E-05 * v52 │
00:12:18 #39542 [verbose] > │ let v73 : float = 1.25E-05 * v53 │
00:12:18 #39543 [verbose] > │ let v74 : float = v61 + v71 │
00:12:18 #39544 [verbose] > │ let v75 : float = v62 + v72 │
00:12:18 #39545 [verbose] > │ let v76 : float = v63 + v73 │
00:12:18 #39546 [verbose] > │ let v77 : float = 1.25E-05 * v55 │
00:12:18 #39547 [verbose] > │ let v78 : float = 1.25E-05 * v56 │
00:12:18 #39548 [verbose] > │ let v79 : float = 1.25E-05 * v57 │
00:12:18 #39549 [verbose] > │ let v80 : float = v65 + v77 │
00:12:18 #39550 [verbose] > │ let v81 : float = v66 + v78 │
00:12:18 #39551 [verbose] > │ let v82 : float = v67 + v79 │
00:12:18 #39552 [verbose] > │ let v83 : (unit -> UH1) = closure132(v68, v58) │
00:12:18 #39553 [verbose] > │ UH1_0(v59, v60, v74, v75, v76, v70, v80, v81, v82, v83) │
00:12:18 #39554 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:18 #39555 [verbose] > │ UH1_1 │
00:12:18 #39556 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39557 [verbose] > │ UH1_1 │
00:12:18 #39558 [verbose] > │ let v91 : (unit -> UH1) = closure133(v90) │
00:12:18 #39559 [verbose] > │ let v92 : (unit -> UH1) = method3(v90, v91) │
00:12:18 #39560 [verbose] > │ let v93 : UH1 = v92 () │
00:12:18 #39561 [verbose] > │ let v94 : UH3 = v0 v93 │
00:12:18 #39562 [verbose] > │ let v136 : UH1 = │
00:12:18 #39563 [verbose] > │ match v94 with │
00:12:18 #39564 [verbose] > │ | UH3_0(v95, v96, v97, v98, v99, v100, v101, v102, v103, v104) -> (* │
00:12:18 #39565 [verbose] > │ StreamCons *) │
00:12:18 #39566 [verbose] > │ match v1 with │
00:12:18 #39567 [verbose] > │ | UH1_0(v105, v106, v107, v108, v109, v110, v111, v112, v113, │
00:12:18 #39568 [verbose] > │ v114) -> (* StreamCons *) │
00:12:18 #39569 [verbose] > │ let v115 : float = v100 * 2.5E-05 │
00:12:18 #39570 [verbose] > │ let v116 : float = v110 + v115 │
00:12:18 #39571 [verbose] > │ let v117 : float = 2.5E-05 * v97 │
00:12:18 #39572 [verbose] > │ let v118 : float = 2.5E-05 * v98 │
00:12:18 #39573 [verbose] > │ let v119 : float = 2.5E-05 * v99 │
00:12:18 #39574 [verbose] > │ let v120 : float = v107 + v117 │
00:12:18 #39575 [verbose] > │ let v121 : float = v108 + v118 │
00:12:18 #39576 [verbose] > │ let v122 : float = v109 + v119 │
00:12:18 #39577 [verbose] > │ let v123 : float = 2.5E-05 * v101 │
00:12:18 #39578 [verbose] > │ let v124 : float = 2.5E-05 * v102 │
00:12:18 #39579 [verbose] > │ let v125 : float = 2.5E-05 * v103 │
00:12:18 #39580 [verbose] > │ let v126 : float = v111 + v123 │
00:12:18 #39581 [verbose] > │ let v127 : float = v112 + v124 │
00:12:18 #39582 [verbose] > │ let v128 : float = v113 + v125 │
00:12:18 #39583 [verbose] > │ let v129 : (unit -> UH1) = closure135(v114, v104) │
00:12:18 #39584 [verbose] > │ UH1_0(v105, v106, v120, v121, v122, v116, v126, v127, v128, │
00:12:18 #39585 [verbose] > │ v129) │
00:12:18 #39586 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:18 #39587 [verbose] > │ UH1_1 │
00:12:18 #39588 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39589 [verbose] > │ UH1_1 │
00:12:18 #39590 [verbose] > │ let v137 : (unit -> UH1) = closure133(v136) │
00:12:18 #39591 [verbose] > │ let v138 : (unit -> UH1) = method3(v136, v137) │
00:12:18 #39592 [verbose] > │ let v139 : UH1 = v138 () │
00:12:18 #39593 [verbose] > │ let v140 : UH3 = v0 v139 │
00:12:18 #39594 [verbose] > │ let v177 : UH3 = │
00:12:18 #39595 [verbose] > │ match v2 with │
00:12:18 #39596 [verbose] > │ | UH3_0(v141, v142, v143, v144, v145, v146, v147, v148, v149, v150) │
00:12:18 #39597 [verbose] > │ -> (* StreamCons *) │
00:12:18 #39598 [verbose] > │ match v48 with │
00:12:18 #39599 [verbose] > │ | UH3_0(v151, v152, v153, v154, v155, v156, v157, v158, v159, │
00:12:18 #39600 [verbose] > │ v160) -> (* StreamCons *) │
00:12:18 #39601 [verbose] > │ let v161 : float = v141 + v151 │
00:12:18 #39602 [verbose] > │ let v162 : float = v142 + v152 │
00:12:18 #39603 [verbose] > │ let v163 : float = v146 + v156 │
00:12:18 #39604 [verbose] > │ let v164 : float = v143 + v153 │
00:12:18 #39605 [verbose] > │ let v165 : float = v144 + v154 │
00:12:18 #39606 [verbose] > │ let v166 : float = v145 + v155 │
00:12:18 #39607 [verbose] > │ let v167 : float = v147 + v157 │
00:12:18 #39608 [verbose] > │ let v168 : float = v148 + v158 │
00:12:18 #39609 [verbose] > │ let v169 : float = v149 + v159 │
00:12:18 #39610 [verbose] > │ let v170 : (unit -> UH3) = closure136(v160, v150) │
00:12:18 #39611 [verbose] > │ UH3_0(v161, v162, v164, v165, v166, v163, v167, v168, v169, │
00:12:18 #39612 [verbose] > │ v170) │
00:12:18 #39613 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39614 [verbose] > │ UH3_1 │
00:12:18 #39615 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39616 [verbose] > │ UH3_1 │
00:12:18 #39617 [verbose] > │ let v214 : UH3 = │
00:12:18 #39618 [verbose] > │ match v177 with │
00:12:18 #39619 [verbose] > │ | UH3_0(v178, v179, v180, v181, v182, v183, v184, v185, v186, v187) │
00:12:18 #39620 [verbose] > │ -> (* StreamCons *) │
00:12:18 #39621 [verbose] > │ match v48 with │
00:12:18 #39622 [verbose] > │ | UH3_0(v188, v189, v190, v191, v192, v193, v194, v195, v196, │
00:12:18 #39623 [verbose] > │ v197) -> (* StreamCons *) │
00:12:18 #39624 [verbose] > │ let v198 : float = v178 + v188 │
00:12:18 #39625 [verbose] > │ let v199 : float = v179 + v189 │
00:12:18 #39626 [verbose] > │ let v200 : float = v183 + v193 │
00:12:18 #39627 [verbose] > │ let v201 : float = v180 + v190 │
00:12:18 #39628 [verbose] > │ let v202 : float = v181 + v191 │
00:12:18 #39629 [verbose] > │ let v203 : float = v182 + v192 │
00:12:18 #39630 [verbose] > │ let v204 : float = v184 + v194 │
00:12:18 #39631 [verbose] > │ let v205 : float = v185 + v195 │
00:12:18 #39632 [verbose] > │ let v206 : float = v186 + v196 │
00:12:18 #39633 [verbose] > │ let v207 : (unit -> UH3) = closure136(v197, v187) │
00:12:18 #39634 [verbose] > │ UH3_0(v198, v199, v201, v202, v203, v200, v204, v205, v206, │
00:12:18 #39635 [verbose] > │ v207) │
00:12:18 #39636 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39637 [verbose] > │ UH3_1 │
00:12:18 #39638 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39639 [verbose] > │ UH3_1 │
00:12:18 #39640 [verbose] > │ let v251 : UH3 = │
00:12:18 #39641 [verbose] > │ match v214 with │
00:12:18 #39642 [verbose] > │ | UH3_0(v215, v216, v217, v218, v219, v220, v221, v222, v223, v224) │
00:12:18 #39643 [verbose] > │ -> (* StreamCons *) │
00:12:18 #39644 [verbose] > │ match v94 with │
00:12:18 #39645 [verbose] > │ | UH3_0(v225, v226, v227, v228, v229, v230, v231, v232, v233, │
00:12:18 #39646 [verbose] > │ v234) -> (* StreamCons *) │
00:12:18 #39647 [verbose] > │ let v235 : float = v215 + v225 │
00:12:18 #39648 [verbose] > │ let v236 : float = v216 + v226 │
00:12:18 #39649 [verbose] > │ let v237 : float = v220 + v230 │
00:12:18 #39650 [verbose] > │ let v238 : float = v217 + v227 │
00:12:18 #39651 [verbose] > │ let v239 : float = v218 + v228 │
00:12:18 #39652 [verbose] > │ let v240 : float = v219 + v229 │
00:12:18 #39653 [verbose] > │ let v241 : float = v221 + v231 │
00:12:18 #39654 [verbose] > │ let v242 : float = v222 + v232 │
00:12:18 #39655 [verbose] > │ let v243 : float = v223 + v233 │
00:12:18 #39656 [verbose] > │ let v244 : (unit -> UH3) = closure136(v234, v224) │
00:12:18 #39657 [verbose] > │ UH3_0(v235, v236, v238, v239, v240, v237, v241, v242, v243, │
00:12:18 #39658 [verbose] > │ v244) │
00:12:18 #39659 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39660 [verbose] > │ UH3_1 │
00:12:18 #39661 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39662 [verbose] > │ UH3_1 │
00:12:18 #39663 [verbose] > │ let v288 : UH3 = │
00:12:18 #39664 [verbose] > │ match v251 with │
00:12:18 #39665 [verbose] > │ | UH3_0(v252, v253, v254, v255, v256, v257, v258, v259, v260, v261) │
00:12:18 #39666 [verbose] > │ -> (* StreamCons *) │
00:12:18 #39667 [verbose] > │ match v94 with │
00:12:18 #39668 [verbose] > │ | UH3_0(v262, v263, v264, v265, v266, v267, v268, v269, v270, │
00:12:18 #39669 [verbose] > │ v271) -> (* StreamCons *) │
00:12:18 #39670 [verbose] > │ let v272 : float = v252 + v262 │
00:12:18 #39671 [verbose] > │ let v273 : float = v253 + v263 │
00:12:18 #39672 [verbose] > │ let v274 : float = v257 + v267 │
00:12:18 #39673 [verbose] > │ let v275 : float = v254 + v264 │
00:12:18 #39674 [verbose] > │ let v276 : float = v255 + v265 │
00:12:18 #39675 [verbose] > │ let v277 : float = v256 + v266 │
00:12:18 #39676 [verbose] > │ let v278 : float = v258 + v268 │
00:12:18 #39677 [verbose] > │ let v279 : float = v259 + v269 │
00:12:18 #39678 [verbose] > │ let v280 : float = v260 + v270 │
00:12:18 #39679 [verbose] > │ let v281 : (unit -> UH3) = closure136(v271, v261) │
00:12:18 #39680 [verbose] > │ UH3_0(v272, v273, v275, v276, v277, v274, v278, v279, v280, │
00:12:18 #39681 [verbose] > │ v281) │
00:12:18 #39682 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39683 [verbose] > │ UH3_1 │
00:12:18 #39684 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39685 [verbose] > │ UH3_1 │
00:12:18 #39686 [verbose] > │ let v325 : UH3 = │
00:12:18 #39687 [verbose] > │ match v288 with │
00:12:18 #39688 [verbose] > │ | UH3_0(v289, v290, v291, v292, v293, v294, v295, v296, v297, v298) │
00:12:18 #39689 [verbose] > │ -> (* StreamCons *) │
00:12:18 #39690 [verbose] > │ match v140 with │
00:12:18 #39691 [verbose] > │ | UH3_0(v299, v300, v301, v302, v303, v304, v305, v306, v307, │
00:12:18 #39692 [verbose] > │ v308) -> (* StreamCons *) │
00:12:18 #39693 [verbose] > │ let v309 : float = v289 + v299 │
00:12:18 #39694 [verbose] > │ let v310 : float = v290 + v300 │
00:12:18 #39695 [verbose] > │ let v311 : float = v294 + v304 │
00:12:18 #39696 [verbose] > │ let v312 : float = v291 + v301 │
00:12:18 #39697 [verbose] > │ let v313 : float = v292 + v302 │
00:12:18 #39698 [verbose] > │ let v314 : float = v293 + v303 │
00:12:18 #39699 [verbose] > │ let v315 : float = v295 + v305 │
00:12:18 #39700 [verbose] > │ let v316 : float = v296 + v306 │
00:12:18 #39701 [verbose] > │ let v317 : float = v297 + v307 │
00:12:18 #39702 [verbose] > │ let v318 : (unit -> UH3) = closure136(v308, v298) │
00:12:18 #39703 [verbose] > │ UH3_0(v309, v310, v312, v313, v314, v311, v315, v316, v317, │
00:12:18 #39704 [verbose] > │ v318) │
00:12:18 #39705 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39706 [verbose] > │ UH3_1 │
00:12:18 #39707 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39708 [verbose] > │ UH3_1 │
00:12:18 #39709 [verbose] > │ let v367 : UH1 = │
00:12:18 #39710 [verbose] > │ match v325 with │
00:12:18 #39711 [verbose] > │ | UH3_0(v326, v327, v328, v329, v330, v331, v332, v333, v334, v335) │
00:12:18 #39712 [verbose] > │ -> (* StreamCons *) │
00:12:18 #39713 [verbose] > │ match v1 with │
00:12:18 #39714 [verbose] > │ | UH1_0(v336, v337, v338, v339, v340, v341, v342, v343, v344, │
00:12:18 #39715 [verbose] > │ v345) -> (* StreamCons *) │
00:12:18 #39716 [verbose] > │ let v346 : float = v331 * 4.166666666666667E-06 │
00:12:18 #39717 [verbose] > │ let v347 : float = v341 + v346 │
00:12:18 #39718 [verbose] > │ let v348 : float = 4.166666666666667E-06 * v328 │
00:12:18 #39719 [verbose] > │ let v349 : float = 4.166666666666667E-06 * v329 │
00:12:18 #39720 [verbose] > │ let v350 : float = 4.166666666666667E-06 * v330 │
00:12:18 #39721 [verbose] > │ let v351 : float = v338 + v348 │
00:12:18 #39722 [verbose] > │ let v352 : float = v339 + v349 │
00:12:18 #39723 [verbose] > │ let v353 : float = v340 + v350 │
00:12:18 #39724 [verbose] > │ let v354 : float = 4.166666666666667E-06 * v332 │
00:12:18 #39725 [verbose] > │ let v355 : float = 4.166666666666667E-06 * v333 │
00:12:18 #39726 [verbose] > │ let v356 : float = 4.166666666666667E-06 * v334 │
00:12:18 #39727 [verbose] > │ let v357 : float = v342 + v354 │
00:12:18 #39728 [verbose] > │ let v358 : float = v343 + v355 │
00:12:18 #39729 [verbose] > │ let v359 : float = v344 + v356 │
00:12:18 #39730 [verbose] > │ let v360 : (unit -> UH1) = closure137(v345, v335) │
00:12:18 #39731 [verbose] > │ UH1_0(v336, v337, v351, v352, v353, v347, v357, v358, v359, │
00:12:18 #39732 [verbose] > │ v360) │
00:12:18 #39733 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:18 #39734 [verbose] > │ UH1_1 │
00:12:18 #39735 [verbose] > │ | UH3_1 -> (* StreamNil *) │
00:12:18 #39736 [verbose] > │ UH1_1 │
00:12:18 #39737 [verbose] > │ let v368 : (unit -> UH1) = closure133(v367) │
00:12:18 #39738 [verbose] > │ let v369 : (unit -> UH1) = method3(v367, v368) │
00:12:18 #39739 [verbose] > │ let v370 : UH1 = v369 () │
00:12:18 #39740 [verbose] > │ v370 │
00:12:18 #39741 [verbose] > │ and closure130 () (v0 : (UH1 -> UH3)) : (UH1 -> UH1) = │
00:12:18 #39742 [verbose] > │ closure131(v0) │
00:12:18 #39743 [verbose] > │ and method2 () : ((UH1 -> UH3) -> (UH1 -> UH1)) = │
00:12:18 #39744 [verbose] > │ closure130() │
00:12:18 #39745 [verbose] > │ and closure138 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 │
00:12:18 #39746 [verbose] > │ : float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float * │
00:12:18 #39747 [verbose] > │ float * float) = │
00:12:18 #39748 [verbose] > │ let v9 : float = v2 * v2 │
00:12:18 #39749 [verbose] > │ let v10 : float = v3 * v3 │
00:12:18 #39750 [verbose] > │ let v11 : float = v9 + v10 │
00:12:18 #39751 [verbose] > │ let v12 : float = v4 * v4 │
00:12:18 #39752 [verbose] > │ let v13 : float = v11 + v12 │
00:12:18 #39753 [verbose] > │ let v14 : float = sqrt v13 │
00:12:18 #39754 [verbose] > │ let v15 : float = -5384.0 * v14 │
00:12:18 #39755 [verbose] > │ let v16 : float = v15 * v2 │
00:12:18 #39756 [verbose] > │ let v17 : float = v15 * v3 │
00:12:18 #39757 [verbose] > │ let v18 : float = v15 * v4 │
00:12:18 #39758 [verbose] > │ let v19 : float = v16 / v14 │
00:12:18 #39759 [verbose] > │ let v20 : float = v17 / v14 │
00:12:18 #39760 [verbose] > │ let v21 : float = v18 / v14 │
00:12:18 #39761 [verbose] > │ struct (v19, v20, v21) │
00:12:18 #39762 [verbose] > │ and closure139 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 │
00:12:18 #39763 [verbose] > │ : float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float * │
00:12:18 #39764 [verbose] > │ float * float) = │
00:12:18 #39765 [verbose] > │ let v9 : float = v2 + -0.65 │
00:12:18 #39766 [verbose] > │ let v10 : float = v9 * v9 │
00:12:18 #39767 [verbose] > │ let v11 : float = v3 * v3 │
00:12:18 #39768 [verbose] > │ let v12 : float = v10 + v11 │
00:12:18 #39769 [verbose] > │ let v13 : float = v4 * v4 │
00:12:18 #39770 [verbose] > │ let v14 : float = v12 + v13 │
00:12:18 #39771 [verbose] > │ let v15 : float = sqrt v14 │
00:12:18 #39772 [verbose] > │ let v16 : float = -5384.0 * v15 │
00:12:18 #39773 [verbose] > │ let v17 : float = v16 * v9 │
00:12:18 #39774 [verbose] > │ let v18 : float = v16 * v3 │
00:12:18 #39775 [verbose] > │ let v19 : float = v16 * v4 │
00:12:18 #39776 [verbose] > │ let v20 : float = v17 / v15 │
00:12:18 #39777 [verbose] > │ let v21 : float = v18 / v15 │
00:12:18 #39778 [verbose] > │ let v22 : float = v19 / v15 │
00:12:18 #39779 [verbose] > │ struct (v20, v21, v22) │
00:12:18 #39780 [verbose] > │ and closure141 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, │
00:12:18 #39781 [verbose] > │ v5 : float, v6 : float, v7 : float, v8 : float) struct (v9 : float, v10 : │
00:12:18 #39782 [verbose] > │ float, v11 : float, v12 : float, v13 : float, v14 : float, v15 : float, v16 │
00:12:18 #39783 [verbose] > │ : float, v17 : float) : struct (float * float * float) = │
00:12:18 #39784 [verbose] > │ let v18 : float = -1.0 * v2 │
00:12:18 #39785 [verbose] > │ let v19 : float = -1.0 * v3 │
00:12:18 #39786 [verbose] > │ let v20 : float = -1.0 * v4 │
00:12:18 #39787 [verbose] > │ let v21 : float = v11 + v18 │
00:12:18 #39788 [verbose] > │ let v22 : float = v12 + v19 │
00:12:18 #39789 [verbose] > │ let v23 : float = v13 + v20 │
00:12:18 #39790 [verbose] > │ let v24 : float = v21 * v21 │
00:12:18 #39791 [verbose] > │ let v25 : float = v22 * v22 │
00:12:18 #39792 [verbose] > │ let v26 : float = v24 + v25 │
00:12:18 #39793 [verbose] > │ let v27 : float = v23 * v23 │
00:12:18 #39794 [verbose] > │ let v28 : float = v26 + v27 │
00:12:18 #39795 [verbose] > │ let v29 : float = sqrt v28 │
00:12:18 #39796 [verbose] > │ let v30 : float = -5384.0 * v29 │
00:12:18 #39797 [verbose] > │ let v31 : float = v30 * v21 │
00:12:18 #39798 [verbose] > │ let v32 : float = v30 * v22 │
00:12:18 #39799 [verbose] > │ let v33 : float = v30 * v23 │
00:12:18 #39800 [verbose] > │ let v34 : float = v31 / v29 │
00:12:18 #39801 [verbose] > │ let v35 : float = v32 / v29 │
00:12:18 #39802 [verbose] > │ let v36 : float = v33 / v29 │
00:12:18 #39803 [verbose] > │ struct (v34, v35, v36) │
00:12:18 #39804 [verbose] > │ and closure140 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 │
00:12:18 #39805 [verbose] > │ : float, v5 : float, v6 : float, v7 : float, v8 : float) : (struct (float * │
00:12:18 #39806 [verbose] > │ float * float * float * float * float * float * float * float) -> struct │
00:12:18 #39807 [verbose] > │ (float * float * float)) = │
00:12:18 #39808 [verbose] > │ closure141(v0, v1, v2, v3, v4, v5, v6, v7, v8) │
00:12:18 #39809 [verbose] > │ and method4 () : UH4 = │
00:12:18 #39810 [verbose] > │ let v0 : (struct (float * float * float * float * float * float * float │
00:12:18 #39811 [verbose] > │ * float * float) -> struct (float * float * float)) = closure138() │
00:12:18 #39812 [verbose] > │ let v1 : US1 = US1_0(0, v0) │
00:12:18 #39813 [verbose] > │ let v2 : (struct (float * float * float * float * float * float * float │
00:12:18 #39814 [verbose] > │ * float * float) -> struct (float * float * float)) = closure139() │
00:12:18 #39815 [verbose] > │ let v3 : US1 = US1_0(63, v2) │
00:12:18 #39816 [verbose] > │ let v4 : (struct (float * float * float * float * float * float * float │
00:12:18 #39817 [verbose] > │ * float * float) -> (struct (float * float * float * float * float * float * │
00:12:18 #39818 [verbose] > │ float * float * float) -> struct (float * float * float))) = closure140() │
00:12:18 #39819 [verbose] > │ let v5 : US1 = US1_1(0, 1, v4) │
00:12:18 #39820 [verbose] > │ let v6 : US1 = US1_1(1, 2, v4) │
00:12:18 #39821 [verbose] > │ let v7 : US1 = US1_1(2, 3, v4) │
00:12:18 #39822 [verbose] > │ let v8 : US1 = US1_1(3, 4, v4) │
00:12:18 #39823 [verbose] > │ let v9 : US1 = US1_1(4, 5, v4) │
00:12:18 #39824 [verbose] > │ let v10 : US1 = US1_1(5, 6, v4) │
00:12:18 #39825 [verbose] > │ let v11 : US1 = US1_1(6, 7, v4) │
00:12:18 #39826 [verbose] > │ let v12 : US1 = US1_1(7, 8, v4) │
00:12:18 #39827 [verbose] > │ let v13 : US1 = US1_1(8, 9, v4) │
00:12:18 #39828 [verbose] > │ let v14 : US1 = US1_1(9, 10, v4) │
00:12:18 #39829 [verbose] > │ let v15 : US1 = US1_1(10, 11, v4) │
00:12:18 #39830 [verbose] > │ let v16 : US1 = US1_1(11, 12, v4) │
00:12:18 #39831 [verbose] > │ let v17 : US1 = US1_1(12, 13, v4) │
00:12:18 #39832 [verbose] > │ let v18 : US1 = US1_1(13, 14, v4) │
00:12:18 #39833 [verbose] > │ let v19 : US1 = US1_1(14, 15, v4) │
00:12:18 #39834 [verbose] > │ let v20 : US1 = US1_1(15, 16, v4) │
00:12:18 #39835 [verbose] > │ let v21 : US1 = US1_1(16, 17, v4) │
00:12:18 #39836 [verbose] > │ let v22 : US1 = US1_1(17, 18, v4) │
00:12:18 #39837 [verbose] > │ let v23 : US1 = US1_1(18, 19, v4) │
00:12:18 #39838 [verbose] > │ let v24 : US1 = US1_1(19, 20, v4) │
00:12:18 #39839 [verbose] > │ let v25 : US1 = US1_1(20, 21, v4) │
00:12:18 #39840 [verbose] > │ let v26 : US1 = US1_1(21, 22, v4) │
00:12:18 #39841 [verbose] > │ let v27 : US1 = US1_1(22, 23, v4) │
00:12:18 #39842 [verbose] > │ let v28 : US1 = US1_1(23, 24, v4) │
00:12:18 #39843 [verbose] > │ let v29 : US1 = US1_1(24, 25, v4) │
00:12:18 #39844 [verbose] > │ let v30 : US1 = US1_1(25, 26, v4) │
00:12:18 #39845 [verbose] > │ let v31 : US1 = US1_1(26, 27, v4) │
00:12:18 #39846 [verbose] > │ let v32 : US1 = US1_1(27, 28, v4) │
00:12:18 #39847 [verbose] > │ let v33 : US1 = US1_1(28, 29, v4) │
00:12:18 #39848 [verbose] > │ let v34 : US1 = US1_1(29, 30, v4) │
00:12:18 #39849 [verbose] > │ let v35 : US1 = US1_1(30, 31, v4) │
00:12:18 #39850 [verbose] > │ let v36 : US1 = US1_1(31, 32, v4) │
00:12:18 #39851 [verbose] > │ let v37 : US1 = US1_1(32, 33, v4) │
00:12:18 #39852 [verbose] > │ let v38 : US1 = US1_1(33, 34, v4) │
00:12:18 #39853 [verbose] > │ let v39 : US1 = US1_1(34, 35, v4) │
00:12:18 #39854 [verbose] > │ let v40 : US1 = US1_1(35, 36, v4) │
00:12:18 #39855 [verbose] > │ let v41 : US1 = US1_1(36, 37, v4) │
00:12:18 #39856 [verbose] > │ let v42 : US1 = US1_1(37, 38, v4) │
00:12:18 #39857 [verbose] > │ let v43 : US1 = US1_1(38, 39, v4) │
00:12:18 #39858 [verbose] > │ let v44 : US1 = US1_1(39, 40, v4) │
00:12:18 #39859 [verbose] > │ let v45 : US1 = US1_1(40, 41, v4) │
00:12:18 #39860 [verbose] > │ let v46 : US1 = US1_1(41, 42, v4) │
00:12:18 #39861 [verbose] > │ let v47 : US1 = US1_1(42, 43, v4) │
00:12:18 #39862 [verbose] > │ let v48 : US1 = US1_1(43, 44, v4) │
00:12:18 #39863 [verbose] > │ let v49 : US1 = US1_1(44, 45, v4) │
00:12:18 #39864 [verbose] > │ let v50 : US1 = US1_1(45, 46, v4) │
00:12:18 #39865 [verbose] > │ let v51 : US1 = US1_1(46, 47, v4) │
00:12:18 #39866 [verbose] > │ let v52 : US1 = US1_1(47, 48, v4) │
00:12:18 #39867 [verbose] > │ let v53 : US1 = US1_1(48, 49, v4) │
00:12:18 #39868 [verbose] > │ let v54 : US1 = US1_1(49, 50, v4) │
00:12:18 #39869 [verbose] > │ let v55 : US1 = US1_1(50, 51, v4) │
00:12:18 #39870 [verbose] > │ let v56 : US1 = US1_1(51, 52, v4) │
00:12:18 #39871 [verbose] > │ let v57 : US1 = US1_1(52, 53, v4) │
00:12:18 #39872 [verbose] > │ let v58 : US1 = US1_1(53, 54, v4) │
00:12:18 #39873 [verbose] > │ let v59 : US1 = US1_1(54, 55, v4) │
00:12:18 #39874 [verbose] > │ let v60 : US1 = US1_1(55, 56, v4) │
00:12:18 #39875 [verbose] > │ let v61 : US1 = US1_1(56, 57, v4) │
00:12:18 #39876 [verbose] > │ let v62 : US1 = US1_1(57, 58, v4) │
00:12:18 #39877 [verbose] > │ let v63 : US1 = US1_1(58, 59, v4) │
00:12:18 #39878 [verbose] > │ let v64 : US1 = US1_1(59, 60, v4) │
00:12:18 #39879 [verbose] > │ let v65 : UH4 = UH4_0 │
00:12:18 #39880 [verbose] > │ let v66 : UH4 = UH4_1(v64, v65) │
00:12:18 #39881 [verbose] > │ let v67 : UH4 = UH4_1(v63, v66) │
00:12:18 #39882 [verbose] > │ let v68 : UH4 = UH4_1(v62, v67) │
00:12:18 #39883 [verbose] > │ let v69 : UH4 = UH4_1(v61, v68) │
00:12:18 #39884 [verbose] > │ let v70 : UH4 = UH4_1(v60, v69) │
00:12:18 #39885 [verbose] > │ let v71 : UH4 = UH4_1(v59, v70) │
00:12:18 #39886 [verbose] > │ let v72 : UH4 = UH4_1(v58, v71) │
00:12:18 #39887 [verbose] > │ let v73 : UH4 = UH4_1(v57, v72) │
00:12:18 #39888 [verbose] > │ let v74 : UH4 = UH4_1(v56, v73) │
00:12:18 #39889 [verbose] > │ let v75 : UH4 = UH4_1(v55, v74) │
00:12:18 #39890 [verbose] > │ let v76 : UH4 = UH4_1(v54, v75) │
00:12:18 #39891 [verbose] > │ let v77 : UH4 = UH4_1(v53, v76) │
00:12:18 #39892 [verbose] > │ let v78 : UH4 = UH4_1(v52, v77) │
00:12:18 #39893 [verbose] > │ let v79 : UH4 = UH4_1(v51, v78) │
00:12:18 #39894 [verbose] > │ let v80 : UH4 = UH4_1(v50, v79) │
00:12:18 #39895 [verbose] > │ let v81 : UH4 = UH4_1(v49, v80) │
00:12:18 #39896 [verbose] > │ let v82 : UH4 = UH4_1(v48, v81) │
00:12:18 #39897 [verbose] > │ let v83 : UH4 = UH4_1(v47, v82) │
00:12:18 #39898 [verbose] > │ let v84 : UH4 = UH4_1(v46, v83) │
00:12:18 #39899 [verbose] > │ let v85 : UH4 = UH4_1(v45, v84) │
00:12:18 #39900 [verbose] > │ let v86 : UH4 = UH4_1(v44, v85) │
00:12:18 #39901 [verbose] > │ let v87 : UH4 = UH4_1(v43, v86) │
00:12:18 #39902 [verbose] > │ let v88 : UH4 = UH4_1(v42, v87) │
00:12:18 #39903 [verbose] > │ let v89 : UH4 = UH4_1(v41, v88) │
00:12:18 #39904 [verbose] > │ let v90 : UH4 = UH4_1(v40, v89) │
00:12:18 #39905 [verbose] > │ let v91 : UH4 = UH4_1(v39, v90) │
00:12:18 #39906 [verbose] > │ let v92 : UH4 = UH4_1(v38, v91) │
00:12:18 #39907 [verbose] > │ let v93 : UH4 = UH4_1(v37, v92) │
00:12:18 #39908 [verbose] > │ let v94 : UH4 = UH4_1(v36, v93) │
00:12:18 #39909 [verbose] > │ let v95 : UH4 = UH4_1(v35, v94) │
00:12:18 #39910 [verbose] > │ let v96 : UH4 = UH4_1(v34, v95) │
00:12:18 #39911 [verbose] > │ let v97 : UH4 = UH4_1(v33, v96) │
00:12:18 #39912 [verbose] > │ let v98 : UH4 = UH4_1(v32, v97) │
00:12:18 #39913 [verbose] > │ let v99 : UH4 = UH4_1(v31, v98) │
00:12:18 #39914 [verbose] > │ let v100 : UH4 = UH4_1(v30, v99) │
00:12:18 #39915 [verbose] > │ let v101 : UH4 = UH4_1(v29, v100) │
00:12:18 #39916 [verbose] > │ let v102 : UH4 = UH4_1(v28, v101) │
00:12:18 #39917 [verbose] > │ let v103 : UH4 = UH4_1(v27, v102) │
00:12:18 #39918 [verbose] > │ let v104 : UH4 = UH4_1(v26, v103) │
00:12:18 #39919 [verbose] > │ let v105 : UH4 = UH4_1(v25, v104) │
00:12:18 #39920 [verbose] > │ let v106 : UH4 = UH4_1(v24, v105) │
00:12:18 #39921 [verbose] > │ let v107 : UH4 = UH4_1(v23, v106) │
00:12:18 #39922 [verbose] > │ let v108 : UH4 = UH4_1(v22, v107) │
00:12:18 #39923 [verbose] > │ let v109 : UH4 = UH4_1(v21, v108) │
00:12:18 #39924 [verbose] > │ let v110 : UH4 = UH4_1(v20, v109) │
00:12:18 #39925 [verbose] > │ let v111 : UH4 = UH4_1(v19, v110) │
00:12:18 #39926 [verbose] > │ let v112 : UH4 = UH4_1(v18, v111) │
00:12:18 #39927 [verbose] > │ let v113 : UH4 = UH4_1(v17, v112) │
00:12:18 #39928 [verbose] > │ let v114 : UH4 = UH4_1(v16, v113) │
00:12:18 #39929 [verbose] > │ let v115 : UH4 = UH4_1(v15, v114) │
00:12:18 #39930 [verbose] > │ let v116 : UH4 = UH4_1(v14, v115) │
00:12:18 #39931 [verbose] > │ let v117 : UH4 = UH4_1(v13, v116) │
00:12:18 #39932 [verbose] > │ let v118 : UH4 = UH4_1(v12, v117) │
00:12:18 #39933 [verbose] > │ let v119 : UH4 = UH4_1(v11, v118) │
00:12:18 #39934 [verbose] > │ let v120 : UH4 = UH4_1(v10, v119) │
00:12:18 #39935 [verbose] > │ let v121 : UH4 = UH4_1(v9, v120) │
00:12:18 #39936 [verbose] > │ let v122 : UH4 = UH4_1(v8, v121) │
00:12:18 #39937 [verbose] > │ let v123 : UH4 = UH4_1(v7, v122) │
00:12:18 #39938 [verbose] > │ let v124 : UH4 = UH4_1(v6, v123) │
00:12:18 #39939 [verbose] > │ let v125 : UH4 = UH4_1(v5, v124) │
00:12:18 #39940 [verbose] > │ let v126 : UH4 = UH4_1(v3, v125) │
00:12:18 #39941 [verbose] > │ UH4_1(v1, v126) │
00:12:18 #39942 [verbose] > │ and closure143 (v0 : UH5) () : UH5 = │
00:12:18 #39943 [verbose] > │ v0 │
00:12:18 #39944 [verbose] > │ and method5 (v0 : UH1, v1 : UH5, v2 : int32) : struct (UH5 * int32) = │
00:12:18 #39945 [verbose] > │ match v0 with │
00:12:18 #39946 [verbose] > │ | UH1_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* StreamCons *) │
00:12:18 #39947 [verbose] > │ let v13 : int32 = v2 + 1 │
00:12:18 #39948 [verbose] > │ let v14 : UH1 = v12 () │
00:12:18 #39949 [verbose] > │ let v15 : (unit -> UH5) = closure143(v1) │
00:12:18 #39950 [verbose] > │ let v16 : UH5 = UH5_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v15) │
00:12:18 #39951 [verbose] > │ method5(v14, v16, v13) │
00:12:18 #39952 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:18 #39953 [verbose] > │ struct (v1, v2) │
00:12:18 #39954 [verbose] > │ and closure144 (v0 : UH5) () : UH5 = │
00:12:18 #39955 [verbose] > │ v0 │
00:12:18 #39956 [verbose] > │ and method6 (v0 : UH5, v1 : UH5) : UH5 = │
00:12:18 #39957 [verbose] > │ match v0 with │
00:12:18 #39958 [verbose] > │ | UH5_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* StreamCons │
00:12:18 #39959 [verbose] > │ *) │
00:12:18 #39960 [verbose] > │ let v13 : UH5 = v12 () │
00:12:18 #39961 [verbose] > │ let v14 : (unit -> UH5) = closure144(v1) │
00:12:18 #39962 [verbose] > │ let v15 : UH5 = UH5_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v14) │
00:12:18 #39963 [verbose] > │ method6(v13, v15) │
00:12:18 #39964 [verbose] > │ | UH5_1 -> (* StreamNil *) │
00:12:18 #39965 [verbose] > │ v1 │
00:12:18 #39966 [verbose] > │ and closure145 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 │
00:12:18 #39967 [verbose] > │ : float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float * │
00:12:18 #39968 [verbose] > │ float * float) = │
00:12:18 #39969 [verbose] > │ struct (0.0, 0.0, 0.0) │
00:12:18 #39970 [verbose] > │ and method9 (v0 : int32, v1 : UH1) : US3 = │
00:12:18 #39971 [verbose] > │ match v1 with │
00:12:18 #39972 [verbose] > │ | UH1_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* StreamCons *) │
00:12:18 #39973 [verbose] > │ let v12 : bool = v0 <= 0 │
00:12:18 #39974 [verbose] > │ if v12 then │
00:12:18 #39975 [verbose] > │ US3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10) │
00:12:18 #39976 [verbose] > │ else │
00:12:18 #39977 [verbose] > │ let v14 : int32 = v0 - 1 │
00:12:18 #39978 [verbose] > │ let v15 : UH1 = v11 () │
00:12:18 #39979 [verbose] > │ method9(v14, v15) │
00:12:18 #39980 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:18 #39981 [verbose] > │ US3_1 │
00:12:18 #39982 [verbose] > │ and closure146 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 │
00:12:18 #39983 [verbose] > │ : float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float * │
00:12:18 #39984 [verbose] > │ float * float) = │
00:12:18 #39985 [verbose] > │ struct (0.0, 0.0, 0.0) │
00:12:18 #39986 [verbose] > │ and method8 (v0 : int32, v1 : UH1, v2 : UH4, v3 : UH6) : UH6 = │
00:12:18 #39987 [verbose] > │ match v2 with │
00:12:18 #39988 [verbose] > │ | UH4_1(v4, v5) -> (* Cons *) │
00:12:18 #39989 [verbose] > │ let v6 : UH6 = method8(v0, v1, v5, v3) │
00:12:18 #39990 [verbose] > │ let v55 : (struct (float * float * float * float * float * float * │
00:12:18 #39991 [verbose] > │ float * float * float) -> struct (float * float * float)) = │
00:12:18 #39992 [verbose] > │ match v4 with │
00:12:18 #39993 [verbose] > │ | US1_0(v7, v8) -> (* ExternalForce *) │
00:12:18 #39994 [verbose] > │ let v9 : bool = v0 = v7 │
00:12:18 #39995 [verbose] > │ if v9 then │
00:12:18 #39996 [verbose] > │ v8 │
00:12:18 #39997 [verbose] > │ else │
00:12:18 #39998 [verbose] > │ closure145() │
00:12:18 #39999 [verbose] > │ | US1_1(v12, v13, v14) -> (* InternalForce *) │
00:12:18 #40000 [verbose] > │ let v15 : bool = v0 = v12 │
00:12:18 #40001 [verbose] > │ let v49 : US2 = │
00:12:18 #40002 [verbose] > │ if v15 then │
00:12:18 #40003 [verbose] > │ let v16 : US3 = method9(v13, v1) │
00:12:18 #40004 [verbose] > │ match v16 with │
00:12:18 #40005 [verbose] > │ | US3_1 -> (* None *) │
00:12:18 #40006 [verbose] > │ US2_1 │
00:12:18 #40007 [verbose] > │ | US3_0(v17, v18, v19, v20, v21, v22, v23, v24, v25) │
00:12:18 #40008 [verbose] > │ -> (* Some *) │
00:12:18 #40009 [verbose] > │ let v26 : (struct (float * float * float * float │
00:12:18 #40010 [verbose] > │ * float * float * float * float * float) -> struct (float * float * float)) │
00:12:18 #40011 [verbose] > │ = v14 struct (v17, v18, v19, v20, v21, v22, v23, v24, v25) │
00:12:18 #40012 [verbose] > │ US2_0(v26) │
00:12:18 #40013 [verbose] > │ else │
00:12:18 #40014 [verbose] > │ let v31 : bool = v0 = v13 │
00:12:18 #40015 [verbose] > │ if v31 then │
00:12:18 #40016 [verbose] > │ let v32 : US3 = method9(v12, v1) │
00:12:18 #40017 [verbose] > │ match v32 with │
00:12:18 #40018 [verbose] > │ | US3_1 -> (* None *) │
00:12:18 #40019 [verbose] > │ US2_1 │
00:12:18 #40020 [verbose] > │ | US3_0(v33, v34, v35, v36, v37, v38, v39, v40, │
00:12:18 #40021 [verbose] > │ v41) -> (* Some *) │
00:12:18 #40022 [verbose] > │ let v42 : (struct (float * float * float * │
00:12:18 #40023 [verbose] > │ float * float * float * float * float * float) -> struct (float * float * │
00:12:18 #40024 [verbose] > │ float)) = v14 struct (v33, v34, v35, v36, v37, v38, v39, v40, v41) │
00:12:18 #40025 [verbose] > │ US2_0(v42) │
00:12:18 #40026 [verbose] > │ else │
00:12:18 #40027 [verbose] > │ US2_1 │
00:12:18 #40028 [verbose] > │ match v49 with │
00:12:18 #40029 [verbose] > │ | US2_1 -> (* None *) │
00:12:18 #40030 [verbose] > │ closure146() │
00:12:18 #40031 [verbose] > │ | US2_0(v50) -> (* Some *) │
00:12:18 #40032 [verbose] > │ v50 │
00:12:18 #40033 [verbose] > │ UH6_1(v55, v6) │
00:12:18 #40034 [verbose] > │ | UH4_0 -> (* Nil *) │
00:12:18 #40035 [verbose] > │ v3 │
00:12:18 #40036 [verbose] > │ and method10 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, v5 │
00:12:18 #40037 [verbose] > │ : float, v6 : float, v7 : float, v8 : float, v9 : UH6, v10 : UH7) : UH7 = │
00:12:18 #40038 [verbose] > │ match v9 with │
00:12:18 #40039 [verbose] > │ | UH6_1(v11, v12) -> (* Cons *) │
00:12:18 #40040 [verbose] > │ let v13 : UH7 = method10(v0, v1, v2, v3, v4, v5, v6, v7, v8, v12, │
00:12:18 #40041 [verbose] > │ v10) │
00:12:18 #40042 [verbose] > │ let struct (v14 : float, v15 : float, v16 : float) = v11 struct (v0, │
00:12:18 #40043 [verbose] > │ v1, v2, v3, v4, v5, v6, v7, v8) │
00:12:18 #40044 [verbose] > │ UH7_1(v14, v15, v16, v13) │
00:12:18 #40045 [verbose] > │ | UH6_0 -> (* Nil *) │
00:12:18 #40046 [verbose] > │ v10 │
00:12:18 #40047 [verbose] > │ and method11 (v0 : UH7, v1 : float, v2 : float, v3 : float) : struct (float │
00:12:18 #40048 [verbose] > │ * float * float) = │
00:12:18 #40049 [verbose] > │ match v0 with │
00:12:18 #40050 [verbose] > │ | UH7_1(v4, v5, v6, v7) -> (* Cons *) │
00:12:18 #40051 [verbose] > │ let v8 : float = v1 + v4 │
00:12:18 #40052 [verbose] > │ let v9 : float = v2 + v5 │
00:12:18 #40053 [verbose] > │ let v10 : float = v3 + v6 │
00:12:18 #40054 [verbose] > │ method11(v7, v8, v9, v10) │
00:12:18 #40055 [verbose] > │ | UH7_0 -> (* Nil *) │
00:12:18 #40056 [verbose] > │ struct (v1, v2, v3) │
00:12:18 #40057 [verbose] > │ and closure147 (v0 : UH3) () : UH3 = │
00:12:18 #40058 [verbose] > │ v0 │
00:12:18 #40059 [verbose] > │ and method7 (v0 : UH4, v1 : UH1, v2 : UH5, v3 : UH3) : UH3 = │
00:12:18 #40060 [verbose] > │ match v2 with │
00:12:18 #40061 [verbose] > │ | UH5_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (* │
00:12:18 #40062 [verbose] > │ StreamCons *) │
00:12:18 #40063 [verbose] > │ let v15 : UH5 = v14 () │
00:12:18 #40064 [verbose] > │ let v16 : UH3 = method7(v0, v1, v15, v3) │
00:12:18 #40065 [verbose] > │ let v17 : UH6 = UH6_0 │
00:12:18 #40066 [verbose] > │ let v18 : UH6 = method8(v4, v1, v0, v17) │
00:12:18 #40067 [verbose] > │ let v19 : UH7 = UH7_0 │
00:12:18 #40068 [verbose] > │ let v20 : UH7 = method10(v5, v6, v7, v8, v9, v10, v11, v12, v13, │
00:12:18 #40069 [verbose] > │ v18, v19) │
00:12:18 #40070 [verbose] > │ let v21 : float = 0.0 │
00:12:18 #40071 [verbose] > │ let v22 : float = 0.0 │
00:12:18 #40072 [verbose] > │ let v23 : float = 0.0 │
00:12:18 #40073 [verbose] > │ let struct (v24 : float, v25 : float, v26 : float) = method11(v20, │
00:12:18 #40074 [verbose] > │ v21, v22, v23) │
00:12:18 #40075 [verbose] > │ let v27 : float = v24 / v6 │
00:12:18 #40076 [verbose] > │ let v28 : float = v25 / v6 │
00:12:18 #40077 [verbose] > │ let v29 : float = v26 / v6 │
00:12:18 #40078 [verbose] > │ let v30 : (unit -> UH3) = closure147(v16) │
00:12:18 #40079 [verbose] > │ UH3_0(0.0, 0.0, v11, v12, v13, 1.0, v27, v28, v29, v30) │
00:12:18 #40080 [verbose] > │ | UH5_1 -> (* StreamNil *) │
00:12:18 #40081 [verbose] > │ v3 │
00:12:18 #40082 [verbose] > │ and closure142 (v0 : UH4) (v1 : UH1) : UH3 = │
00:12:18 #40083 [verbose] > │ let v2 : UH5 = UH5_1 │
00:12:18 #40084 [verbose] > │ let v3 : int32 = 0 │
00:12:18 #40085 [verbose] > │ let struct (v4 : UH5, v5 : int32) = method5(v1, v2, v3) │
00:12:18 #40086 [verbose] > │ let v6 : UH5 = UH5_1 │
00:12:18 #40087 [verbose] > │ let v7 : UH5 = method6(v4, v6) │
00:12:18 #40088 [verbose] > │ let v8 : UH3 = UH3_1 │
00:12:18 #40089 [verbose] > │ let v9 : UH3 = method7(v0, v1, v7, v8) │
00:12:18 #40090 [verbose] > │ v9 │
00:12:18 #40091 [verbose] > │ and closure148 (v0 : (UH1 -> UH1), v1 : UH1, v2 : UH1) () : UH8 = │
00:12:18 #40092 [verbose] > │ let v3 : UH1 = v0 v2 │
00:12:18 #40093 [verbose] > │ let v4 : (unit -> UH8) = closure148(v0, v1, v3) │
00:12:18 #40094 [verbose] > │ UH8_0(v2, v4) │
00:12:18 #40095 [verbose] > │ and method12 (v0 : float, v1 : UH8) : US4 = │
00:12:18 #40096 [verbose] > │ match v1 with │
00:12:18 #40097 [verbose] > │ | UH8_0(v2, v3) -> (* StreamCons *) │
00:12:18 #40098 [verbose] > │ let v4 : bool = v0 <= 0.0 │
00:12:18 #40099 [verbose] > │ if v4 then │
00:12:18 #40100 [verbose] > │ US4_0(v2) │
00:12:18 #40101 [verbose] > │ else │
00:12:18 #40102 [verbose] > │ let v6 : float = v0 - 1.0 │
00:12:18 #40103 [verbose] > │ let v7 : UH8 = v3 () │
00:12:18 #40104 [verbose] > │ method12(v6, v7) │
00:12:18 #40105 [verbose] > │ | UH8_1 -> (* StreamNil *) │
00:12:18 #40106 [verbose] > │ US4_1 │
00:12:18 #40107 [verbose] > │ and closure149 (v0 : UH9) () : UH9 = │
00:12:18 #40108 [verbose] > │ v0 │
00:12:18 #40109 [verbose] > │ and method13 (v0 : UH1, v1 : UH9) : UH9 = │
00:12:18 #40110 [verbose] > │ match v0 with │
00:12:18 #40111 [verbose] > │ | UH1_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* StreamCons *) │
00:12:18 #40112 [verbose] > │ let v12 : UH1 = v11 () │
00:12:18 #40113 [verbose] > │ let v13 : UH9 = method13(v12, v1) │
00:12:18 #40114 [verbose] > │ let v14 : (unit -> UH9) = closure149(v13) │
00:12:18 #40115 [verbose] > │ UH9_0(v4, v5, v6, v14) │
00:12:18 #40116 [verbose] > │ | UH1_1 -> (* StreamNil *) │
00:12:18 #40117 [verbose] > │ v1 │
00:12:18 #40118 [verbose] > │ and method14 (v0 : UH9, v1 : UH7) : UH7 = │
00:12:18 #40119 [verbose] > │ match v0 with │
00:12:18 #40120 [verbose] > │ | UH9_0(v2, v3, v4, v5) -> (* StreamCons *) │
00:12:18 #40121 [verbose] > │ let v6 : UH9 = v5 () │
00:12:18 #40122 [verbose] > │ let v7 : UH7 = method14(v6, v1) │
00:12:18 #40123 [verbose] > │ UH7_1(v2, v3, v4, v7) │
00:12:18 #40124 [verbose] > │ | UH9_1 -> (* StreamNil *) │
00:12:18 #40125 [verbose] > │ v1 │
00:12:18 #40126 [verbose] > │ and method15 (v0 : UH7, v1 : UH7) : UH7 = │
00:12:18 #40127 [verbose] > │ match v0 with │
00:12:18 #40128 [verbose] > │ | UH7_1(v2, v3, v4, v5) -> (* Cons *) │
00:12:18 #40129 [verbose] > │ let v6 : UH7 = method15(v5, v1) │
00:12:18 #40130 [verbose] > │ UH7_1(v2, v3, v4, v6) │
00:12:18 #40131 [verbose] > │ | UH7_0 -> (* Nil *) │
00:12:18 #40132 [verbose] > │ v1 │
00:12:18 #40133 [verbose] > │ and method16 (v0 : UH7, v1 : UH10) : UH10 = │
00:12:18 #40134 [verbose] > │ match v0 with │
00:12:18 #40135 [verbose] > │ | UH7_1(v2, v3, v4, v5) -> (* Cons *) │
00:12:18 #40136 [verbose] > │ let v6 : UH10 = method16(v5, v1) │
00:12:18 #40137 [verbose] > │ UH10_1(v2, v3, v6) │
00:12:18 #40138 [verbose] > │ | UH7_0 -> (* Nil *) │
00:12:18 #40139 [verbose] > │ v1 │
00:12:18 #40140 [verbose] > │ and closure150 (v0 : UH11) () : UH11 = │
00:12:18 #40141 [verbose] > │ v0 │
00:12:18 #40142 [verbose] > │ and method17 (v0 : UH10, v1 : UH11) : UH11 = │
00:12:18 #40143 [verbose] > │ match v0 with │
00:12:18 #40144 [verbose] > │ | UH10_1(v2, v3, v4) -> (* Cons *) │
00:12:18 #40145 [verbose] > │ let v5 : UH11 = method17(v4, v1) │
00:12:18 #40146 [verbose] > │ let v6 : (unit -> UH11) = closure150(v5) │
00:12:18 #40147 [verbose] > │ UH11_0(v2, v3, v6) │
00:12:18 #40148 [verbose] > │ | UH10_0 -> (* Nil *) │
00:12:18 #40149 [verbose] > │ v1 │
00:12:18 #40150 [verbose] > │ and closure151 (v0 : UH0) () : UH0 = │
00:12:18 #40151 [verbose] > │ v0 │
00:12:18 #40152 [verbose] > │ and closure152 (v0 : UH0) () : UH0 = │
00:12:18 #40153 [verbose] > │ v0 │
00:12:18 #40154 [verbose] > │ and method18 (v0 : UH11) : struct (UH0 * UH0) = │
00:12:18 #40155 [verbose] > │ match v0 with │
00:12:18 #40156 [verbose] > │ | UH11_0(v1, v2, v3) -> (* StreamCons *) │
00:12:18 #40157 [verbose] > │ let v4 : UH11 = v3 () │
00:12:18 #40158 [verbose] > │ let struct (v5 : UH0, v6 : UH0) = method18(v4) │
00:12:18 #40159 [verbose] > │ let v7 : (unit -> UH0) = closure151(v5) │
00:12:18 #40160 [verbose] > │ let v8 : UH0 = UH0_0(v1, v7) │
00:12:18 #40161 [verbose] > │ let v9 : (unit -> UH0) = closure152(v6) │
00:12:18 #40162 [verbose] > │ let v10 : UH0 = UH0_0(v2, v9) │
00:12:18 #40163 [verbose] > │ struct (v8, v10) │
00:12:18 #40164 [verbose] > │ | UH11_1 -> (* StreamNil *) │
00:12:18 #40165 [verbose] > │ let v11 : UH0 = UH0_1 │
00:12:18 #40166 [verbose] > │ let v12 : UH0 = UH0_1 │
00:12:18 #40167 [verbose] > │ struct (v11, v12) │
00:12:18 #40168 [verbose] > │ and method19 (v0 : UH0, v1 : UH12) : UH12 = │
00:12:18 #40169 [verbose] > │ match v0 with │
00:12:18 #40170 [verbose] > │ | UH0_0(v2, v3) -> (* StreamCons *) │
00:12:18 #40171 [verbose] > │ let v4 : UH0 = v3 () │
00:12:18 #40172 [verbose] > │ let v5 : UH12 = method19(v4, v1) │
00:12:18 #40173 [verbose] > │ UH12_1(v2, v5) │
00:12:18 #40174 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:18 #40175 [verbose] > │ v1 │
00:12:18 #40176 [verbose] > │ and method21 (v0 : UH12, v1 : int32) : int32 = │
00:12:18 #40177 [verbose] > │ match v0 with │
00:12:18 #40178 [verbose] > │ | UH12_1(v2, v3) -> (* Cons *) │
00:12:18 #40179 [verbose] > │ let v4 : int32 = v1 + 1 │
00:12:18 #40180 [verbose] > │ method21(v3, v4) │
00:12:18 #40181 [verbose] > │ | UH12_0 -> (* Nil *) │
00:12:18 #40182 [verbose] > │ v1 │
00:12:18 #40183 [verbose] > │ and method22 (v0 : (float []), v1 : UH12, v2 : int32) : int32 = │
00:12:18 #40184 [verbose] > │ match v1 with │
00:12:18 #40185 [verbose] > │ | UH12_1(v3, v4) -> (* Cons *) │
00:12:18 #40186 [verbose] > │ v0.[int v2] <- v3 │
00:12:18 #40187 [verbose] > │ let v5 : int32 = v2 + 1 │
00:12:18 #40188 [verbose] > │ method22(v0, v4, v5) │
00:12:18 #40189 [verbose] > │ | UH12_0 -> (* Nil *) │
00:12:18 #40190 [verbose] > │ v2 │
00:12:18 #40191 [verbose] > │ and method20 (v0 : UH12) : (float []) = │
00:12:18 #40192 [verbose] > │ let v1 : int32 = 0 │
00:12:18 #40193 [verbose] > │ let v2 : int32 = method21(v0, v1) │
00:12:18 #40194 [verbose] > │ let v3 : (float []) = Array.zeroCreate<float> (v2) │
00:12:18 #40195 [verbose] > │ let v4 : int32 = 0 │
00:12:18 #40196 [verbose] > │ let v5 : int32 = method22(v3, v0, v4) │
00:12:18 #40197 [verbose] > │ v3 │
00:12:18 #40198 [verbose] > │ and closure153 (v0 : UH2) () : UH2 = │
00:12:18 #40199 [verbose] > │ v0 │
00:12:18 #40200 [verbose] > │ and method1 (v0 : UH1, v1 : UH0, v2 : UH2) : UH2 = │
00:12:18 #40201 [verbose] > │ match v1 with │
00:12:18 #40202 [verbose] > │ | UH0_0(v3, v4) -> (* StreamCons *) │
00:12:18 #40203 [verbose] > │ let v5 : UH0 = v4 () │
00:12:18 #40204 [verbose] > │ let v6 : UH2 = method1(v0, v5, v2) │
00:12:18 #40205 [verbose] > │ let v7 : ((UH1 -> UH3) -> (UH1 -> UH1)) = method2() │
00:12:18 #40206 [verbose] > │ let v8 : UH4 = method4() │
00:12:18 #40207 [verbose] > │ let v9 : (UH1 -> UH3) = closure142(v8) │
00:12:18 #40208 [verbose] > │ let v10 : (UH1 -> UH1) = v7 v9 │
00:12:18 #40209 [verbose] > │ let v11 : UH1 = v10 v0 │
00:12:18 #40210 [verbose] > │ let v12 : (unit -> UH8) = closure148(v10, v0, v11) │
00:12:18 #40211 [verbose] > │ let v13 : UH8 = UH8_0(v0, v12) │
00:12:18 #40212 [verbose] > │ let v14 : US4 = method12(v3, v13) │
00:12:18 #40213 [verbose] > │ let v18 : UH1 = │
00:12:18 #40214 [verbose] > │ match v14 with │
00:12:18 #40215 [verbose] > │ | US4_1 -> (* None *) │
00:12:18 #40216 [verbose] > │ failwith<UH1> "Option does not have a value." │
00:12:18 #40217 [verbose] > │ | US4_0(v15) -> (* Some *) │
00:12:18 #40218 [verbose] > │ v15 │
00:12:18 #40219 [verbose] > │ let v19 : UH9 = UH9_1 │
00:12:18 #40220 [verbose] > │ let v20 : UH9 = method13(v18, v19) │
00:12:18 #40221 [verbose] > │ let v21 : UH7 = UH7_0 │
00:12:18 #40222 [verbose] > │ let v22 : UH7 = method14(v20, v21) │
00:12:18 #40223 [verbose] > │ let v23 : float = 0.65 │
00:12:18 #40224 [verbose] > │ let v24 : float = 0.0 │
00:12:18 #40225 [verbose] > │ let v25 : float = 0.0 │
00:12:18 #40226 [verbose] > │ let v26 : UH7 = UH7_0 │
00:12:18 #40227 [verbose] > │ let v27 : UH7 = UH7_1(v23, v24, v25, v26) │
00:12:18 #40228 [verbose] > │ let v28 : UH7 = method15(v22, v27) │
00:12:18 #40229 [verbose] > │ let v29 : UH10 = UH10_0 │
00:12:18 #40230 [verbose] > │ let v30 : UH10 = method16(v28, v29) │
00:12:18 #40231 [verbose] > │ let v31 : UH11 = UH11_1 │
00:12:18 #40232 [verbose] > │ let v32 : UH11 = method17(v30, v31) │
00:12:18 #40233 [verbose] > │ let struct (v33 : UH0, v34 : UH0) = method18(v32) │
00:12:18 #40234 [verbose] > │ let v35 : UH12 = UH12_0 │
00:12:18 #40235 [verbose] > │ let v36 : UH12 = method19(v33, v35) │
00:12:18 #40236 [verbose] > │ let v37 : float = 0.0 │
00:12:18 #40237 [verbose] > │ let v38 : UH12 = UH12_1(v37, v36) │
00:12:18 #40238 [verbose] > │ let v39 : (float []) = method20(v38) │
00:12:18 #40239 [verbose] > │ let v40 : UH12 = UH12_0 │
00:12:18 #40240 [verbose] > │ let v41 : UH12 = method19(v34, v40) │
00:12:18 #40241 [verbose] > │ let v42 : float = 0.0 │
00:12:18 #40242 [verbose] > │ let v43 : UH12 = UH12_1(v42, v41) │
00:12:18 #40243 [verbose] > │ let v44 : (float []) = method20(v43) │
00:12:18 #40244 [verbose] > │ let v45 : (unit -> UH2) = closure153(v6) │
00:12:18 #40245 [verbose] > │ UH2_0(v39, v44, v45) │
00:12:18 #40246 [verbose] > │ | UH0_1 -> (* StreamNil *) │
00:12:18 #40247 [verbose] > │ v2 │
00:12:18 #40248 [verbose] > │ and closure154 (v0 : UH13) () : UH13 = │
00:12:18 #40249 [verbose] > │ v0 │
00:12:18 #40250 [verbose] > │ and method23 (v0 : UH2, v1 : UH13, v2 : int32) : struct (UH13 * int32) = │
00:12:18 #40251 [verbose] > │ match v0 with │
00:12:18 #40252 [verbose] > │ | UH2_0(v3, v4, v5) -> (* StreamCons *) │
00:12:18 #40253 [verbose] > │ let v6 : int32 = v2 + 1 │
00:12:18 #40254 [verbose] > │ let v7 : UH2 = v5 () │
00:12:18 #40255 [verbose] > │ let v8 : (unit -> UH13) = closure154(v1) │
00:12:18 #40256 [verbose] > │ let v9 : UH13 = UH13_0(v2, v3, v4, v8) │
00:12:18 #40257 [verbose] > │ method23(v7, v9, v6) │
00:12:18 #40258 [verbose] > │ | UH2_1 -> (* StreamNil *) │
00:12:18 #40259 [verbose] > │ struct (v1, v2) │
00:12:18 #40260 [verbose] > │ and closure155 (v0 : UH13) () : UH13 = │
00:12:18 #40261 [verbose] > │ v0 │
00:12:18 #40262 [verbose] > │ and method24 (v0 : UH13, v1 : UH13) : UH13 = │
00:12:18 #40263 [verbose] > │ match v0 with │
00:12:18 #40264 [verbose] > │ | UH13_0(v2, v3, v4, v5) -> (* StreamCons *) │
00:12:18 #40265 [verbose] > │ let v6 : UH13 = v5 () │
00:12:18 #40266 [verbose] > │ let v7 : (unit -> UH13) = closure155(v1) │
00:12:18 #40267 [verbose] > │ let v8 : UH13 = UH13_0(v2, v3, v4, v7) │
00:12:18 #40268 [verbose] > │ method24(v6, v8) │
00:12:18 #40269 [verbose] > │ | UH13_1 -> (* StreamNil *) │
00:12:18 #40270 [verbose] > │ v1 │
00:12:18 #40271 [verbose] > │ and closure156 (v0 : UH14) () : UH14 = │
00:12:18 #40272 [verbose] > │ v0 │
00:12:18 #40273 [verbose] > │ and method25 (v0 : UH13, v1 : UH14) : UH14 = │
00:12:18 #40274 [verbose] > │ match v0 with │
00:12:18 #40275 [verbose] > │ | UH13_0(v2, v3, v4, v5) -> (* StreamCons *) │
00:12:18 #40276 [verbose] > │ let v6 : UH13 = v5 () │
00:12:18 #40277 [verbose] > │ let v7 : UH14 = method25(v6, v1) │
00:12:18 #40278 [verbose] > │ let v8 : string = $"{v2}" │
00:12:18 #40279 [verbose] > │ let v9 : (struct (string * (float []) * (float [])) []) = [|struct │
00:12:18 #40280 [verbose] > │ (v8, v3, v4)|] │
00:12:18 #40281 [verbose] > │ let v10 : string = "wave" │
00:12:18 #40282 [verbose] > │ let v11 : string = "position (m)" │
00:12:18 #40283 [verbose] > │ let v12 : string = "displacement (m)" │
00:12:18 #40284 [verbose] > │ let v13 : (unit -> UH14) = closure156(v7) │
00:12:18 #40285 [verbose] > │ UH14_0(v10, v11, v12, v9, v13) │
00:12:18 #40286 [verbose] > │ | UH13_1 -> (* StreamNil *) │
00:12:18 #40287 [verbose] > │ v1 │
00:12:18 #40288 [verbose] > │ and method26 (v0 : UH14, v1 : UH15) : UH15 = │
00:12:18 #40289 [verbose] > │ match v0 with │
00:12:18 #40290 [verbose] > │ | UH14_0(v2, v3, v4, v5, v6) -> (* StreamCons *) │
00:12:18 #40291 [verbose] > │ let v7 : UH14 = v6 () │
00:12:18 #40292 [verbose] > │ let v8 : UH15 = method26(v7, v1) │
00:12:18 #40293 [verbose] > │ UH15_1(v2, v3, v4, v5, v8) │
00:12:18 #40294 [verbose] > │ | UH14_1 -> (* StreamNil *) │
00:12:18 #40295 [verbose] > │ v1 │
00:12:18 #40296 [verbose] > │ and method28 (v0 : UH15, v1 : int32) : int32 = │
00:12:18 #40297 [verbose] > │ match v0 with │
00:12:18 #40298 [verbose] > │ | UH15_1(v2, v3, v4, v5, v6) -> (* Cons *) │
00:12:18 #40299 [verbose] > │ let v7 : int32 = v1 + 1 │
00:12:18 #40300 [verbose] > │ method28(v6, v7) │
00:12:18 #40301 [verbose] > │ | UH15_0 -> (* Nil *) │
00:12:18 #40302 [verbose] > │ v1 │
00:12:18 #40303 [verbose] > │ and method29 (v0 : (struct (string * string * string * (struct (string * │
00:12:18 #40304 [verbose] > │ (float []) * (float [])) [])) []), v1 : UH15, v2 : int32) : int32 = │
00:12:18 #40305 [verbose] > │ match v1 with │
00:12:18 #40306 [verbose] > │ | UH15_1(v3, v4, v5, v6, v7) -> (* Cons *) │
00:12:18 #40307 [verbose] > │ v0.[int v2] <- struct (v3, v4, v5, v6) │
00:12:18 #40308 [verbose] > │ let v8 : int32 = v2 + 1 │
00:12:18 #40309 [verbose] > │ method29(v0, v7, v8) │
00:12:18 #40310 [verbose] > │ | UH15_0 -> (* Nil *) │
00:12:18 #40311 [verbose] > │ v2 │
00:12:18 #40312 [verbose] > │ and method27 (v0 : UH15) : (struct (string * string * string * (struct │
00:12:18 #40313 [verbose] > │ (string * (float []) * (float [])) [])) []) = │
00:12:18 #40314 [verbose] > │ let v1 : int32 = 0 │
00:12:18 #40315 [verbose] > │ let v2 : int32 = method28(v0, v1) │
00:12:18 #40316 [verbose] > │ let v3 : (struct (string * string * string * (struct (string * (float [ │
00:12:18 #40317 [verbose] > │ ]) * (float [])) [])) []) = Array.zeroCreate<struct (string * string * │
00:12:18 #40318 [verbose] > │ string * (struct (string * (float []) * (float [])) []))> (v2) │
00:12:18 #40319 [verbose] > │ let v4 : int32 = 0 │
00:12:18 #40320 [verbose] > │ let v5 : int32 = method29(v3, v0, v4) │
00:12:18 #40321 [verbose] > │ v3 │
00:12:18 #40322 [verbose] > │ and method0 () : (struct (string * string * string * (struct (string * │
00:12:18 #40323 [verbose] > │ (float []) * (float [])) [])) []) = │
00:12:18 #40324 [verbose] > │ let v0 : float = 0.0 │
00:12:18 #40325 [verbose] > │ let v1 : (unit -> UH0) = closure0() │
00:12:18 #40326 [verbose] > │ let v2 : UH0 = UH0_0(v0, v1) │
00:12:18 #40327 [verbose] > │ let v3 : float = 0.0 │
00:12:18 #40328 [verbose] > │ let v4 : float = 8.422578125E-06 │
00:12:18 #40329 [verbose] > │ let v5 : float = 0.01 │
00:12:18 #40330 [verbose] > │ let v6 : float = 0.0007224452478461068 │
00:12:18 #40331 [verbose] > │ let v7 : float = 0.0 │
00:12:18 #40332 [verbose] > │ let v8 : float = 0.0 │
00:12:18 #40333 [verbose] > │ let v9 : float = 0.0 │
00:12:18 #40334 [verbose] > │ let v10 : float = 0.0 │
00:12:18 #40335 [verbose] > │ let v11 : float = 0.0 │
00:12:18 #40336 [verbose] > │ let v12 : (unit -> UH1) = closure66() │
00:12:18 #40337 [verbose] > │ let v13 : UH1 = UH1_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) │
00:12:18 #40338 [verbose] > │ let v14 : UH2 = UH2_1 │
00:12:18 #40339 [verbose] > │ let v15 : UH2 = method1(v13, v2, v14) │
00:12:18 #40340 [verbose] > │ let v16 : UH13 = UH13_1 │
00:12:18 #40341 [verbose] > │ let v17 : int32 = 0 │
00:12:18 #40342 [verbose] > │ let struct (v18 : UH13, v19 : int32) = method23(v15, v16, v17) │
00:12:18 #40343 [verbose] > │ let v20 : UH13 = UH13_1 │
00:12:18 #40344 [verbose] > │ let v21 : UH13 = method24(v18, v20) │
00:12:18 #40345 [verbose] > │ let v22 : UH14 = UH14_1 │
00:12:18 #40346 [verbose] > │ let v23 : UH14 = method25(v21, v22) │
00:12:18 #40347 [verbose] > │ let v24 : UH15 = UH15_0 │
00:12:18 #40348 [verbose] > │ let v25 : UH15 = method26(v23, v24) │
00:12:18 #40349 [verbose] > │ method27(v25) │
00:12:18 #40350 [verbose] > │ method0() │
00:12:18 #40351 [verbose] > │ │
00:12:18 #40352 [verbose] > │ │
00:12:18 #40353 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:18 #40354 [verbose] >
00:12:18 #40355 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:12:18 #40356 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:12:18 #40357 [verbose] > │ ## end │
00:12:18 #40358 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:12:20 #40359 [verbose] > [NbConvertApp] Converting notebook physics.dib.ipynb to html
00:12:20 #40360 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:12:20 #40361 [verbose] > validate(nb)
00:12:21 #40362 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:12:21 #40363 [verbose] > return _pygments_highlight(
00:12:24 #40364 [verbose] > [NbConvertApp] Writing 2732433 bytes to physics.dib.html
00:12:25 #40365 [debug] executeAsync / exitCode: 0 / output.Length: 577346
00:12:25 #40366 [debug] main / executeCommand / exitCode: 0
00:12:25 #40367 [verbose] waitForPortAccess / port: 13805 / retry: 0
00:12:27 #40368 [debug] runWithTimeoutChildAsync / timeout: 2000
00:00:00 #2 [debug] writeDibCode / output: Spi / path: file_system.dib
00:00:00 #2 [debug] writeDibCode / output: Spi / path: math.dib
00:00:00 #2 [debug] writeDibCode / output: Spi / path: date_time.dib
00:00:00 #2 [debug] writeDibCode / output: Spi / path: guid.dib
00:00:00 #2 [debug] writeDibCode / output: Spi / path: common.dib
00:00:00 #2 [debug] writeDibCode / output: Spi / path: testing.dib
00:00:00 #2 [debug] writeDibCode / output: Spi / path: console.dib
00:00:00 #2 [debug] writeDibCode / output: Spi / path: trace.dib
00:00:00 #8 [debug] parseDibCode / output: Spi / file: guid.dib
00:00:00 #5 [debug] parseDibCode / output: Spi / file: trace.dib
00:00:00 #5 [debug] parseDibCode / output: Spi / file: file_system.dib
00:00:00 #7 [debug] parseDibCode / output: Spi / file: date_time.dib
00:00:00 #9 [debug] parseDibCode / output: Spi / file: common.dib
00:00:00 #6 [debug] parseDibCode / output: Spi / file: math.dib
00:00:00 #5 [debug] parseDibCode / output: Spi / file: console.dib
00:00:00 #10 [debug] parseDibCode / output: Spi / file: testing.dib
00:00:00 #14 [debug] writeDibCode / output: Spi / path: listm'.dib
00:00:00 #14 [debug] writeDibCode / output: Spi / path: benchmark.dib
00:00:00 #14 [debug] writeDibCode / output: Spi / path: optionm'.dib
00:00:00 #14 [debug] writeDibCode / output: Spi / path: stream.dib
00:00:00 #14 [debug] writeDibCode / output: Spi / path: am'.dib
00:00:00 #15 [debug] writeDibCode / output: Spi / path: seq.dib
00:00:00 #16 [debug] parseDibCode / output: Spi / file: listm'.dib
00:00:00 #17 [debug] parseDibCode / output: Spi / file: benchmark.dib
00:00:00 #19 [debug] parseDibCode / output: Spi / file: stream.dib
00:00:00 #20 [debug] parseDibCode / output: Spi / file: am'.dib
00:00:00 #14 [debug] writeDibCode / output: Spi / path: sm'.dib
00:00:00 #21 [debug] parseDibCode / output: Spi / file: seq.dib
00:00:00 #18 [debug] parseDibCode / output: Spi / file: optionm'.dib
00:00:00 #22 [debug] parseDibCode / output: Spi / file: sm'.dib
00:00:00 #23 [debug] writeDibCode / output: Spi / path: util.dib
00:00:00 #24 [debug] writeDibCode / output: Spi / path: rust.dib
00:00:00 #25 [debug] parseDibCode / output: Spi / file: util.dib
00:00:00 #26 [debug] parseDibCode / output: Spi / file: rust.dib
00:00:00 #27 [debug] writeDibCode / output: Spi / path: physics.dib
00:00:00 #28 [debug] parseDibCode / output: Spi / file: physics.dib
00:00:00 #1 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:00 #2 [debug] executeAsync / options: { Command =
"dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" --port 13805 --default-int i32 --default-float f64"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = Some <fun:main@441-47> }
00:00:00 #3 [verbose] > pwd: C:\home\git\polyglot\lib\spiral
00:00:00 #4 [verbose] > dllPath: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release
00:00:00 #5 [verbose] > targetDir: C:\home\git\polyglot\target/polyglot/spiral_eval
00:00:00 #6 [verbose] > Starting the Spiral Server. It is bound to: http://localhost:13805
00:00:00 #7 [debug] runWithTimeoutChildAsync / timeout: 500
00:00:00 #8 [verbose] waitForPortAccess / port: 13805 / retry: 0
00:00:01 #9 [debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:
00:00:01 #10 [verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0
00:00:01 #11 [verbose] > Server bound to: http://localhost:13805
00:00:01 #12 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:01 #13 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:01 #14 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:01 #15 [debug] sendJson / port: 13805 / json: {"FileOpen":{"spiText":"// // # trace\n\n// // ## trace_level\n\nunion trace_level =\n | Verbose\n | Debug\n | Info\n | Warning\n | Critical\n\ninstance to_string trace_level = function\n | Verbose =\u003E \u0022Verbose\u0022\n | Debug =\u003E \u0022Debug\u0022\n | Info =\u003E \u0022Info\u0022\n | Warning =\u003E \u0022Warning\u0022\n | Critical =\u003E \u0022Critical\u0022\n\ninstance of_string trace_level = function\n | \u0022Verbose\u0022 =\u003E Verbose\n | \u0022Debug\u0022 =\u003E Debug\n | \u0022Info\u0022 =\u003E Info\n | \u0022Warning\u0022 =\u003E Warning\n | \u0022Critical\u0022 =\u003E Critical\n\n// // ## repl_start\n\ninl repl_start () : optionm\u0027.option\u0027 i64 =\n inl result : optionm\u0027.option\u0027 (optionm\u0027.option\u0027 i64) = optionm\u0027.none\u0027 ()\n $\u0022let mutable _!result = !result\u0022\n $\u0027#if INTERACTIVE || \\!FABLE_COMPILER\u0027 : ()\n if get_entry_assembly_name () \u003C\u003E \u0022Microsoft.DotNet.Interactive.App\u0022\n then date_time.now () |\u003E date_time.ticks |\u003E Some\n else None\n |\u003E optionm\u0027.box\n |\u003E fun x =\u003E\n inl x = join x\n $\u0027!x \u0027\n $\u0027#else\u0027 : ()\n (None : option i64) |\u003E optionm\u0027.box\n |\u003E fun x =\u003E\n inl x = join x\n $\u0027!x \u0027\n $\u0027#endif\u0027 : ()\n $\u0022|\u003E fun x -\u003E _!result \u003C- Some x\u0022\n $\u0027_!result.Value\u0027\n\n// // ## trace_state\n\ntype trace_state =\n {\n count : mut i64\n dump : mut bool\n enabled : mut bool\n level : mut trace_level\n repl_start : optionm\u0027.option\u0027 i64\n }\n\ninl new_trace_state () =\n {\n enabled = mut true\n count = mut 0i64\n level = mut Verbose\n dump = mut false\n repl_start = repl_start ()\n } : trace_state\n\n// // ## init_trace_state\n\ninl init_trace_state () : () =\n global \u0022module State = let mutable trace_state = None\u0022\n $\u0022if State.trace_state = None then State.trace_state \u003C- !new_trace_state () |\u003E Some\u0022 : ()\n\n// // ## get_trace_state\n\ninl get_trace_state () : trace_state =\n init_trace_state ()\n $\u0027State.trace_state.Value\u0027\n\n// // ## get_locals\n\ninl get_locals () = \u0022\u0022\n\n// // ## test_trace_level\n\ninl test_trace_level level : bool =\n inl state = get_trace_state ()\n inl level\u0027 = *state.level\n *state.enabled \u0026\u0026 $\u0027!level \u003E= !level\u0027 \u0027\n\n// // ## trace_raw\n\ninl trace_raw level fn =\n inl trace_state = get_trace_state ()\n if level |\u003E test_trace_level then\n inl count = trace_state.count\n count \u003C- *trace_state.count \u002B 1\n\n inl text = $\u0027$\u0022%s{!fn ()}\u0022\u0027 : string\n run_target function\n | Rust _ =\u003E fun () =\u003E\n open rust_operators\n !\\\\(text, $\u0027\\@\u0022println\\!(\u0022\u0022{}\u0022\u0022, $0)\u0022\u0027)\n | _ =\u003E fun () =\u003E\n $\u0027System.Console.WriteLine !text \u0027\n\n // run_target function\n // | Fsharp (Native) =\u003E fun () =\u003E\n // if *trace_state.dump then\n // try_unit\n // fun () =\u003E\n // // open file_system_operators\n // // inl tmp_path = file_system.get_temp_path ()\n // // inl log_dir = tmp_path \u003C/\u003E \u0022!polyglot\u0022\n // // file_system.create_directory log_dir |\u003E ignore\n // // inl guid = date_time.new_guid_from_date_time (date_time.now ())\n // // inl log_file = log_dir \u003C/\u003E $\u0027$\u0022{!guid}.txt\u0022\u0027\n // // file_system.write_all_text_async log_file text |\u003E async.run_synchronously\n // ()\n // fun ex =\u003E\n // inl ex = ex |\u003E sm\u0027.format_exception\n // trace_raw Critical (fun () =\u003E $\u0027$\u0022trace / ex: {!ex}\u0022\u0027)\n // | _ =\u003E fun () =\u003E ()\n\n// // ## trace\n\nlet trace (level : trace_level) (fn : () -\u003E string) (get_locals : () -\u003E string) =\n fun () =\u003E\n inl trace_state = get_trace_state ()\n inl time =\n run_target fun target =\u003E\n match target with\n | Fsharp (Native)\n | Rust (Native) =\u003E fun () =\u003E\n match trace_state.repl_start |\u003E optionm\u0027.unbox with\n | Some repl_start =\u003E\n inl t =\n (date_time.now () |\u003E date_time.ticks |\u003E fun (date_time.timestamp x) =\u003E x)\n - repl_start |\u003E date_time.time_span\n date_time.date_time_milliseconds\n 1i32 1i32 1i32\n (t |\u003E date_time.hours)\n (t |\u003E date_time.minutes)\n (t |\u003E date_time.seconds)\n (t |\u003E date_time.milliseconds)\n | None =\u003E date_time.now ()\n |\u003E fun date_time =\u003E\n inl format =\n match target with\n | Rust _ =\u003E \u0022hh:mm:ss\u0022\n | _ =\u003E \u0022HH:mm:ss\u0022\n $\u0027!date_time.ToString !format \u0027\n | _ =\u003E fun () =\u003E join \u0022\u0022\n inl count = *trace_state.count\n inl level = level |\u003E to_string |\u003E sm\u0027.to_lower\n $\u0027$\u0022{!time} #{!count} [{!level}] %s{!fn ()} / %s{!get_locals ()}\u0022\u0027\n |\u003E sm\u0027.trim_start ;[]\n |\u003E sm\u0027.trim_end ;[ \u0027 \u0027; \u0027/\u0027 ]\n |\u003E trace_raw level\n\n// // ## main\n\ninl main () =\n // global \u0022let mutable trace_state = None\u0022\n // $\u0022let mutable trace_state : \u0060trace_state option = None\u0022 : ()\n\n $\u0022let trace x = !trace x\u0022 : ()\n $\u0022let get_trace_state () = !get_trace_state ()\u0022 : ()\n","uri":"file:///c:/home/git/polyglot/lib/spiral/trace.spi"}} / result.Length:
00:00:01 #16 [debug] sendJson / port: 13805 / json: {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/lib/spiral/trace.spi"}} / result.Length:
00:00:01 #17 [verbose] > Building c:\home\git\polyglot\lib\spiral\trace.spi
00:00:02 #18 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:03 #19 [debug] buildFile / takeWhileInclusive / fsxContent: module State = let mutable trace_state = None
type [<Struct>] US0 =
| US0_0
| US0_1
| US0_2
| US0_3
| US0_4
and Mut0 = {mutable l0 : int64}
and Mut1 = {mutable l0 : bool}
and Mut2 = {mutable l0 : US0}
and [<Struct>] US1 =
| US1_0 of f0_0 : int64
| US1_1
and [<Struct>] US2 =
| US2_0 of f0_0 : int64
| US2_1
let rec method1 (v0 : int64 option) : int64 option =
v0
and method2 (v0 : int64 option) : int64 option =
v0
and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
let v0 : Mut1 = {l0 = true} : Mut1
let v1 : Mut0 = {l0 = 0L} : Mut0
let v2 : US0 = US0_0
let v3 : Mut2 = {l0 = v2} : Mut2
let v4 : Mut1 = {l0 = false} : Mut1
let v5 : int64 option option = None
... / errors: [] / typeErrorCount: 0
00:00:03 #20 [debug] watchWithFilter / Disposing watch stream / filter: FileName, LastWrite
00:00:03 #21 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:03 #22 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:03 #23 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:03 #24 [debug] sendJson / port: 13805 / json: {"FileOpen":{"spiText":"// // # common\n\n// // ## prototype\n\nprototype (~:\u003E) r : forall t. t -\u003E r\n\n// // ## run_target\n\n// // ## emit\n\ninl emit forall t. (x : t) : t =\n $\u0027!x \u0027\n\n// // ## upcast\n\ninl upcast forall t u. (x : t) : u =\n $\u0027!x :\u003E \u0060u \u0027\n\n// // ## downcast\n\ninl downcast forall t u. (x : t) : u =\n $\u0027!x :?\u003E \u0060u \u0027\n\n// // ## unativeint\n\nnominal unativeint = $\u0022unativeint\u0022\n\ninl unativeint forall t {int}. (n : t) : unativeint =\n $\u0022unativeint !n\u0022\n\n// // ## pair\n\n// // ## new_pair\n\ninl new_pair forall a b. (a : a) (b : b) : pair a b =\n $\u0022!a, !b\u0022\n\n// // ## from_pair\n\ninl from_pair forall a b. (pair : pair a b) : a * b =\n $\u0022let (a, b) = !pair\u0022\n $\u0022a\u0022, $\u0022b\u0022\n\n// // ## memoize\n\nnominal lazy t = $\u0027Lazy\u003C\u0060t\u003E\u0027\n\ninl memoize forall t. (fn : () -\u003E t) : () -\u003E t =\n inl fn = join fn\n inl result : lazy t = $\u0027lazy !fn ()\u0027\n fun () =\u003E $\u0027!result.Value\u0027\n\n// // ## to_any\n\ninl to_any forall t. (obj : t) : any =\n $\u0022!obj\u0022\n\ninstance (~:\u003E) any = to_any\n\n// // ## unbox\n\ninl unbox forall t u. (x : t) : u =\n $\u0022!x |\u003E unbox\u003C\u0060u\u003E\u0022\n\n// // ## (\u002B.)\n\ninl (\u002B.) forall t. (a : t) (b : t) : t =\n $\u0022!a \u002B !b\u0022\n\n// // ## (-.)\n\ninl (-.) forall t. (a : t) (b : t) : t =\n $\u0022!a - !b\u0022\n\n// // ## (*.)\n\ninl (*.) forall t. (a : t) (b : t) : t =\n $\u0022!a * !b\u0022\n\n// // ## (/.)\n\ninl (/.) forall t. (a : t) (b : t) : t =\n $\u0022!a / !b\u0022\n\n// // ## (=.)\n\ninl (=.) forall t. (a : t) (b : t) : bool =\n $\u0022!a = !b\u0022\n\n// // ## (||\u003E)\n\ninl (||\u003E) (arg1, arg2) fn =\n arg2 |\u003E fn arg1\n\n// // ## flip\n\ninl flip fn a b =\n fn b a\n\n// // ## join_body\n\ninl join_body body acc x =\n if var_is x |\u003E not\n then body acc x\n else\n inl acc = dyn acc\n join body acc x\n\n// // ## join_body_unit\n\ninl join_body_unit body d x =\n if var_is d |\u003E not\n then body x\n else\n inl x = dyn x\n join body x\n\n// // ## nameof\n\ninl nameof x : string =\n $\u0022nameof !x\u0022\n\n// // ## get_environment_variable\n\ninl get_environment_variable (var : string) : string =\n $\u0022System.Environment.GetEnvironmentVariable !var\u0022\n\n// // ## disposable\n\nnominal disposable t = $\u0022System.IDisposable\u0022\n\n// // ## use\n\ninl use forall t. (x : t) : t =\n $\u0022use !x = !x \u0022 : ()\n $\u0027!x \u0027\n\n// // ## dispose\n\ninl dispose (disposable : disposable _) : () =\n disposable |\u003E $\u0027_.Dispose()\u0027\n\n// // ## new_disposable\n\ninl new_disposable (fn : () -\u003E ()) : disposable _ =\n run_target function\n | Fsharp _ =\u003E fun () =\u003E $\u0027{ new System.IDisposable with member _.Dispose () = !fn () }\u0027\n // | Rust _ =\u003E\n // fun () =\u003E\n // $\u0027{ new System.IDisposable with member _.Dispose () = Fable.Core.RustInterop.emitRustExpr () \u0022!fn()\u0022 }\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## return\n\ninl return forall t. (x : t) : () =\n $\u0027return !x \u0027\n\ninl return\u0027 forall t. (x : t) : t =\n $\u0027return !x \u0027\n\n// // ## sleep\n\ninl sleep (n : i32) : () =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E $\u0027System.Threading.Thread.Sleep\u0027 n\n | _ =\u003E fun () =\u003E ()\n\n// // ## retry_fn\n\ninl retry_fn forall t. retries (fn : () -\u003E t) : option t =\n let rec loop retry =\n try\n fun () =\u003E\n if retry \u003C retries\n then fn () |\u003E Some\n else None\n fun ex =\u003E\n inl get_locals () = $\u0027$\u0022retry: {!retry} / ex: {ex |\u003E SpiralSm.format_exception} / {!get_locals ()}\u0022\u0027 : string\n // trace Warning (fun () =\u003E \u0022retry_fn\u0022) getLocals\n sleep 1\n None\n |\u003E function\n | Some x =\u003E x\n | None =\u003E loop (retry \u002B 1)\n loop 0\n\n// // ## main\n\ninl main () =\n inl new_disposable x : _ () = new_disposable x\n $\u0022let new_disposable x = !new_disposable x\u0022 : ()\n \n inl retry_fn (r : i32) (x : () -\u003E _) : optionm\u0027.option\u0027 () = retry_fn r x |\u003E optionm\u0027.box\n $\u0022let retry_fn x = !retry_fn x\u0022 : ()\n","uri":"file:///c:/home/git/polyglot/lib/spiral/common.spi"}} / result.Length:
00:00:03 #25 [debug] sendJson / port: 13805 / json: {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/lib/spiral/common.spi"}} / result.Length:
00:00:03 #26 [verbose] > Building c:\home\git\polyglot\lib\spiral\common.spi
00:00:03 #27 [debug] buildFile / takeWhileInclusive / fsxContent: type [<Struct>] US0 =
| US0_0
| US0_1
and [<Struct>] US1 =
| US1_0 of f0_0 : US0
| US1_1
let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
let v1 : System.IDisposable option = None
let mutable _v1 = v1
#if FABLE_COMPILER_RUST && !WASM && !CONTRACT
let v2 : System.IDisposable = null |> unbox<System.IDisposable>
v2
#endif
#if FABLE_COMPILER_RUST && WASM
let v3 : System.IDisposable = null |> unbox<System.IDisposable>
v3
#endif
#if FABLE_COMPILER_RUST && CONTRACT
let v4 : System.IDisposable = null |> unbox<System.IDisposable>
v4
#endif
#if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT
let v5 : System.ID... / errors: [] / typeErrorCount: 0
00:00:03 #28 [debug] watchWithFilter / Disposing watch stream / filter: FileName, LastWrite
00:00:03 #29 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:03 #30 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:03 #31 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:03 #32 [debug] sendJson / port: 13805 / json: {"FileOpen":{"spiText":"// // # date_time\n\nopen rust_operators\nopen sm\u0027_operators\n\n// // ## types\n\ninl types () =\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022chrono::DateTime\u003C$0\u003E\\\u0022)\u003E] type chrono_DateTime\u003C\u0027T\u003E = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022chrono::Local\\\u0022)\u003E] type chrono_Local = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022chrono::NaiveDateTime\\\u0022)\u003E] type chrono_NaiveDateTime = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022chrono::Utc\\\u0022)\u003E] type chrono_Utc = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022std::time::Duration\\\u0022)\u003E] type std_time_Duration = class end\u0022\n\nnominal timestamp = i64\nnominal duration = $\u0022std_time_Duration\u0022\nnominal date_time = $\u0022System.DateTime\u0022\nnominal date_time\u0027 t = $\u0022chrono_DateTime\u003C\u0060t\u003E\u0022\nnominal local = $\u0022chrono_Local\u0022\nnominal naive_date_time = $\u0022chrono_NaiveDateTime\u0022\nnominal utc = $\u0022chrono_Utc\u0022\n\n// // ## date_time_milliseconds\n\ninl date_time_milliseconds\n (year : int) (month : int) (day : int) (hour : int) (minute : int) (second : int) (millisecond : int)\n : date_time\n =\n $\u0027System.DateTime (!year, !month, !day, !hour, !minute, !second, !millisecond)\u0027\n\n// // ## naive_utc\n\ninl naive_utc (date_time : date_time\u0027 utc) : naive_date_time =\n inl date_time = join date_time\n !\\($\u0027\u0022!date_time.naive_utc()\u0022\u0027)\n\n// // ## to_local\n\ninl to_local (date_time : date_time\u0027 utc) : date_time\u0027 local =\n inl naive_date_time = date_time |\u003E naive_utc\n !\\($\u0027\u0022chrono::offset::TimeZone::from_utc_datetime(\u0026chrono::Local, \u0026!naive_date_time)\u0022\u0027)\n\n// // ## from_timestamp\u0027\n\ninl from_timestamp\u0027 forall t {number; int}. (timestamp : t) : option (date_time\u0027 utc) =\n inl timestamp = join timestamp\n inl result : optionm\u0027.option\u0027 (date_time\u0027 utc) =\n !\\($\u0027\u0022chrono::DateTime::from_timestamp_micros(!timestamp / 1000i64)\u0022\u0027)\n result |\u003E optionm\u0027.unbox\n\n// // ## ticks\n\ninl ticks (date_time : date_time) : timestamp =\n date_time |\u003E $\u0027_.Ticks\u0027\n\n// // ## format\n\ninl format (format : string) (date_time : date_time) : string =\n $\u0027!date_time.ToString\u0027 format\n\n// // ## format_iso8601\n\ninl format_iso8601 (date_time : date_time) =\n date_time |\u003E format \u0022yyyy-MM-ddTHH-mm-ss.fff\u0022\n\n// // ## format\u0027\n\ninl format\u0027 (format : string) (date_time : date_time\u0027 utc) : sm\u0027.std_string =\n inl format = #format\n inl date_time = join date_time\n !\\($\u0027\u0022!date_time.format(!format).to_string()\u0022\u0027)\n\n// // ## format\u0027\u0027\n\ninl format\u0027\u0027 (format : string) (date_time : date_time\u0027 _) : sm\u0027.std_string =\n inl format = #format\n inl date_time = join date_time\n !\\($\u0027\u0022!date_time.format(!format).to_string()\u0022\u0027)\n\n// // ## format_timestamp\n\ninl format_timestamp (timestamp : sm\u0027.std_string) =\n inl timestamp = join timestamp\n timestamp\n |\u003E fun x =\u003E !\\($\u0027\u0022!x.parse().unwrap()\u0022\u0027) : i64\n |\u003E from_timestamp\u0027\n |\u003E optionm.map fun x =\u003E\n x\n |\u003E to_local\n |\u003E format\u0027\u0027 \u0022%Y-%m-%d %H:%M:%S\u0022\n |\u003E sm\u0027.from_std_string\n |\u003E resultm.from_option\n\n// // ## duration_from_millis\n\ninl duration_from_millis (ms : u64) : duration =\n inl ms = join ms\n !\\($\u0027\u0022std::time::Duration::from_millis(!ms)\u0022\u0027)\n\n// // ## get_environment_variable\n\ninl get_environment_variable (var : string) : string =\n $\u0022System.Environment.GetEnvironmentVariable !var\u0022\n\ntype timestamp_guid = guid.guid\ntype date_time_guid = guid.guid\n\n// // ## date_time_guid_from_date_time\n\ninl date_time_guid_from_date_time (guid : guid.guid) (date_time : date_time) =\n inl guid = guid |\u003E sm\u0027.obj_to_string\n inl prefix = $\u0027!date_time.ToString \u0022yyyyMMdd-HHmm-ssff-ffff-f\u0022\u0027 : string\n $\u0027\u0060date_time_guid $\u0022{!prefix}{!guid.[!prefix.Length..]}\u0022\u0027 : date_time_guid\n\n// // ## date_time_from_guid\n\ninl date_time_from_guid (date_time_guid : date_time_guid) =\n inl date_time_guid = date_time_guid |\u003E sm\u0027.obj_to_string\n inl sm\u0027_replace = join sm\u0027.replace\n run_target function\n | Rust _ =\u003E fun () =\u003E\n $\u0027System.DateTime.Parse (!date_time_guid.[..24] |\u003E !sm\u0027_replace \u0022-\u0022 \u0022\u0022)\u0027 : date_time\n | _ =\u003E fun () =\u003E $\u0027System.DateTime.ParseExact (!date_time_guid.[..24] |\u003E !sm\u0027_replace \u0022-\u0022 \u0022\u0022, \u0022yyyyMMddHHmmssfffffff\u0022, null)\u0027 : date_time\n\n// // ## timestamp_guid_from_timestamp\n\ninl timestamp_guid_from_timestamp (guid : guid.guid) (timestamp : timestamp) : timestamp_guid =\n inl guid = guid |\u003E sm\u0027.obj_to_string\n inl timestamp = timestamp |\u003E sm\u0027.obj_to_string |\u003E sm\u0027.pad_left 18i32 \u00270\u0027\n $\u0027\u0060timestamp_guid $\u0022{!timestamp.[0..7]}-{!timestamp.[8..11]}-{!timestamp.[12..15]}-{!timestamp.[16..17]}{!guid.[21..]}\u0022\u0027\n\n// // ## timestamp_from_guid\n\ninl timestamp_from_guid (guid : date_time_guid) : timestamp =\n inl guid = guid |\u003E sm\u0027.obj_to_string\n $\u0027\u0060i64 $\u0022{!guid.[0..7]}{!guid.[9..12]}{!guid.[14..17]}{!guid.[19..20]}\u0022\u0027\n\n// // ## now\n\ninl now () : date_time =\n $\u0027System.DateTime.Now\u0027\n\n// // ## utc_now\n\ninl utc_now () : date_time =\n $\u0027System.DateTime.UtcNow\u0027\n\n// // ## time_span\n\nnominal time_span = $\u0027System.TimeSpan\u0027\n\ninl time_span x : time_span =\n $\u0027\u0060time_span !x \u0027\n\n// // ## new_time_span\n\ninl new_time_span (a : date_time) (b : date_time) : time_span =\n $\u0027!b - !a \u0027\n\n// // ## hours\n\ninl hours (time_span : time_span) : i32 =\n time_span |\u003E $\u0027_.Hours\u0027\n\n// // ## milliseconds\n\ninl milliseconds (time_span : time_span) : i32 =\n time_span |\u003E $\u0027_.Milliseconds\u0027\n\n// // ## minutes\n\ninl minutes (time_span : time_span) : i32 =\n time_span |\u003E $\u0027_.Minutes\u0027\n\n// // ## seconds\n\ninl seconds (time_span : time_span) : i32 =\n time_span |\u003E $\u0027_.Seconds\u0027\n\n// // ## total_seconds\n\ninl total_seconds (time_span : time_span) : f64 =\n time_span |\u003E $\u0027_.TotalSeconds\u0027\n\n// // ## new_guid_from_date_time\n\ninl new_guid_from_date_time (date_time : date_time) =\n inl guid = guid.new_raw_guid ()\n date_time_guid_from_date_time guid date_time\n\n// // ## new_guid_from_timestamp\n\ninl new_guid_from_timestamp (timestamp : timestamp) =\n inl guid = guid.new_raw_guid ()\n timestamp_guid_from_timestamp guid timestamp\n\n// // ## main\n\ninl main () =\n $\u0022let date_time_guid_from_date_time x = !date_time_guid_from_date_time x\u0022 : ()\n $\u0022let date_time_from_guid x = !date_time_from_guid x\u0022 : ()\n $\u0022let timestamp_guid_from_timestamp x = !timestamp_guid_from_timestamp x\u0022 : ()\n $\u0022let timestamp_from_guid x = !timestamp_from_guid x\u0022 : ()\n $\u0022let new_guid_from_date_time x = !new_guid_from_date_time x\u0022 : ()\n $\u0022let new_guid_from_timestamp x = !new_guid_from_timestamp x\u0022 : ()\n $\u0022let format x = !format x\u0022 : ()\n $\u0022let format_iso8601 x = !format_iso8601 x\u0022 : ()\n","uri":"file:///c:/home/git/polyglot/lib/spiral/date_time.spi"}} / result.Length:
00:00:03 #33 [verbose] > Building c:\home\git\polyglot\lib\spiral\date_time.spi
00:00:03 #34 [debug] sendJson / port: 13805 / json: {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/lib/spiral/date_time.spi"}} / result.Length:
00:00:03 #35 [debug] buildFile / takeWhileInclusive / fsxContent: let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
let v2 : (System.Guid -> string) = _.ToString()
let v3 : string = v2 v0
let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
let v5 : System.Guid = System.Guid $"{v4}{v3.[v4.Length..]}"
v5
and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
closure1(v0)
and closure5 (v0 : string, v1 : string) (v2 : string) : string =
let v3 : string = v2.Replace (v0, v1)
v3
and closure4 (v0 : string) (v1 : string) : (string -> string) =
closure5(v0, v1)
and closure3 () (v0 : string) : (string -> (string -> string)) =
closure4(v0)
and method0 () : (string -> (string -> (string -> string))) =
closure3()
and closure2 (... / errors: [] / typeErrorCount: 0
00:00:03 #36 [debug] watchWithFilter / Disposing watch stream / filter: FileName, LastWrite
00:00:03 #37 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:03 #38 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:03 #39 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:03 #40 [debug] sendJson / port: 13805 / json: {"FileOpen":{"spiText":"// // # file_system\n\nopen sm\u0027_operators\n\n// // ## types\n\ninl types () =\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022std::path::Path\\\u0022)\u003E] type std_path_Path = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022std::path::PathBuf\\\u0022)\u003E] type std_path_PathBuf = class end\u0022\n\ninl types () =\n global \u0022#if FABLE_COMPILER // file_system.types\u0022\n sm\u0027.types ()\n rust.types ()\n types ()\n global \u0022#endif // file_system.types\u0022\n\n// // ## file_mode\n\nnominal file_mode\u0027 = $\u0027System.IO.FileMode\u0027\n\nunion file_mode =\n | ModeCreateNew\n | ModeCreate\n | ModeOpen\n | ModeOpenOrCreate\n | Truncate\n | Append\n\ninl file_mode = function\n | ModeCreateNew =\u003E $\u0027System.IO.FileMode.CreateNew\u0027 : file_mode\u0027\n | ModeCreate =\u003E $\u0027System.IO.FileMode.Create\u0027 : file_mode\u0027\n | ModeOpen =\u003E $\u0027System.IO.FileMode.Open\u0027 : file_mode\u0027\n | ModeOpenOrCreate =\u003E $\u0027System.IO.FileMode.OpenOrCreate\u0027 : file_mode\u0027\n | Truncate =\u003E $\u0027System.IO.FileMode.Truncate\u0027 : file_mode\u0027\n | Append =\u003E $\u0027System.IO.FileMode.Append\u0027 : file_mode\u0027\n\n// // ## file_access\n\nnominal file_access\u0027 = $\u0027System.IO.FileAccess\u0027\n\nunion file_access =\n | AccessRead\n | AccessWrite\n | AccessReadWrite\n\ninl file_access = function\n | AccessRead =\u003E $\u0027System.IO.FileAccess.Read\u0027 : file_access\u0027\n | AccessWrite =\u003E $\u0027System.IO.FileAccess.ReadWrite\u0027 : file_access\u0027\n | AccessReadWrite =\u003E $\u0027System.IO.FileAccess.ReadWrite\u0027 : file_access\u0027\n\n// // ## file_share\n\nnominal file_share\u0027 = $\u0027System.IO.FileShare\u0027\n\nunion file_share =\n | ShareNone\n | ShareRead\n | ShareWrite\n | ShareReadWrite\n | ShareDelete\n\ninl file_share = function\n | ShareNone =\u003E $\u0027System.IO.FileShare.None\u0027 : file_share\u0027\n | ShareRead =\u003E $\u0027System.IO.FileShare.Read\u0027 : file_share\u0027\n | ShareWrite =\u003E $\u0027System.IO.FileShare.Write\u0027 : file_share\u0027\n | ShareReadWrite =\u003E $\u0027System.IO.FileShare.ReadWrite\u0027 : file_share\u0027\n | ShareDelete =\u003E $\u0027System.IO.FileShare.Delete\u0027 : file_share\u0027\n\n// // ## file_stream\n\nnominal file_stream\u0027 = $\u0027System.IO.FileStream\u0027\n\ninl file_stream (path : string) mode access share : file_stream\u0027 =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n inl mode = mode |\u003E file_mode\n inl access = access |\u003E file_access\n inl share = share |\u003E file_share\n $\u0027new System.IO.FileStream (!path, !mode, !access, !share)\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## path\n\nnominal path = $\u0027std_path_Path\u0027\nnominal path_buf = $\u0027std_path_PathBuf\u0027\n\n// // ## new_path_buf\n\ninl new_path_buf (path : string) : path_buf =\n open rust_operators\n inl path = path |\u003E sm\u0027.to_std_string\n !\\\\(path, $\u0027\u0022std::path::PathBuf::from($0)\u0022\u0027)\n\n// // ## path_buf_from\n\ninl path_buf_from (path : rust.box path) : path_buf =\n open rust_operators\n !\\\\(path, $\u0027\u0022std::path::PathBuf::from($0)\u0022\u0027)\n\n// // ## path_join\n\ninl path_join (s : string) (path_buf : path_buf) : path_buf =\n open rust_operators\n !\\\\((path_buf, s |\u003E sm\u0027.to_std_string), $\u0027\u0022$0.join($1)\u0022\u0027)\n\n// // ## path_display\n\ninl path_display (path : rust.ref\u0027 path) : sm\u0027.std_string =\n open rust_operators\n !\\\\(path, $\u0027\u0022$0.display().to_string()\u0022\u0027)\n\n// // ## path_buf_file_name\n\ninl path_buf_file_name (path : path_buf) : optionm\u0027.option\u0027 (rust.ref\u0027 sm\u0027.os_str) =\n open rust_operators\n !\\($\u0027\u0022!path.file_name()\u0022\u0027)\n\n// // ## path_buf_display\n\ninl path_buf_display (path_buf : path_buf) : sm\u0027.std_string =\n open rust_operators\n !\\\\(path_buf, $\u0027\u0022$0.display().to_string()\u0022\u0027)\n\n// // ## path_exists\n\ninl path_buf_exists (path_buf : path_buf) : bool =\n open rust_operators\n !\\\\(path_buf, $\u0027\u0022$0.exists()\u0022\u0027)\n\n// // ## path_is_dir\n\ninl path_buf_is_dir (path_buf : path_buf) : bool =\n open rust_operators\n !\\\\(path_buf, $\u0027\u0022$0.is_dir()\u0022\u0027)\n\n// // ## path_is_file\n\ninl path_buf_is_file (path_buf : path_buf) : bool =\n open rust_operators\n !\\\\(path_buf, $\u0027\u0022$0.is_file()\u0022\u0027)\n\n// // ## path_buf_parent\n\ninl path_buf_parent (path_buf : path_buf) : optionm\u0027.option\u0027 path_buf =\n open rust_operators\n !\\\\(path_buf, $\u0027\u0022$0.parent().map(std::path::PathBuf::from)\u0022\u0027)\n\n// // ## ts_path_join\n\ninl ts_path_join (b : string) (a : string) : string =\n open ts_operators\n global \u0022type IPathJoin = abstract join: [\u003CSystem.ParamArray\u003E] paths: string[] -\u003E string\u0022\n inl path : $\u0027IPathJoin\u0027 = ts.import_all \u0022path\u0022\n !\\\\((a, b), $\u0027\u0022!path.join($0, $1)\u0022\u0027)\n\n// // ## (\u003C /\u003E)\n\ninl (\u003C/\u003E) (a : string) (b : string) : string =\n run_target function\n | Rust (Native) =\u003E fun () =\u003E\n a |\u003E new_path_buf |\u003E path_join b |\u003E path_buf_display |\u003E sm\u0027.from_std_string\n | Fsharp (Native) =\u003E fun () =\u003E\n $\u0027System.IO.Path.Combine (!a, !b)\u0027\n | TypeScript _ =\u003E fun () =\u003E\n a |\u003E ts_path_join b\n | _ =\u003E fun () =\u003E null ()\n\n// // ## get_temp_path\n\ninl get_temp_path () : string =\n $\u0027System.IO.Path.GetTempPath\u0027 ()\n\n// // ## get_file_name\n\ninl get_file_name (path : string) : string =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n path |\u003E $\u0027System.IO.Path.GetFileName\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## create_temp_directory_name\n\ninl create_temp_directory_name () =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n get_temp_path ()\n \u003C/\u003E ($\u0027$\u0022\\!{!get_entry_assembly_name ()}\u0022\u0027 : string)\n \u003C/\u003E (date_time.now () |\u003E date_time.new_guid_from_date_time |\u003E sm\u0027.obj_to_string)\n | target =\u003E fun () =\u003E null ()\n\n// // ## directory_info\n\nnominal directory_info = $\u0027System.IO.DirectoryInfo\u0027\n\ninl directory_info (path : string) : directory_info =\n path |\u003E $\u0027\u0060directory_info \u0027\n\n// // ## directory_info_exists\n\ninl directory_info_exists (info : directory_info) : bool =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n $\u0027!info.Exists\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## directory_info_creation_time\n\ninl directory_info_creation_time (info : directory_info) : date_time.date_time =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n $\u0027!info.CreationTime\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## directory_info_name\n\ninl directory_info_name (info : directory_info) : string =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n $\u0027!info.Name\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## directory_info_full_name\n\ninl directory_info_full_name (info : directory_info) : string =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n $\u0027!info.FullName\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## get_source_directory\n\ninl get_source_directory () =\n $\u0027__SOURCE_DIRECTORY__\u0027 : string\n\n// // ## create_directory\n\ninl create_directory (path : string) : directory_info =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n path |\u003E $\u0027System.IO.Directory.CreateDirectory\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## directory_exists\n\ninl directory_exists (path : string) : bool =\n run_target function\n | Rust (Native) =\u003E fun () =\u003E\n inl path = path |\u003E new_path_buf\n (path |\u003E path_buf_exists) \u0026\u0026 (path |\u003E path_buf_is_dir)\n | Fsharp (Native) =\u003E fun () =\u003E\n path |\u003E $\u0027System.IO.Directory.Exists\u0027\n | TypeScript (Native) =\u003E fun () =\u003E\n global \u0022type IFsExistsSync = abstract existsSync: path: string -\u003E bool\u0022\n inl fs : $\u0027IFsExistsSync\u0027 = ts.import_all \u0022fs\u0022\n ts.emit_expr path $\u0027\u0022!fs.existsSync($0)\u0022\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## directory_get_parent\n\ninl directory_get_parent (path : string) : optionm\u0027.option\u0027 string =\n run_target function\n | Rust (Native) =\u003E fun () =\u003E\n path\n |\u003E new_path_buf\n |\u003E path_buf_parent\n |\u003E optionm\u0027.try\u0027\n |\u003E path_buf_display\n |\u003E sm\u0027.from_std_string\n |\u003E Some\n | Fsharp (Native) =\u003E fun () =\u003E\n inl parent : directory_info = path |\u003E $\u0027System.IO.Directory.GetParent\u0027\n if parent =. null ()\n then None\n else parent |\u003E directory_info_full_name |\u003E Some\n | TypeScript _ =\u003E fun () =\u003E\n global \u0022type IPathDirname = abstract dirname: path: string -\u003E string\u0022\n inl fs : $\u0027IPathDirname\u0027 = ts.import_all \u0022path\u0022\n ts.emit_expr path $\u0027\u0022!fs.dirname($0)\u0022\u0027 |\u003E Some\n | _ =\u003E fun () =\u003E null ()\n |\u003E optionm\u0027.box\n\n// // ## file_delete\n\ninl file_delete (path : string) : () =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n path |\u003E $\u0027System.IO.File.Delete\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## file_move\n\ninl file_move (old_path : string) (new_path : string) : () =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n $\u0027System.IO.File.Move (!old_path, !new_path)\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## file_exists\n\ninl file_exists (path : string) : bool =\n run_target function\n | Rust (Native) =\u003E fun () =\u003E\n inl path_buf = path |\u003E new_path_buf\n (path_buf |\u003E path_buf_exists) \u0026\u0026 (path_buf |\u003E path_buf_is_file)\n | Fsharp (Native) =\u003E fun () =\u003E\n path |\u003E $\u0027System.IO.File.Exists\u0027\n | TypeScript (Native) =\u003E fun () =\u003E\n global \u0022type IFsExistsSync = abstract existsSync: path: string -\u003E bool\u0022\n inl fs : $\u0027IFsExistsSync\u0027 = ts.import_all \u0022fs\u0022\n ts.emit_expr path $\u0027\u0022!fs.existsSync($0)\u0022\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## directory_delete\n\ninl directory_delete recursive (path : string) : () =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n $\u0027System.IO.Directory.Delete (!path, !recursive)\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## read_all_text_async\n\ninl read_all_text_async (path : string) : _ string =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n path |\u003E $\u0027System.IO.File.ReadAllTextAsync\u0027 |\u003E async.await_task\n | _ =\u003E fun () =\u003E null ()\n\n// // ## file_exists_content\n\ninl file_exists_content path content : _ bool =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n fun () =\u003E\n if path |\u003E file_exists |\u003E not\n then false |\u003E return |\u003E fun x =\u003E $\u0027(*\u0027 : ()\n else\n $\u0027*) else\u0027 : ()\n inl existing_content = path |\u003E read_all_text_async |\u003E async.let\u0027\n content = existing_content |\u003E return |\u003E fun x =\u003E $\u0027(*\u0027 : ()\n |\u003E fun x =\u003E $\u0027*)\u0027 : ()\n |\u003E async.new_async_unit\n | _ =\u003E fun () =\u003E null ()\n\n// // ## write_all_text\n\ninl write_all_text (path : string) (text : string) : () =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n $\u0027System.IO.File.WriteAllText (!path, !text)\u0027\n | _ =\u003E fun () =\u003E null ()\n\n// // ## write_all_text_async\n\ninl write_all_text_async (path : string) (text : string) : _ () =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n $\u0027System.IO.File.WriteAllTextAsync (!path, !text)\u0027 |\u003E async.await_task\n | _ =\u003E fun () =\u003E null ()\n\n// // ## write_all_text_exists\n\ninl write_all_text_exists path contents =\n fun () =\u003E\n inl exists\u0027 = contents |\u003E file_exists_content path |\u003E async.let\u0027\n if not exists\u0027\n then contents |\u003E write_all_text_async path |\u003E async.do\n |\u003E async.new_async\n\n// // ## delete_directory_async\n\ninl delete_directory_async path : _ i64 =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n let rec loop (retry : i64) =\n fun () =\u003E\n try_unit\n fun () =\u003E\n path |\u003E directory_delete true\n retry |\u003E return\n fun ex =\u003E\n if retry % 100i64 = 0 then\n inl ex = ex |\u003E sm\u0027.format_exception\n let get_locals () = $\u0027$\u0022path: {!path |\u003E !get_file_name} / ex: {!ex} / {!get_locals ()}\u0022\u0027 : string\n // trace Debug (fun () -\u003E \u0022delete_directory_async\u0022) getLocals\n console.write_line ($\u0027$\u0022delete_directory_async / {!get_locals ()}\u0022\u0027 : string)\n async.sleep 10i32 |\u003E async.do\n loop (retry \u002B 1) |\u003E async.return_await\n |\u003E async.new_async\n loop 0\n | _ =\u003E fun () =\u003E null ()\n\n// // ## create_temp_directory\n\ninl create_temp_directory () =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n inl temp_folder = create_temp_directory_name ()\n inl result = temp_folder |\u003E create_directory\n\n inl exists\u0027 = result |\u003E directory_info_exists\n if not exists\u0027 then\n inl creation_time = result |\u003E directory_info_creation_time\n inl result = ($\u0027{| Exists = !exists\u0027; CreationTime = !creation_time |}\u0027 : any) |\u003E sm\u0027.format_debug\n inl get_locals () : string =\n $\u0027$\u0022temp_folder: {!temp_folder} / result: {!result} {!get_locals ()}\u0022\u0027\n // trace Debug (fun () =\u003E \u0022createTempDirectory\u0022) get_locals\n console.write_line ($\u0027$\u0022create_temp_directory / {!get_locals ()}\u0022\u0027 : string)\n inl disposable : _ () = new_disposable fun () =\u003E\n temp_folder\n |\u003E delete_directory_async\n |\u003E async.ignore\n |\u003E async.run_synchronously\n temp_folder, disposable\n | _ =\u003E fun () =\u003E null ()\n\n// // ## wait_for_file_access\n\ninl wait_for_file_access access path =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n inl file_access, file_share =\n access\n |\u003E optionm\u0027.default_value (AccessReadWrite, ShareRead)\n let rec loop (retry : i64) : _ i64 =\n fun () =\u003E\n try_unit\n fun () =\u003E\n file_stream\n path\n ModeOpen\n file_access\n file_share\n |\u003E use\n |\u003E ignore\n retry |\u003E return\n fun ex =\u003E\n if retry \u003E 0 \u0026\u0026 retry % 100i64 = 0 then\n inl ex = ex |\u003E sm\u0027.format_exception\n let get_locals () = $\u0027$\u0022path: {!path |\u003E !get_file_name} / retry: {!retry} / ex: {!ex} / {!get_locals ()}\u0022\u0027 : string\n // trace Debug (fun () -\u003E \u0022wait_for_file_access\u0022) getLocals\n console.write_line ($\u0027$\u0022wait_for_file_access / {!get_locals ()}\u0022\u0027 : string)\n async.sleep 10i32 |\u003E async.do\n loop (retry \u002B 1) |\u003E async.return_await\n |\u003E async.new_async\n loop 0\n | _ =\u003E fun () =\u003E null ()\n\ninl wait_for_file_access_read path =\n path\n |\u003E wait_for_file_access (Some (\n AccessRead,\n ShareRead\n ))\n\n// // ## read_all_text_retry_async\n\ninl read_all_text_retry_async full_path : async.async (optionm\u0027.option\u0027 string) =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n let rec loop (retry : i64) =\n fun () =\u003E\n try_unit\n fun () =\u003E\n if retry \u003E 0\n then\n full_path\n |\u003E wait_for_file_access_read\n |\u003E async.run_with_timeout_async 1000\n |\u003E async.ignore\n |\u003E async.do\n full_path |\u003E read_all_text_async |\u003E async.map (Some \u003E\u003E optionm\u0027.box) |\u003E async.return_await\n fun ex =\u003E\n if retry \u003C\u003E 0 then\n inl ex = ex |\u003E sm\u0027.format_exception\n let get_locals () = $\u0027$\u0022retry: {!retry} / ex: {!ex} / {!get_locals ()}\u0022\u0027 : string\n trace Debug (fun () =\u003E $\u0027\u0022read_all_text_retry_async\u0022\u0027 : string) get_locals\n (None : _ string) |\u003E optionm\u0027.box |\u003E return |\u003E fun x =\u003E $\u0027(*\u0027 : ()\n else\n $\u0027*) else\u0027 : ()\n loop (retry \u002B 1) |\u003E async.return_await |\u003E fun x =\u003E $\u0027(*\u0027 : ()\n |\u003E fun x =\u003E $\u0027*)\u0027 : ()\n |\u003E async.new_async\n loop 0\n | _ =\u003E fun () =\u003E null ()\n\n// // ## delete_file_async\n\ninl delete_file_async path : _ i64 =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n let rec loop (retry : i64) =\n fun () =\u003E\n try_unit\n fun () =\u003E\n path |\u003E file_delete\n return retry\n fun ex =\u003E\n if retry % 100 = 0 then\n inl ex = ex |\u003E sm\u0027.format_exception\n let getLocals () = $\u0027$\u0022path: {!path |\u003E !get_file_name} / ex: {ex} / {!get_locals ()}\u0022\u0027\n trace Warning (fun () =\u003E \u0022delete_file_async\u0022) get_locals\n async.sleep 10 |\u003E async.do\n loop (retry \u002B 1) |\u003E async.return_await\n |\u003E async.new_async\n loop 0\n | _ =\u003E fun () =\u003E null ()\n\n// // ## move_file_async\n\ninl move_file_async new_path old_path : _ i64 =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n let rec loop (retry : i64) =\n fun () =\u003E\n try_unit\n fun () =\u003E\n file_move old_path new_path\n return retry\n fun ex =\u003E\n if retry % 100 = 0 then\n let get_locals () =\n inl ex = ex |\u003E sm\u0027.format_exception\n $\u0027$\u0022old_path: {!old_path |\u003E !get_file_name} / new_path: {!new_path |\u003E !get_file_name} / ex: {!ex} / {!get_locals ()}\u0022\u0027 : string\n trace Warning (fun () =\u003E \u0022move_file_async\u0022) get_locals\n async.sleep 10 |\u003E async.do\n loop (retry \u002B 1) |\u003E async.return_await\n |\u003E async.new_async_unit\n loop 0\n | _ =\u003E fun () =\u003E null ()\n\n// // ## find_parent\n\ninl find_parent name is_file root_dir =\n let rec loop dir =\n if dir \u003C/\u003E name |\u003E (if is_file then file_exists else directory_exists)\n then dir\n else\n inl result = dir |\u003E (join directory_get_parent)\n match result |\u003E optionm\u0027.unbox with\n | Some parent =\u003E parent |\u003E loop\n | None =\u003E failwith $\u0027$\u0022\u0022\u0022No parent for {if !is_file then \u0022file\u0022 else \u0022dir\u0022} \\\u0027{!name}\\\u0027 at \\\u0027{!root_dir}\\\u0027\u0022\u0022\u0022\u0027\n loop root_dir\n\n// // ## main\n\ninl main () =\n types ()\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E\n $\u0022let delete_directory_async x = !delete_directory_async x\u0022 : ()\n $\u0022let wait_for_file_access x = !wait_for_file_access x\u0022 : ()\n $\u0022let wait_for_file_access_read x = !wait_for_file_access_read x\u0022 : ()\n $\u0022let read_all_text_async x = !read_all_text_async x\u0022 : ()\n $\u0022let file_exists_content x = !file_exists_content x\u0022 : ()\n $\u0022let write_all_text_async x = !write_all_text_async x\u0022 : ()\n $\u0022let write_all_text_exists x = !write_all_text_exists x\u0022 : ()\n $\u0022let delete_file_async x = !delete_file_async x\u0022 : ()\n $\u0022let move_file_async x = !move_file_async x\u0022 : ()\n $\u0022let read_all_text_retry_async x = !read_all_text_retry_async x\u0022 : ()\n | _ =\u003E fun () =\u003E ()\n $\u0022let create_temp_directory_name () = !create_temp_directory_name ()\u0022 : ()\n $\u0022let create_temp_directory () = !create_temp_directory ()\u0022 : ()\n $\u0022let get_source_directory () = !get_source_directory ()\u0022 : ()\n $\u0022let find_parent x = !find_parent x\u0022 : ()\n inl combine x = (\u003C/\u003E) x\n $\u0022let (\u003C/\u003E) x = !combine x\u0022 : ()\n","uri":"file:///c:/home/git/polyglot/lib/spiral/file_system.spi"}} / result.Length:
00:00:03 #41 [verbose] > Building c:\home\git\polyglot\lib\spiral\file_system.spi
00:00:03 #42 [debug] sendJson / port: 13805 / json: {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/lib/spiral/file_system.spi"}} / result.Length:
00:00:04 #43 [debug] buildFile / takeWhileInclusive / fsxContent: #if FABLE_COMPILER // file_system.types
[<Fable.Core.Erase; Fable.Core.Emit("str")>] type Str = class end
[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>] type base64_DecodeError = class end
[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>] type borsh_io_Error = class end
[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>] type js_sys_JsString = class end
[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>] type serde_json_Error = class end
[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>] type serde_json_Value = class end
[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>] type serde_wasm_bindgen_Error = class end
[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>] type std_ffi_O... / errors: [] / typeErrorCount: 0
00:00:04 #44 [debug] watchWithFilter / Disposing watch stream / filter: FileName, LastWrite
00:00:04 #45 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:04 #46 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:04 #47 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:04 #48 [debug] sendJson / port: 13805 / json: {"FileOpen":{"spiText":"// // # guid\n\n// // ## guid\n\nnominal guid = $\u0022System.Guid\u0022\n\n// // ## new_guid\n\ninl new_guid (x : string) : guid =\n $\u0027\u0060guid !x \u0027\n\n// // ## new_raw_guid\n\ninl new_raw_guid () : guid =\n $\u0022System.Guid.NewGuid ()\u0022\n\n// // ## main\n\ninl main () =\n $\u0022let new_guid x = !new_guid x\u0022 : ()\n $\u0022let new_raw_guid x = !new_raw_guid x\u0022 : ()\n","uri":"file:///c:/home/git/polyglot/lib/spiral/guid.spi"}} / result.Length:
00:00:04 #49 [verbose] > Building c:\home\git\polyglot\lib\spiral\guid.spi
00:00:04 #50 [debug] sendJson / port: 13805 / json: {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/lib/spiral/guid.spi"}} / result.Length:
00:00:04 #51 [debug] buildFile / takeWhileInclusive / fsxContent: let rec closure0 () (v0 : string) : System.Guid =
let v1 : System.Guid = System.Guid v0
v1
and closure1 () () : System.Guid =
let v0 : System.Guid = System.Guid.NewGuid ()
v0
let v0 : (string -> System.Guid) = closure0()
let new_guid x = v0 x
let v1 : (unit -> System.Guid) = closure1()
let new_raw_guid x = v1 x
()
/ errors: [] / typeErrorCount: 0
00:00:04 #52 [debug] watchWithFilter / Disposing watch stream / filter: FileName, LastWrite
00:00:04 #53 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:04 #54 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:04 #55 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:04 #56 [debug] sendJson / port: 13805 / json: {"FileOpen":{"spiText":"// // # sm\u0027\n\nopen rust_operators\n\n// // ## types\n\ninl types () =\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022str\\\u0022)\u003E] type Str = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022base64::DecodeError\\\u0022)\u003E] type base64_DecodeError = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022borsh::io::Error\\\u0022)\u003E] type borsh_io_Error = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022js_sys::JsString\\\u0022)\u003E] type js_sys_JsString = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022serde_json::Error\\\u0022)\u003E] type serde_json_Error = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022serde_json::Value\\\u0022)\u003E] type serde_json_Value = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022serde_wasm_bindgen::Error\\\u0022)\u003E] type serde_wasm_bindgen_Error = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022std::ffi::OsStr\\\u0022)\u003E] type std_ffi_OsStr = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022std::ffi::OsString\\\u0022)\u003E] type std_ffi_OsString = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022std::str::Utf8Error\\\u0022)\u003E] type std_str_Utf8Error = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022std::string::String\\\u0022)\u003E] type std_string_String = class end\u0022\n\nnominal base64_decode_error = $\u0022base64_DecodeError\u0022\nnominal borsh_io_error = $\u0022borsh_io_Error\u0022\nnominal utf8_error = $\u0022std_str_Utf8Error\u0022\nnominal json_value = $\u0022serde_json_Value\u0022\nnominal json_error = $\u0022serde_json_Error\u0022\nnominal serde_wasm_bindgen_error = $\u0022serde_wasm_bindgen_Error\u0022\nnominal js_string = $\u0022js_sys_JsString\u0022\nnominal str = $\u0022Str\u0022\nnominal os_str = $\u0022std_ffi_OsStr\u0022\nnominal os_string = $\u0022std_ffi_OsString\u0022\nnominal std_string = $\u0022std_string_String\u0022\n\n// // ## contains\n\ninl contains (value : string) (s : string) : bool =\n $\u0022!s.Contains !value\u0022\n\n// // ## ends_with\n\ninl ends_with (value : string) (s : string) : bool =\n $\u0022!s.EndsWith !value\u0022\n\n// // ## pad_left\n\ninl pad_left (total_width : i32) (padding_char : char) (s : string) : string =\n $\u0022!s.PadLeft (!total_width, !padding_char)\u0022\n\n// // ## pad_right\n\ninl pad_right (pad : i32) (s : string) : string =\n $\u0022!s.PadRight !pad\u0022\n\n// // ## replace\n\ninl replace (old_value : string) (new_value : string) (s : string) : string =\n $\u0022!s.Replace (!old_value, !new_value)\u0022\n\n// // ## starts_with\n\ninl starts_with (value : string) (s : string) : bool =\n $\u0022!s.StartsWith !value\u0022\n\n// // ## substring\n\ninl substring (start : i32) (len : i32) (str : string) : string =\n $\u0022!str.Substring (!start, !len)\u0022\n\n// // ## to_lower\n\ninl to_lower (input : string) : string =\n $\u0022!input.ToLower ()\u0022\n\n// // ## to_upper\n\ninl to_upper (input : string) : string =\n $\u0022!input.ToUpper ()\u0022\n\n// // ## trim\n\ninl trim (input : string) : string =\n $\u0022!input.Trim ()\u0022\n\n// // ## trim_end\n\ninl trim_end (trim_chars : array_base char) (input : string) : string =\n $\u0022!input.TrimEnd !trim_chars\u0022\n\n// // ## trim_start\n\ninl trim_start (trim_chars : array_base char) (input : string) : string =\n $\u0022!input.TrimStart !trim_chars\u0022\n\n// // ## slice\n\ninl slice from to s : string =\n sm.slice s { from to }\n\n// // ## raw_string_literal\n\ninl raw_string_literal (s : string) : rust.ref\u0027 str =\n !\\($\u0022\\\u0022r#\\\\\\\u0022\\\u0022 \u002B !s \u002B \\\u0022\\\\\\\u0022#\\\u0022\u0022)\n\n// // ## raw_string_literal_static\n\ninl raw_string_literal_static (s : string) : rust.static_ref\u0027 str =\n !\\($\u0022\\\u0022r#\\\\\\\u0022\\\u0022 \u002B !s \u002B \\\u0022\\\\\\\u0022#\\\u0022\u0022)\n\n// // ## include_str\n\ninl include_str (path : string) : rust.ref\u0027 str =\n !\\($\u0027\u0022include_str\\!(\\\\\\\u0022\u0022 \u002B !path \u002B \u0022\\\\\\\u0022)\u0022\u0027)\n\n// // ## as_str\n\ninl as_str (s : string) : rust.ref\u0027 str =\n !\\\\(s, $\u0027\u0022fable_library_rust::String_::LrcStr::as_str(\u0026$0)\u0022\u0027)\n\n// // ## as_os_ref\n\ninl as_os_ref (s : os_string) : rust.ref\u0027 os_str =\n !\\\\(s, $\u0027\u0022$0.as_ref()\u0022\u0027)\n\n// // ## to_os_string\n\ninl to_os_string (s : rust.ref\u0027 os_str) : os_string =\n !\\\\(s, $\u0027\u0022$0.to_os_string()\u0022\u0027)\n\n// // ## os_to_str\n\ninl os_to_str (s : os_string) : optionm\u0027.option\u0027 (rust.ref\u0027 str) =\n !\\\\(s, $\u0027\u0022$0.to_str()\u0022\u0027)\n\n// // ## from_std_string\n\ninl from_std_string (str : std_string) : string =\n !\\\\(str, $\u0027\u0022fable_library_rust::String_::fromString($0)\u0022\u0027)\n\n// // ## ref_to_std_string\n\ninl ref_to_std_string (str : rust.ref\u0027 str) : std_string =\n !\\\\(str, $\u0027\u0022String::from($0)\u0022\u0027)\n\n// // ## to_std_string\n\ninl to_std_string (s : string) : std_string =\n inl s = join s\n s |\u003E as_str |\u003E ref_to_std_string\n\n// // ## as_str_std\n\ninl as_str_std (s : std_string) : rust.ref\u0027 str =\n inl s = join s\n !\\($\u0027\u0022!s.as_str()\u0022\u0027)\n\n// // ## into_boxed_str\n\ninl into_boxed_str (s : std_string) : rust.box str =\n !\\($\u0027\u0022!s.into_boxed_str()\u0022\u0027)\n\n// // ## format\u0027\n\ninl format\u0027 x : std_string =\n !\\\\(x, $\u0027@@$\u0022format\\!(\u0022\u0022{{}}\u0022\u0022, $0)\u0022\u0027)\n\n// // ## format_debug\n\ninl format_debug x : string =\n $\u0027$\u0022%A{!x}\u0022\u0027\n\n// // ## format_debug\u0027\n\ninl format_debug\u0027 x : std_string =\n !\\\\(x, $\u0027@@$\u0022format\\!(\u0022\u0022{{:?}}\u0022\u0022, $0)\u0022\u0027)\n\n// // ## format_pretty\u0027\n\ninl format_pretty\u0027 x : std_string =\n !\\\\(x, $\u0027@@$\u0022format\\!(\u0022\u0022{{:#?}}\u0022\u0022, $0)\u0022\u0027)\n\n// // ## format_exception\n\ninl format_exception (ex : exn) : string =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E $\u0027$\u0022{!ex.GetType ()}: {!ex.Message}\u0022\u0027\n | _ =\u003E fun () =\u003E ex |\u003E format_debug\n\n// // ## obj_to_string\n\ninl obj_to_string x : string =\n x |\u003E $\u0027_.ToString()\u0027\n\n// // ## to_string any\n\ninstance to_string any =\n obj_to_string\n\n// // ## to_string result t u\n\ninstance to_string result t u = fun x =\u003E\n real\n open rust\n typecase (t * u) with\n | string * string =\u003E\n match x with\n | Ok x =\u003E x\n | Error x =\u003E $\u0027\u0022Error: \u0022 \u002B !x \u002B \u0022\u0022\u0027 : string\n | std_string * std_string =\u003E\n match x with\n | Ok x =\u003E from_std_string x\n | Error x =\u003E $\u0027\u0022Error: \u0022 \u002B string !x \u002B \u0022\u0022\u0027 : string\n | _ =\u003E obj_to_string \u0060u x\n\n// // ## serialize\n\ninl serialize forall t. (x : t) : resultm.result\u0027 std_string json_error =\n !\\($\u0027\u0022serde_json::to_string(\u0026!x)\u0022\u0027)\n\n// // ## deserialize\n\ninl deserialize forall t. (json : string) : resultm.result\u0027 t std_string =\n inl json = join json\n inl json = json |\u003E as_str\n !\\($\u0027\u0022serde_json::from_str(\u0026!json)\u0022\u0027)\n |\u003E resultm.map_error\u0027 fun (x : json_error) =\u003E x |\u003E format\u0027\n\n// // ## borsh_deserialize\n\ninl borsh_deserialize forall t. (data : array_base u8) : resultm.result\u0027 t std_string =\n inl data = data |\u003E am\u0027.as_slice\n !\\($\u0027\u0022let mut !data = !data\u0022\u0027)\n inl result = !\\($\u0027\u0022borsh::BorshDeserialize::deserialize(\u0026mut !data)\u0022\u0027)\n result\n |\u003E resultm.map_error\u0027 fun (x : borsh_io_error) =\u003E x |\u003E format\u0027\n\n// // ## deserialize_vec\n\ninl deserialize_vec (value : json_value) : resultm.result\u0027 (am\u0027.vec u8) std_string =\n inl value = join value\n !\\($\u0027\u0022serde_json::from_value(!value)\u0022\u0027)\n |\u003E resultm.map_error\u0027 fun (x : json_error) =\u003E x |\u003E format\u0027\n\n// // ## encode_uri_component\n\ninl encode_uri_component (s : std_string) : js_string =\n !\\($\u0027\u0022js_sys::encode_uri_component(\u0026!s)\u0022\u0027)\n\n// // ## strip_prefix\n\ninl strip_prefix (prefix : char) (s : std_string) : optionm\u0027.option\u0027 (rust.ref\u0027 str) =\n inl s = join s\n !\\($\u0027\u0022!s.strip_prefix(!prefix)\u0022\u0027)\n\n// // ## base64_decode\n\ninl base64_decode (s : std_string) : result std_string std_string =\n fun () =\u003E\n inl s = join s\n inl bytes : resultm.result\u0027 (am\u0027.vec u8) base64_decode_error =\n !\\($\u0027\u0022base64::Engine::decode(\u0026base64::engine::general_purpose::STANDARD, !s)\u0022\u0027)\n inl bytes =\n bytes\n |\u003E resultm.map_error\u0027 format\u0027\n |\u003E resultm.try\u0027\n inl result : resultm.result\u0027 std_string utf8_error =\n !\\($\u0027\u0022std::str::from_utf8(\u0026!bytes).map(String::from)\u0022\u0027)\n result\n |\u003E resultm.map_error\u0027 format\u0027\n |\u003E fun x =\u003E\n join x ()\n |\u003E resultm.unbox\n\n// // ## concat_array_trailing\n\ninl concat_array_trailing (separator : string) (input : a i32 string) =\n (\u0022\u0022, input)\n ||\u003E am.fold fun acc (x : string) =\u003E\n $\u0027!acc \u002B !x \u002B !separator \u002B \u0022\u0022\u0027\n\n// // ## concat_list_trailing\n\ninl concat_list_trailing separator input =\n (\u0022\u0022, input)\n ||\u003E listm.fold fun acc (x : string) =\u003E\n $\u0027!acc \u002B !x \u002B !separator \u002B \u0022\u0022\u0027\n\n// // ## concat_list_heap_trailing\n\ninl concat_list_heap_trailing separator input =\n inl separator = join separator\n inl separator = separator |\u003E as_str\n (\u0022\u0022, input)\n ||\u003E listm.fold fun acc (x : string) =\u003E\n inl acc = acc |\u003E to_std_string\n inl x = x |\u003E as_str\n $\u0027$\u0022{!acc}{!x}{!separator}\u0022\u0027\n\n// // ## concat\n\ninl concat (a : string) (b : seq.seq\u0027 _) : string =\n $\u0022!b |\u003E String.concat !a\u0022\n\n// // ## ellipsis\n\ninl ellipsis (max : i32) (s : string) =\n if sm.length s \u003C= max\n then s\n else s |\u003E slice 0 (max - 1) |\u003E fun x =\u003E $\u0027!x \u002B \u0022...\u0022\u0027\n\n// // ## ellipsis_end\n\ninl ellipsis_end (max : i64) (s : string) =\n inl len = sm.length s\n if len \u003C= max\n then s\n else\n inl half = f64 max / 2\n inl start_half = half |\u003E math.ceil |\u003E i64\n inl end_half = half |\u003E math.floor |\u003E i64\n inl start = s |\u003E slice 0 (start_half - 1)\n inl end = s |\u003E slice (len - end_half) (len - 1)\n (a ;[start; \u0022...\u0022; end] : _ i32 _)\n |\u003E seq.of_array\n |\u003E concat \u0022\u0022\n\n// // ## format_ellipsis\n\ninl format_ellipsis s =\n s\n |\u003E format_debug\n |\u003E ellipsis_end 400\n\n// // ## split\n\ninl split (separator : string) (str : string) : array_base string =\n $\u0022!str.Split !separator\u0022\n\n// // ## split_string\n\ninl split_string (separator : array_base string) (str : string) : array_base string =\n run_target function\n | Fsharp (Native) =\u003E fun () =\u003E $\u0022!str.Split (!separator, System.StringSplitOptions.None)\u0022\n | _ =\u003E fun () =\u003E str |\u003E split ((a separator : _ i32 _) |\u003E seq.of_array |\u003E concat (join \u0022\u0022))\n\n// // ## join\u0027\n\ninl join\u0027 (concat : string) (s : a i32 string) : string =\n $\u0022System.String.Join (!concat, !s)\u0022\n\n// // ## to_char_array\n\ninl to_char_array (str : string) : a i32 char =\n am.init (str |\u003E sm.length) (fun i =\u003E sm.index str i)\n\n// // ## to_char_list\n\ninl to_char_list (str : string) : list char =\n listm.init (str |\u003E sm.length) (fun (i : i64) =\u003E sm.index str i)\n\n// // ## to_string std_string\n\nopen rust\ninstance to_string std_string = from_std_string\n\n// // ## main\n\ninl main () =\n $\u0022let contains x = !contains x\u0022 : ()\n $\u0022let ends_with x = !ends_with x\u0022 : ()\n $\u0022let pad_left x = !pad_left x\u0022 : ()\n $\u0022let pad_right x = !pad_right x\u0022 : ()\n $\u0022let replace x = !replace x\u0022 : ()\n inl slice (a : i32) (b : i32) c = slice a b c\n $\u0022let slice x = !slice x\u0022 : ()\n $\u0022let split x = !split x\u0022 : ()\n $\u0022let split_string x = !split_string x\u0022 : ()\n $\u0022let starts_with x = !starts_with x\u0022 : ()\n $\u0022let substring x = !substring x\u0022 : ()\n $\u0022let to_lower x = !to_lower x\u0022 : ()\n $\u0022let to_upper x = !to_upper x\u0022 : ()\n $\u0022let trim x = !trim x\u0022 : ()\n $\u0022let trim_end x = !trim_end x\u0022 : ()\n $\u0022let trim_start x = !trim_start x\u0022 : ()\n $\u0022let ellipsis x = !ellipsis x\u0022 : ()\n $\u0022let ellipsis_end x = !ellipsis_end x\u0022 : ()\n $\u0022let format_exception x = !format_exception x\u0022 : ()\n $\u0022let concat_array_trailing x = !concat_array_trailing x\u0022 : ()\n inl concat a (b : seq.seq\u0027 string) = concat a b\n $\u0022let concat x = !concat x\u0022 : ()\n $\u0022let join\u0027 x = !join\u0027 x\u0022 : ()\n $\u0022let to_char_array x = !to_char_array x\u0022 : ()\n","uri":"file:///c:/home/git/polyglot/lib/spiral/sm\u0027.spi"}} / result.Length:
00:00:04 #57 [debug] sendJson / port: 13805 / json: {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/lib/spiral/sm\u0027.spi"}} / result.Length:
00:00:04 #58 [verbose] > Building c:\home\git\polyglot\lib\spiral\sm'.spi
00:00:04 #59 [debug] buildFile / takeWhileInclusive / fsxContent: type Mut0 = {mutable l0 : int32; mutable l1 : string}
and Mut1 = {mutable l0 : int32}
let rec closure1 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.Contains v0
v2
and closure0 () (v0 : string) : (string -> bool) =
closure1(v0)
and closure3 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.EndsWith v0
v2
and closure2 () (v0 : string) : (string -> bool) =
closure3(v0)
and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
let v3 : string = v2.PadLeft (v0, v1)
v3
and closure5 (v0 : int32) (v1 : char) : (string -> string) =
closure6(v0, v1)
and closure4 () (v0 : int32) : (char -> (string -> string)) =
closure5(v0)
and closure8 (v0 : int32) (v1 : string) : string =
let v2 : stri... / errors: [] / typeErrorCount: 0
00:00:04 #60 [debug] watchWithFilter / Disposing watch stream / filter: FileName, LastWrite
00:00:06 #61 [debug] runWithTimeoutChildAsync / timeout: 2000
In [ ]:
{ . "$ScriptDir/../lib/math/build.ps1" } | Invoke-Block
00:00:00 #1 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:00 #2 [debug] executeAsync / options: { Command =
"dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" --port 13805 --default-int i32 --default-float f64"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = Some <fun:main@441-47> }
00:00:00 #3 [verbose] > pwd: C:\home\git\polyglot\lib\math
00:00:00 #4 [verbose] > dllPath: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release
00:00:00 #5 [verbose] > targetDir: C:\home\git\polyglot\target/polyglot/spiral_eval
00:00:00 #6 [verbose] > Starting the Spiral Server. It is bound to: http://localhost:13805
00:00:00 #7 [debug] runWithTimeoutChildAsync / timeout: 500
00:00:00 #8 [verbose] waitForPortAccess / port: 13805 / retry: 0
00:00:01 #9 [debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:
00:00:01 #10 [verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0
00:00:01 #11 [verbose] > Server bound to: http://localhost:13805
00:00:01 #12 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 math.dib""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:00:05 #13 [verbose] >
00:00:05 #14 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:05 #15 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:05 #16 [verbose] > │ # math │
00:00:05 #17 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:05 #18 [verbose] >
00:00:05 #19 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:05 #20 [verbose] > open testing
00:00:05 #21 [verbose] > open rust_operators
00:00:08 #22 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\dbfb98f86b21deb6b35fe3a80945f9312d296d3871cb8776c774b57d259aaabf\main.spi
00:00:11 #23 [verbose] >
00:00:11 #24 [verbose] > ╭─[ 5.79s - stdout ]───────────────────────────────────────────────────────────╮
00:00:11 #25 [verbose] > │ () │
00:00:11 #26 [verbose] > │ │
00:00:11 #27 [verbose] > │ │
00:00:11 #28 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:11 #29 [verbose] >
00:00:11 #30 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:11 #31 [verbose] > inl types () =
00:00:11 #32 [verbose] > global "[[<Fable.Core.Erase;
00:00:11 #33 [verbose] > Fable.Core.Emit(\"num_complex::Complex<$0>\")>]] type num_complex_Complex<'T> =
00:00:11 #34 [verbose] > class end"
00:00:11 #35 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"pyo3::types::PyModule\")>]]
00:00:11 #36 [verbose] > type pyo3_types_PyModule = class end"
00:00:11 #37 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"pyo3::Bound<$0>\")>]] type
00:00:11 #38 [verbose] > pyo3_Bound<'T> = class end"
00:00:11 #39 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"pyo3::Python\")>]] type
00:00:11 #40 [verbose] > pyo3_Python = class end"
00:00:11 #41 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"pyo3::PyAny\")>]] type
00:00:11 #42 [verbose] > pyo3_PyAny = class end"
00:00:11 #43 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"pyo3::PyErr\")>]] type
00:00:11 #44 [verbose] > pyo3_PyErr = class end"
00:00:11 #45 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c8f0864954924202c04d677eb5455703cb3b1c12117620b7981f63f9267221bb\main.spi
00:00:11 #46 [verbose] >
00:00:11 #47 [verbose] > ╭─[ 271.94ms - stdout ]────────────────────────────────────────────────────────╮
00:00:11 #48 [verbose] > │ () │
00:00:11 #49 [verbose] > │ │
00:00:11 #50 [verbose] > │ │
00:00:11 #51 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:11 #52 [verbose] >
00:00:11 #53 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:11 #54 [verbose] > inl types () =
00:00:11 #55 [verbose] > rust.types ()
00:00:11 #56 [verbose] > sm'.types ()
00:00:11 #57 [verbose] > types ()
00:00:11 #58 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\7617a3a286862b4ceb770aa451c622eaef1492d1ce601c2db1211ed261f948f6\main.spi
00:00:11 #59 [verbose] >
00:00:11 #60 [verbose] > ╭─[ 256.01ms - stdout ]────────────────────────────────────────────────────────╮
00:00:11 #61 [verbose] > │ () │
00:00:11 #62 [verbose] > │ │
00:00:11 #63 [verbose] > │ │
00:00:11 #64 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:11 #65 [verbose] >
00:00:11 #66 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:11 #67 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:11 #68 [verbose] > │ ## complex │
00:00:11 #69 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:11 #70 [verbose] >
00:00:11 #71 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:11 #72 [verbose] > nominal complex t = $"num_complex_Complex<`t>"
00:00:11 #73 [verbose] > nominal bound t = $"pyo3_Bound<`t>"
00:00:11 #74 [verbose] > nominal python = $"pyo3_Python"
00:00:11 #75 [verbose] > nominal pymodule = $"pyo3_types_PyModule"
00:00:11 #76 [verbose] > nominal pyany = $"pyo3_PyAny"
00:00:11 #77 [verbose] > nominal pyerr = $"pyo3_PyErr"
00:00:11 #78 [verbose] >
00:00:11 #79 [verbose] > inl complex forall t. ((re : t), (im : t)) : complex t =
00:00:11 #80 [verbose] > !\\((re, im), $'"num_complex::Complex::new($0, $1)"')
00:00:12 #81 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\94de0881508799e6879bea0aa98890075d503c37b10fc086131ba628b08fbaa7\main.spi
00:00:12 #82 [verbose] >
00:00:12 #83 [verbose] > ╭─[ 256.16ms - stdout ]────────────────────────────────────────────────────────╮
00:00:12 #84 [verbose] > │ () │
00:00:12 #85 [verbose] > │ │
00:00:12 #86 [verbose] > │ │
00:00:12 #87 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:12 #88 [verbose] >
00:00:12 #89 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:12 #90 [verbose] > // // test
00:00:12 #91 [verbose] > // // rust=
00:00:12 #92 [verbose] >
00:00:12 #93 [verbose] > types ()
00:00:12 #94 [verbose] >
00:00:12 #95 [verbose] > complex (0f64, 0f64)
00:00:12 #96 [verbose] > |> sm'.format'
00:00:12 #97 [verbose] > |> sm'.from_std_string
00:00:12 #98 [verbose] > |> _assert_eq "0+0i"
00:00:12 #99 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f8578f732a65cfae18b4b17be322b3fa7700f9cdad2aa36b7bddd231278f7461\main.spi
00:00:17 #100 [verbose] >
00:00:17 #101 [verbose] > ╭─[ 5.73s - return value ]─────────────────────────────────────────────────────╮
00:00:17 #102 [verbose] > │ .rs output: │
00:00:17 #103 [verbose] > │ "0+0i" │
00:00:17 #104 [verbose] > │ │
00:00:17 #105 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #106 [verbose] >
00:00:17 #107 [verbose] > ╭─[ 5.75s - stdout ]───────────────────────────────────────────────────────────╮
00:00:17 #108 [verbose] > │ │
00:00:17 #109 [verbose] > │ .fsx: │
00:00:17 #110 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Func0<$0>")>] type Func0<'T> = class │
00:00:17 #111 [verbose] > │ end │
00:00:17 #112 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Func1<$0, $1>")>] type Func0<'T, 'U> = │
00:00:17 #113 [verbose] > │ class end │
00:00:17 #114 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Box<$0>")>] type Box<'T> = class end │
00:00:17 #115 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("dyn $0")>] type Dyn<'T> = class end │
00:00:17 #116 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Fn() -> $0")>] type Fn<'T> = class end │
00:00:17 #117 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Fn()")>] type FnUnit = class end │
00:00:17 #118 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("FnOnce() -> $0")>] type FnOnce<'T> = │
00:00:17 #119 [verbose] > │ class end │
00:00:17 #120 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Fn($0, $1)")>] type ActionFn2<'T, 'U> = │
00:00:17 #121 [verbose] > │ class end │
00:00:17 #122 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("impl $0")>] type Impl<'T> = class end │
00:00:17 #123 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("mut $0")>] type Mut<'T> = class end │
00:00:17 #124 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("&$0")>] type Ref<'T> = class end │
00:00:17 #125 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("&'static $0")>] type StaticRef<'T> = │
00:00:17 #126 [verbose] > │ class end │
00:00:17 #127 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("MutCell<$0>")>] type MutCell<'T> = │
00:00:17 #128 [verbose] > │ class end │
00:00:17 #129 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::any::Any")>] type std_any_Any = │
00:00:17 #130 [verbose] > │ class end │
00:00:17 #131 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::cell::RefCell<$0>")>] type │
00:00:17 #132 [verbose] > │ std_cell_RefCell<'T> = class end │
00:00:17 #133 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::pin::Pin<$0>")>] type │
00:00:17 #134 [verbose] > │ std_pin_Pin<'T> = class end │
00:00:17 #135 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::rc::Rc<$0>")>] type std_rc_Rc<'T> │
00:00:17 #136 [verbose] > │ = class end │
00:00:17 #137 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::rc::Weak<$0>")>] type │
00:00:17 #138 [verbose] > │ std_rc_Weak<'T> = class end │
00:00:17 #139 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::sync::Arc<$0>")>] type │
00:00:17 #140 [verbose] > │ std_sync_Arc<'T> = class end │
00:00:17 #141 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("str")>] type Str = class end │
00:00:17 #142 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>] type │
00:00:17 #143 [verbose] > │ base64_DecodeError = class end │
00:00:17 #144 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>] type │
00:00:17 #145 [verbose] > │ borsh_io_Error = class end │
00:00:17 #146 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>] type │
00:00:17 #147 [verbose] > │ js_sys_JsString = class end │
00:00:17 #148 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>] type │
00:00:17 #149 [verbose] > │ serde_json_Error = class end │
00:00:17 #150 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>] type │
00:00:17 #151 [verbose] > │ serde_json_Value = class end │
00:00:17 #152 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>] type │
00:00:17 #153 [verbose] > │ serde_wasm_bindgen_Error = class end │
00:00:17 #154 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>] type std_ffi_OsStr │
00:00:17 #155 [verbose] > │ = class end │
00:00:17 #156 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsString")>] type │
00:00:17 #157 [verbose] > │ std_ffi_OsString = class end │
00:00:17 #158 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::str::Utf8Error")>] type │
00:00:17 #159 [verbose] > │ std_str_Utf8Error = class end │
00:00:17 #160 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::string::String")>] type │
00:00:17 #161 [verbose] > │ std_string_String = class end │
00:00:17 #162 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("num_complex::Complex<$0>")>] type │
00:00:17 #163 [verbose] > │ num_complex_Complex<'T> = class end │
00:00:17 #164 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("pyo3::types::PyModule")>] type │
00:00:17 #165 [verbose] > │ pyo3_types_PyModule = class end │
00:00:17 #166 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("pyo3::Bound<$0>")>] type pyo3_Bound<'T> │
00:00:17 #167 [verbose] > │ = class end │
00:00:17 #168 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("pyo3::Python")>] type pyo3_Python = │
00:00:17 #169 [verbose] > │ class end │
00:00:17 #170 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("pyo3::PyAny")>] type pyo3_PyAny = class │
00:00:17 #171 [verbose] > │ end │
00:00:17 #172 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("pyo3::PyErr")>] type pyo3_PyErr = class │
00:00:17 #173 [verbose] > │ end │
00:00:17 #174 [verbose] > │ let rec method1 (v0 : bool) : bool = │
00:00:17 #175 [verbose] > │ v0 │
00:00:17 #176 [verbose] > │ and method0 () : unit = │
00:00:17 #177 [verbose] > │ let v0 : string = "num_complex::Complex::new($0, $1)" │
00:00:17 #178 [verbose] > │ let v1 : num_complex_Complex<float> = │
00:00:17 #179 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.0, 0.0) v0 │
00:00:17 #180 [verbose] > │ let v2 : string = @$"format!(""{{}}"", $0)" │
00:00:17 #181 [verbose] > │ let v3 : std_string_String = Fable.Core.RustInterop.emitRustExpr v1 v2 │
00:00:17 #182 [verbose] > │ let v4 : string = "fable_library_rust::String_::fromString($0)" │
00:00:17 #183 [verbose] > │ let v5 : string = Fable.Core.RustInterop.emitRustExpr v3 v4 │
00:00:17 #184 [verbose] > │ let v6 : string = $"%A{v5}" │
00:00:17 #185 [verbose] > │ System.Console.WriteLine v6 │
00:00:17 #186 [verbose] > │ let v8 : bool = v5 = "0+0i" │
00:00:17 #187 [verbose] > │ let v10 : bool = │
00:00:17 #188 [verbose] > │ if v8 then │
00:00:17 #189 [verbose] > │ true │
00:00:17 #190 [verbose] > │ else │
00:00:17 #191 [verbose] > │ method1(v8) │
00:00:17 #192 [verbose] > │ let v11 : string = "0+0i" │
00:00:17 #193 [verbose] > │ let v12 : string = $"__expect / actual: %A{v5} / expected: %A{v11}" │
00:00:17 #194 [verbose] > │ let v13 : bool = v10 = false │
00:00:17 #195 [verbose] > │ if v13 then │
00:00:17 #196 [verbose] > │ failwith<unit> v12 │
00:00:17 #197 [verbose] > │ method0() │
00:00:17 #198 [verbose] > │ │
00:00:17 #199 [verbose] > │ │
00:00:17 #200 [verbose] > │ .rs: │
00:00:17 #201 [verbose] > │ #![allow(dead_code,)] │
00:00:17 #202 [verbose] > │ #![allow(non_camel_case_types,)] │
00:00:17 #203 [verbose] > │ #![allow(non_snake_case,)] │
00:00:17 #204 [verbose] > │ #![allow(non_upper_case_globals,)] │
00:00:17 #205 [verbose] > │ #![allow(unreachable_code,)] │
00:00:17 #206 [verbose] > │ #![allow(unused_attributes,)] │
00:00:17 #207 [verbose] > │ #![allow(unused_imports,)] │
00:00:17 #208 [verbose] > │ #![allow(unused_macros,)] │
00:00:17 #209 [verbose] > │ #![allow(unused_parens,)] │
00:00:17 #210 [verbose] > │ #![allow(unused_variables,)] │
00:00:17 #211 [verbose] > │ mod module_ccfa04bf { │
00:00:17 #212 [verbose] > │ pub mod Spiral_eval { │
00:00:17 #213 [verbose] > │ use super::*; │
00:00:17 #214 [verbose] > │ use fable_library_rust::Native_::on_startup; │
00:00:17 #215 [verbose] > │ use fable_library_rust::String_::printfn; │
00:00:17 #216 [verbose] > │ use fable_library_rust::String_::sprintf; │
00:00:17 #217 [verbose] > │ use fable_library_rust::String_::string; │
00:00:17 #218 [verbose] > │ pub fn method1(v0: bool) -> bool { v0 } │
00:00:17 #219 [verbose] > │ pub fn method0() { │
00:00:17 #220 [verbose] > │ let v1: num_complex::Complex<f64> = │
00:00:17 #221 [verbose] > │ num_complex::Complex::new(0.0_f64, 0.0_f64); │
00:00:17 #222 [verbose] > │ let v3: std::string::String = format!("{}", v1); │
00:00:17 #223 [verbose] > │ let v5: string = fable_library_rust::String_::fromString(v3); │
00:00:17 #224 [verbose] > │ let v6: string = sprintf!("{:?}", v5.clone()); │
00:00:17 #225 [verbose] > │ printfn!("{0}", v6); │
00:00:17 #226 [verbose] > │ { │
00:00:17 #227 [verbose] > │ let v8: bool = v5.clone() == string("0+0i"); │
00:00:17 #228 [verbose] > │ if (if v8 { true } else { Spiral_eval::method1(v8) }) == │
00:00:17 #229 [verbose] > │ false │
00:00:17 #230 [verbose] > │ { │
00:00:17 #231 [verbose] > │ panic!("{}", │
00:00:17 #232 [verbose] > │ sprintf!("__expect / actual: {:?} / expected: │
00:00:17 #233 [verbose] > │ {:?}", v5, string("0+0i"))); │
00:00:17 #234 [verbose] > │ } │
00:00:17 #235 [verbose] > │ } │
00:00:17 #236 [verbose] > │ } │
00:00:17 #237 [verbose] > │ on_startup!(Spiral_eval::method0()); │
00:00:17 #238 [verbose] > │ } │
00:00:17 #239 [verbose] > │ } │
00:00:17 #240 [verbose] > │ pub use module_ccfa04bf::*; │
00:00:17 #241 [verbose] > │ │
00:00:17 #242 [verbose] > │ │
00:00:17 #243 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #244 [verbose] >
00:00:17 #245 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:17 #246 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:17 #247 [verbose] > │ ## complex_sin │
00:00:17 #248 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #249 [verbose] >
00:00:17 #250 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:17 #251 [verbose] > inl re forall t. (c : complex t) : t =
00:00:17 #252 [verbose] > inl c = join c
00:00:17 #253 [verbose] > !\($'"!c.re"')
00:00:17 #254 [verbose] >
00:00:17 #255 [verbose] > inl im forall t. (c : complex t) : t =
00:00:17 #256 [verbose] > inl c = join c
00:00:17 #257 [verbose] > !\($'"!c.im"')
00:00:17 #258 [verbose] >
00:00:17 #259 [verbose] > inl complex_unbox forall t. (c : complex t) =
00:00:17 #260 [verbose] > re c, im c
00:00:17 #261 [verbose] >
00:00:17 #262 [verbose] > inl (~.^) c = complex c
00:00:17 #263 [verbose] >
00:00:17 #264 [verbose] > inl complex_eq forall t. (a : complex t) (b : complex t) : bool =
00:00:17 #265 [verbose] > !\($'"!a == !b"')
00:00:17 #266 [verbose] >
00:00:17 #267 [verbose] > inl (.=) a b = complex_eq a b
00:00:17 #268 [verbose] >
00:00:17 #269 [verbose] > instance equable complex t = complex_eq
00:00:17 #270 [verbose] >
00:00:17 #271 [verbose] > inl complex_add forall t. (a : complex t) (b : complex t) : complex t =
00:00:17 #272 [verbose] > !\($'"!a + !b"')
00:00:17 #273 [verbose] >
00:00:17 #274 [verbose] > inl (.+) a b = complex_add a b
00:00:17 #275 [verbose] >
00:00:17 #276 [verbose] > inl complex_sub forall t. (a : complex t) (b : complex t) : complex t =
00:00:17 #277 [verbose] > !\\((a, b), $'"$0 - $1"')
00:00:17 #278 [verbose] >
00:00:17 #279 [verbose] > inl (.-) a b = complex_sub a b
00:00:17 #280 [verbose] >
00:00:17 #281 [verbose] > inl complex_mult forall t. (a : complex t) (b : complex t) : complex t =
00:00:17 #282 [verbose] > !\\((a, b), $'"$0 * $1"')
00:00:17 #283 [verbose] >
00:00:17 #284 [verbose] > inl (.*) a b = complex_mult a b
00:00:17 #285 [verbose] >
00:00:17 #286 [verbose] > inl complex_div forall t. (a : complex t) (b : complex t) : complex t =
00:00:17 #287 [verbose] > !\($'"!a / !b"')
00:00:17 #288 [verbose] >
00:00:17 #289 [verbose] > inl (./) a b = complex_div a b
00:00:17 #290 [verbose] >
00:00:17 #291 [verbose] > inl powc forall t. (s : complex t) (c : complex t) : complex t =
00:00:17 #292 [verbose] > inl c = join c
00:00:17 #293 [verbose] > inl s = join s
00:00:17 #294 [verbose] > !\($'"num_complex::Complex::powc(!c, !s)"')
00:00:17 #295 [verbose] >
00:00:17 #296 [verbose] > inl (.**) a b = powc b a
00:00:17 #297 [verbose] >
00:00:17 #298 [verbose] > inl complex_sin forall t. (c : complex t) : complex t =
00:00:17 #299 [verbose] > !\($'"!c.sin()"')
00:00:17 #300 [verbose] >
00:00:17 #301 [verbose] > inl conj forall t. (c : complex t) : complex t =
00:00:17 #302 [verbose] > !\($'"!c.conj()"')
00:00:18 #303 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5a95c3e15923c6920070293d6716cbb2793842b5c066db481586bd441486b97c\main.spi
00:00:18 #304 [verbose] >
00:00:18 #305 [verbose] > ╭─[ 269.06ms - stdout ]────────────────────────────────────────────────────────╮
00:00:18 #306 [verbose] > │ () │
00:00:18 #307 [verbose] > │ │
00:00:18 #308 [verbose] > │ │
00:00:18 #309 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #310 [verbose] >
00:00:18 #311 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:18 #312 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:18 #313 [verbose] > │ ## zeta │
00:00:18 #314 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #315 [verbose] >
00:00:18 #316 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:18 #317 [verbose] > inl zeta log (gamma : complex f64 -> complex f64) (s : complex f64) : complex
00:00:18 #318 [verbose] > f64 =
00:00:18 #319 [verbose] > inl rec zeta count gamma s =
00:00:18 #320 [verbose] > if log then
00:00:18 #321 [verbose] > !\\(s, $'"println\!(\\\"zeta / count: {:?} / s: {:?}\\\", !count,
00:00:18 #322 [verbose] > $0)"')
00:00:18 #323 [verbose] > if re s > 1 then
00:00:18 #324 [verbose] > (.^(0, 0), (am.init 10000i32 id : a i32 _))
00:00:18 #325 [verbose] > ||> am.fold fun acc n =>
00:00:18 #326 [verbose] > acc .+ (.^(1, 0) ./ (.^(f64 n, 0) .** s))
00:00:18 #327 [verbose] > else
00:00:18 #328 [verbose] > inl gamma_term = gamma (.^(1, 0) .- s)
00:00:18 #329 [verbose] > inl sin_term = .^(pi, 0) .* s ./ .^(2, 0) |> complex_sin
00:00:18 #330 [verbose] > inl one_minus_s = .^(1 - re s, -(im s))
00:00:18 #331 [verbose] > inl mirror_term =
00:00:18 #332 [verbose] > if re one_minus_s <= 1
00:00:18 #333 [verbose] > then .^(0, 0)
00:00:18 #334 [verbose] > else
00:00:18 #335 [verbose] > if count <= 3
00:00:18 #336 [verbose] > then zeta (count + 1) gamma one_minus_s
00:00:18 #337 [verbose] > else one_minus_s
00:00:18 #338 [verbose] > inl reflection_formula =
00:00:18 #339 [verbose] > .^(2, 0) .* (.^(pi, 0) .** s) .* sin_term .* gamma_term .*
00:00:18 #340 [verbose] > mirror_term
00:00:18 #341 [verbose] > reflection_formula
00:00:18 #342 [verbose] > join zeta 0i32 gamma s
00:00:18 #343 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\10cc2e61d8e1c8501ee311ac1aaa7bb5ddb8c7476f64e51b4571b80e485463bd\main.spi
00:00:18 #344 [verbose] >
00:00:18 #345 [verbose] > ╭─[ 261.18ms - stdout ]────────────────────────────────────────────────────────╮
00:00:18 #346 [verbose] > │ () │
00:00:18 #347 [verbose] > │ │
00:00:18 #348 [verbose] > │ │
00:00:18 #349 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #350 [verbose] >
00:00:18 #351 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:18 #352 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:18 #353 [verbose] > │ ## eval │
00:00:18 #354 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #355 [verbose] >
00:00:18 #356 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:18 #357 [verbose] > inl module_from_code (py : python) (code : string) : _ (bound pymodule) _ =
00:00:18 #358 [verbose] > inl py = join py
00:00:18 #359 [verbose] > inl code = code |> sm'.as_str
00:00:18 #360 [verbose] > !\($'"pyo3::types::PyModule::from_code_bound(!py, !code, \\"\\", \\"\\")"')
00:00:18 #361 [verbose] > |> resultm.map_error' fun (x : pyerr) => x |> sm'.format'
00:00:18 #362 [verbose] >
00:00:18 #363 [verbose] > inl use_pyanymethods () =
00:00:18 #364 [verbose] > global "Fable.Core.RustInterop.emitRustExpr () \");\nuse
00:00:18 #365 [verbose] > pyo3::prelude::PyAnyMethods;\n//\""
00:00:18 #366 [verbose] >
00:00:18 #367 [verbose] > inl getattr (attr : string) (module : bound pymodule) : _ (bound pyany) _ =
00:00:18 #368 [verbose] > inl attr = join attr
00:00:18 #369 [verbose] > inl attr = attr |> sm'.as_str
00:00:18 #370 [verbose] > inl module = join module
00:00:18 #371 [verbose] > use_pyanymethods ()
00:00:18 #372 [verbose] > !\($'"!module.getattr(!attr)"')
00:00:18 #373 [verbose] > |> resultm.map_error' fun (x : pyerr) => x |> sm'.format'
00:00:18 #374 [verbose] >
00:00:18 #375 [verbose] > inl call forall t. (args : t) (module : bound pyany) : _ (bound pyany) _ =
00:00:18 #376 [verbose] > inl args = join args
00:00:18 #377 [verbose] > inl module = join module
00:00:18 #378 [verbose] > !\($'"pyo3::prelude::PyAnyMethods::call(&!module, ((*!args).0, *(*!args).1),
00:00:18 #379 [verbose] > None)"')
00:00:18 #380 [verbose] > |> resultm.map_error' fun (x : pyerr) => x |> sm'.format'
00:00:18 #381 [verbose] >
00:00:18 #382 [verbose] > inl extract forall t. (result : bound pyany) : _ t _ =
00:00:18 #383 [verbose] > inl result = join result
00:00:18 #384 [verbose] > use_pyanymethods ()
00:00:18 #385 [verbose] > !\($'"!result.extract()"')
00:00:18 #386 [verbose] > |> resultm.map_error' fun (x : pyerr) => x |> sm'.format'
00:00:18 #387 [verbose] >
00:00:18 #388 [verbose] > inl eval py code (args : pair bool (pair f64 f64)) : _ (_ f64) sm'.std_string =
00:00:18 #389 [verbose] > inl code =
00:00:18 #390 [verbose] > code
00:00:18 #391 [verbose] > |> module_from_code py
00:00:18 #392 [verbose] > |> resultm.unwrap'
00:00:18 #393 [verbose] > inl fn =
00:00:18 #394 [verbose] > code
00:00:18 #395 [verbose] > |> getattr "fn"
00:00:18 #396 [verbose] > |> resultm.unwrap'
00:00:18 #397 [verbose] >
00:00:18 #398 [verbose] > fn
00:00:18 #399 [verbose] > |> call args
00:00:18 #400 [verbose] > |> resultm.try'
00:00:18 #401 [verbose] > |> extract
00:00:18 #402 [verbose] > |> resultm.try'
00:00:18 #403 [verbose] > |> complex
00:00:18 #404 [verbose] > |> Ok
00:00:18 #405 [verbose] > |> resultm.box
00:00:18 #406 [verbose] >
00:00:18 #407 [verbose] > inl call1_ log py s code =
00:00:18 #408 [verbose] > inl code = join (a code : _ i32 _) |> sm'.concat_array_trailing "\n"
00:00:18 #409 [verbose] >
00:00:18 #410 [verbose] > inl s = new_pair (re s) (im s)
00:00:18 #411 [verbose] > inl args = new_pair log s
00:00:18 #412 [verbose] >
00:00:18 #413 [verbose] > eval py code args
00:00:18 #414 [verbose] >
00:00:18 #415 [verbose] > inl call1_ log name py s line =
00:00:18 #416 [verbose] > inl s = join s
00:00:18 #417 [verbose] > join
00:00:18 #418 [verbose] > ;[[
00:00:18 #419 [verbose] > $'$"import sys"'
00:00:18 #420 [verbose] > $'$"import traceback"'
00:00:18 #421 [verbose] > $'$"import re"'
00:00:18 #422 [verbose] > $'$"count = 0"'
00:00:18 #423 [verbose] > $'$"memory_address_pattern = re.compile(r\' at 0x[[0-9a-fA-F]]+\')"'
00:00:18 #424 [verbose] > $'$"def trace_calls(frame, event, arg):"'
00:00:18 #425 [verbose] > $'$" global count"'
00:00:18 #426 [verbose] > $'$" count += 1"'
00:00:18 #427 [verbose] > $'$" if count < 200:"'
00:00:18 #428 [verbose] > $'$" try:"'
00:00:18 #429 [verbose] > $'$" args = {{ k: v for k, v in frame.f_locals.items() if
00:00:18 #430 [verbose] > frame.f_code.co_name \!= \'make_mpc\' and k not in [[\'ctx\']] and not
00:00:18 #431 [verbose] > callable(v) }}"'
00:00:18 #432 [verbose] > $'$" args_str = \', \'.join([[
00:00:18 #433 [verbose] > f\\\"{{k}}={{re.sub(memory_address_pattern, \' at 0x<?>\', repr(v))}}\\\" for k,
00:00:18 #434 [verbose] > v in args.items() ]])"'
00:00:18 #435 [verbose] > $'$" print(f\\\"{{event}}({!name}) / f_code.co_name:
00:00:18 #436 [verbose] > {{frame.f_code.co_name}} / f_locals: {{args_str}} / f_lineno: {{frame.f_lineno}}
00:00:18 #437 [verbose] > / f_code.co_filename:
00:00:18 #438 [verbose] > {{frame.f_code.co_filename.split(\'site-packages\')[[-1]]}} / f_back.f_lineno:
00:00:18 #439 [verbose] > {{ \'\' if frame.f_back is None else frame.f_back.f_lineno }}
00:00:18 #440 [verbose] > f_back.f_code.co_filename: {{ \'\' if frame.f_back is None else
00:00:18 #441 [verbose] > frame.f_back.f_code.co_filename.split(\'site-packages\')[[-1]] }} / arg:
00:00:18 #442 [verbose] > {{re.sub(memory_address_pattern, \' at 0x<?>\', repr(arg))}}\\\", flush=True)"'
00:00:18 #443 [verbose] > $'$" except ValueError as e:"'
00:00:18 #444 [verbose] > $'$" print(f\'{!name} / e: {{e}}\', flush=True)"'
00:00:18 #445 [verbose] > $'$" return trace_calls"'
00:00:18 #446 [verbose] > $'$"import mpmath"'
00:00:18 #447 [verbose] > $'$"def fn(log, s):"'
00:00:18 #448 [verbose] > $'$" global count"'
00:00:18 #449 [verbose] > $'$" if log:"'
00:00:18 #450 [verbose] > $'$" print(f\'{!name} / s: {{s}} / count: {{count}}\',
00:00:18 #451 [verbose] > flush=True)"'
00:00:18 #452 [verbose] > $'$" s = complex(*s)"'
00:00:18 #453 [verbose] > $'$" try:"'
00:00:18 #454 [verbose] > $'$" if log: sys.settrace(trace_calls)"'
00:00:18 #455 [verbose] > line
00:00:18 #456 [verbose] > $'$" if log:"'
00:00:18 #457 [verbose] > $'$" sys.settrace(None)"'
00:00:18 #458 [verbose] > $'$" print(f\'{!name} / result: {{s}} / count:
00:00:18 #459 [verbose] > {{count}}\', flush=True)"'
00:00:18 #460 [verbose] > $'$" except ValueError as e:"'
00:00:18 #461 [verbose] > $'$" if s.real == 1:"'
00:00:18 #462 [verbose] > $'$" s = complex(float(\'inf\'), 0)"'
00:00:18 #463 [verbose] > $'$" return (s.real, s.imag)"'
00:00:18 #464 [verbose] > ]]
00:00:18 #465 [verbose] > |> call1_ log py s
00:00:18 #466 [verbose] >
00:00:18 #467 [verbose] > inl gamma_ log py s =
00:00:18 #468 [verbose] > call1_ log "gamma_" py s $'$" s = mpmath.gamma(s)"'
00:00:18 #469 [verbose] >
00:00:18 #470 [verbose] > inl zeta_ log py s =
00:00:18 #471 [verbose] > call1_ log "zeta_" py s $'$" s = mpmath.zeta(s)"'
00:00:18 #472 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\1beafb1ea5033857f27d0eb49274cd5c95c2a2f402111e314b94c6a3b184b965\main.spi
00:00:18 #473 [verbose] >
00:00:18 #474 [verbose] > ╭─[ 276.12ms - stdout ]────────────────────────────────────────────────────────╮
00:00:18 #475 [verbose] > │ () │
00:00:18 #476 [verbose] > │ │
00:00:18 #477 [verbose] > │ │
00:00:18 #478 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #479 [verbose] >
00:00:18 #480 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:18 #481 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:18 #482 [verbose] > │ ## run_test │
00:00:18 #483 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #484 [verbose] >
00:00:18 #485 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:18 #486 [verbose] > inl run_test log closure_fix (fn : (complex f64 -> complex f64) * (complex f64
00:00:18 #487 [verbose] > -> complex f64) -> ()) =
00:00:18 #488 [verbose] > inl fn_ (py : python) : resultm.result' () pyerr =
00:00:18 #489 [verbose] > inl nan () =
00:00:18 #490 [verbose] > !\($'"f64::NAN"')
00:00:18 #491 [verbose] > inl gamma__ = fun (s : complex f64) =>
00:00:18 #492 [verbose] > inl result = gamma_ log py s
00:00:18 #493 [verbose] > if log then
00:00:18 #494 [verbose] > inl s = join s
00:00:18 #495 [verbose] > !\($'"println\!(\\\"gamma__ / s: {:?} / result: {:?}\\\", !s,
00:00:18 #496 [verbose] > !result)"')
00:00:18 #497 [verbose] > result |> resultm.ok' |> optionm'.unbox |> optionm'.default_value
00:00:18 #498 [verbose] > .^(nan (), nan ())
00:00:18 #499 [verbose] > inl zeta__ = fun (s : complex f64) =>
00:00:18 #500 [verbose] > inl result = zeta_ log py s
00:00:18 #501 [verbose] >
00:00:18 #502 [verbose] > inl z = zeta true gamma__ s
00:00:18 #503 [verbose] >
00:00:18 #504 [verbose] > if log then
00:00:18 #505 [verbose] > inl s = join s
00:00:18 #506 [verbose] > !\($'"println\!(\\\"zeta__ / s: {:?} / result: {:?} / z:
00:00:18 #507 [verbose] > {:?}\\\", !s, !result, !z)"')
00:00:18 #508 [verbose] >
00:00:18 #509 [verbose] > // re result - re x |> abs
00:00:18 #510 [verbose] > // |> _assert_lt 0.001
00:00:18 #511 [verbose] >
00:00:18 #512 [verbose] > // im result - im x |> abs
00:00:18 #513 [verbose] > // |> _assert_lt 0.001
00:00:18 #514 [verbose] >
00:00:18 #515 [verbose] > result |> resultm.ok' |> optionm'.unbox |> optionm'.default_value
00:00:18 #516 [verbose] > .^(nan (), nan ())
00:00:18 #517 [verbose] > join fn (zeta__, gamma__)
00:00:18 #518 [verbose] >
00:00:18 #519 [verbose] > Ok ()
00:00:18 #520 [verbose] > |> resultm.box
00:00:18 #521 [verbose] >
00:00:18 #522 [verbose] > join
00:00:18 #523 [verbose] > !\($'"pyo3::prepare_freethreaded_python()"') : ()
00:00:18 #524 [verbose] >
00:00:18 #525 [verbose] > !\($'"let __result = pyo3::Python::with_gil(|py| -> pyo3::PyResult<()> {
00:00:18 #526 [verbose] > //"')
00:00:18 #527 [verbose] >
00:00:18 #528 [verbose] > let x' = fn_ (!\($'"py"') : python)
00:00:18 #529 [verbose] > inl x' = join x'
00:00:18 #530 [verbose] >
00:00:18 #531 [verbose] > inl closure_fix = 2u8, 1u8
00:00:18 #532 [verbose] > x' |> rust.fix_closure closure_fix
00:00:18 #533 [verbose] >
00:00:18 #534 [verbose] > (!\($'"__result"') : _ () pyerr)
00:00:18 #535 [verbose] > |> resultm.unwrap'
00:00:18 #536 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\60cb034f29db0aa707880c66bc2a81fa6de304bdcf50fe99066307718b6a0a28\main.spi
00:00:19 #537 [verbose] >
00:00:19 #538 [verbose] > ╭─[ 234.64ms - stdout ]────────────────────────────────────────────────────────╮
00:00:19 #539 [verbose] > │ () │
00:00:19 #540 [verbose] > │ │
00:00:19 #541 [verbose] > │ │
00:00:19 #542 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:19 #543 [verbose] >
00:00:19 #544 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:19 #545 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:19 #546 [verbose] > │ ## test_zeta_at_known_values_ │
00:00:19 #547 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:19 #548 [verbose] >
00:00:19 #549 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:19 #550 [verbose] > inl test_zeta_at_known_values_ log = run_test log (3u8, 2u8) fun zeta, gamma =>
00:00:19 #551 [verbose] > ;[[
00:00:19 #552 [verbose] > .^(2, 0), pi ** 2 / 6
00:00:19 #553 [verbose] > .^(-1, 0), -1 / 12
00:00:19 #554 [verbose] > ]]
00:00:19 #555 [verbose] > |> fun x => a x : _ i32 _
00:00:19 #556 [verbose] > |> am.iter fun s, e =>
00:00:19 #557 [verbose] > inl result = zeta s
00:00:19 #558 [verbose] >
00:00:19 #559 [verbose] > result |> im |> _assert_eq 0
00:00:19 #560 [verbose] > re result - e |> abs |> _assert_lt 0.0001
00:00:19 #561 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\fd5fefba53273641104c90da554fd24610fadf039beccf1db1aee723e1700ecb\main.spi
00:00:19 #562 [verbose] >
00:00:19 #563 [verbose] > ╭─[ 248.51ms - stdout ]────────────────────────────────────────────────────────╮
00:00:19 #564 [verbose] > │ () │
00:00:19 #565 [verbose] > │ │
00:00:19 #566 [verbose] > │ │
00:00:19 #567 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:19 #568 [verbose] >
00:00:19 #569 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:19 #570 [verbose] > // // test
00:00:19 #571 [verbose] > // // rust=
00:00:19 #572 [verbose] > // // print_code=false
00:00:19 #573 [verbose] >
00:00:19 #574 [verbose] > types ()
00:00:19 #575 [verbose] > test_zeta_at_known_values_ true
00:00:19 #576 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c781d4d8759e20d2658a8ca5848941870b7ad14357541382e69fab0bc9a8bf43\main.spi
00:00:27 #577 [verbose] >
00:00:27 #578 [verbose] > ╭─[ 8.72s - return value ]─────────────────────────────────────────────────────╮
00:00:27 #579 [verbose] > │ zeta_ / s: (2.0, 0.0) / count: 0 │
00:00:27 #580 [verbose] > │ call(zeta_) / f_code.co_name: zeta / f_locals: s=(2+0j), a=1, derivative=0, │
00:00:27 #581 [verbose] > │ method=None, kwargs={} / f_lineno: 530 / f_code.co_filename: │
00:00:27 #582 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:00:27 #583 [verbose] > │ / arg: None │
00:00:27 #584 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(2+0j), a=1, derivative=0, │
00:00:27 #585 [verbose] > │ method=None, kwargs={} / f_lineno: 532 / f_code.co_filename: │
00:00:27 #586 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:00:27 #587 [verbose] > │ / arg: None │
00:00:27 #588 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(2+0j), a=1, derivative=0, │
00:00:27 #589 [verbose] > │ method=None, kwargs={}, d=0 / f_lineno: 533 / f_code.co_filename: │
00:00:27 #590 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:00:27 #591 [verbose] > │ / arg: None │
00:00:27 #592 [verbose] > │ line(zeta_) / f_code.co_name: z... │
00:00:27 #593 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:27 #594 [verbose] >
00:00:27 #595 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:27 #596 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:27 #597 [verbose] > │ ## test_zeta_at_2_minus2 │
00:00:27 #598 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:27 #599 [verbose] >
00:00:27 #600 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:27 #601 [verbose] > inl test_zeta_at_2_minus2 log = run_test log (6u8, 5u8) fun zeta, gamma =>
00:00:27 #602 [verbose] > inl s = .^(2, -2)
00:00:27 #603 [verbose] > inl result = zeta s
00:00:27 #604 [verbose] >
00:00:27 #605 [verbose] > (re result - 0.8673) |> abs |> _assert_lt 0.001
00:00:27 #606 [verbose] > (im result - 0.2750) |> abs |> _assert_lt 0.001
00:00:28 #607 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\50bd39b9d8610c7d26d812e2e21d86ccf12bbbe89f0bb8fca42dafe52783f7da\main.spi
00:00:28 #608 [verbose] >
00:00:28 #609 [verbose] > ╭─[ 250.34ms - stdout ]────────────────────────────────────────────────────────╮
00:00:28 #610 [verbose] > │ () │
00:00:28 #611 [verbose] > │ │
00:00:28 #612 [verbose] > │ │
00:00:28 #613 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:28 #614 [verbose] >
00:00:28 #615 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:28 #616 [verbose] > // // test
00:00:28 #617 [verbose] > // // rust=
00:00:28 #618 [verbose] > // // print_code=false
00:00:28 #619 [verbose] >
00:00:28 #620 [verbose] > types ()
00:00:28 #621 [verbose] > test_zeta_at_2_minus2 true
00:00:28 #622 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\995c9d4a2cb8e61d947c16deccdf7d65926c4818c476610574852f413f9e5a1e\main.spi
00:00:35 #623 [verbose] >
00:00:35 #624 [verbose] > ╭─[ 7.62s - return value ]─────────────────────────────────────────────────────╮
00:00:35 #625 [verbose] > │ zeta_ / s: (2.0, -2.0) / count: 0 │
00:00:35 #626 [verbose] > │ call(zeta_) / f_code.co_name: zeta / f_locals: s=(2-2j), a=1, derivative=0, │
00:00:35 #627 [verbose] > │ method=None, kwargs={} / f_lineno: 530 / f_code.co_filename: │
00:00:35 #628 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:00:35 #629 [verbose] > │ / arg: None │
00:00:35 #630 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(2-2j), a=1, derivative=0, │
00:00:35 #631 [verbose] > │ method=None, kwargs={} / f_lineno: 532 / f_code.co_filename: │
00:00:35 #632 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:00:35 #633 [verbose] > │ / arg: None │
00:00:35 #634 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(2-2j), a=1, derivative=0, │
00:00:35 #635 [verbose] > │ method=None, kwargs={}, d=0 / f_lineno: 533 / f_code.co_filename: │
00:00:35 #636 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:00:35 #637 [verbose] > │ / arg: None │
00:00:35 #638 [verbose] > │ line(zeta_) / f_code.co_name: ... │
00:00:35 #639 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:35 #640 [verbose] >
00:00:35 #641 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:35 #642 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:35 #643 [verbose] > │ ## test_trivial_zero_at_negative_even___ │
00:00:35 #644 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:35 #645 [verbose] >
00:00:35 #646 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:35 #647 [verbose] > inl test_trivial_zero_at_negative_even___ log = run_test log (2u8, 1u8) fun
00:00:35 #648 [verbose] > zeta, gamma =>
00:00:35 #649 [verbose] > (join listm'.init_series -2f64 -40 -2)
00:00:35 #650 [verbose] > |> listm.iter fun n =>
00:00:35 #651 [verbose] > inl s = .^(n, 0)
00:00:35 #652 [verbose] > inl result = zeta s
00:00:35 #653 [verbose] >
00:00:35 #654 [verbose] > result |> re |> _assert_eq 0
00:00:35 #655 [verbose] > result |> im |> _assert_eq 0
00:00:36 #656 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\36d9bf28854978eccc49c247bab71a54ef8174e117f5dcadc58e8e3521bbd7d5\main.spi
00:00:36 #657 [verbose] >
00:00:36 #658 [verbose] > ╭─[ 229.26ms - stdout ]────────────────────────────────────────────────────────╮
00:00:36 #659 [verbose] > │ () │
00:00:36 #660 [verbose] > │ │
00:00:36 #661 [verbose] > │ │
00:00:36 #662 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:36 #663 [verbose] >
00:00:36 #664 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:36 #665 [verbose] > // // test
00:00:36 #666 [verbose] > // // rust=
00:00:36 #667 [verbose] > // // print_code=false
00:00:36 #668 [verbose] >
00:00:36 #669 [verbose] > types ()
00:00:36 #670 [verbose] > test_trivial_zero_at_negative_even___ true
00:00:36 #671 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3befd6d952e2ab7deb7979efed0ef8f1814fb29bf1b73860608b95c3820d87a5\main.spi
00:00:44 #672 [verbose] >
00:00:44 #673 [verbose] > ╭─[ 8.19s - return value ]─────────────────────────────────────────────────────╮
00:00:44 #674 [verbose] > │ zeta_ / s: (-2.0, 0.0) / count: 0 │
00:00:44 #675 [verbose] > │ call(zeta_) / f_code.co_name: zeta / f_locals: s=(-2+0j), a=1, derivative=0, │
00:00:44 #676 [verbose] > │ method=None, kwargs={} / f_lineno: 530 / f_code.co_filename: │
00:00:44 #677 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:00:44 #678 [verbose] > │ / arg: None │
00:00:44 #679 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(-2+0j), a=1, derivative=0, │
00:00:44 #680 [verbose] > │ method=None, kwargs={} / f_lineno: 532 / f_code.co_filename: │
00:00:44 #681 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:00:44 #682 [verbose] > │ / arg: None │
00:00:44 #683 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(-2+0j), a=1, derivative=0, │
00:00:44 #684 [verbose] > │ method=None, kwargs={}, d=0 / f_lineno: 533 / f_code.co_filename: │
00:00:44 #685 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:00:44 #686 [verbose] > │ / arg: None │
00:00:44 #687 [verbose] > │ line(zeta_) / f_code.co_nam... │
00:00:44 #688 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:44 #689 [verbose] >
00:00:44 #690 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:44 #691 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:44 #692 [verbose] > │ ## test_non_trivial_zero___ │
00:00:44 #693 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:44 #694 [verbose] >
00:00:44 #695 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:44 #696 [verbose] > inl test_non_trivial_zero___ log = run_test log (3u8, 2u8) fun zeta, gamma =>
00:00:44 #697 [verbose] > ;[[
00:00:44 #698 [verbose] > .^(0.5, 14.134725)
00:00:44 #699 [verbose] > .^(0.5, 21.022040)
00:00:44 #700 [verbose] > .^(0.5, 25.010857)
00:00:44 #701 [verbose] > .^(0.5, 30.424876)
00:00:44 #702 [verbose] > .^(0.5, 32.935062)
00:00:44 #703 [verbose] > .^(0.5, 37.586178)
00:00:44 #704 [verbose] > ]]
00:00:44 #705 [verbose] > |> fun x => a x : _ i32 _
00:00:44 #706 [verbose] > |> am.iter fun x =>
00:00:44 #707 [verbose] > inl result = zeta x
00:00:44 #708 [verbose] > result |> re |> abs |> _assert_lt 0.0001
00:00:44 #709 [verbose] > result |> im |> abs |> _assert_lt 0.0001
00:00:44 #710 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e0fdf427ebfe8c84a3a54b0fac6b4ad39a8b5553d642359402615c21b392c2b2\main.spi
00:00:44 #711 [verbose] >
00:00:44 #712 [verbose] > ╭─[ 263.67ms - stdout ]────────────────────────────────────────────────────────╮
00:00:44 #713 [verbose] > │ () │
00:00:44 #714 [verbose] > │ │
00:00:44 #715 [verbose] > │ │
00:00:44 #716 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:44 #717 [verbose] >
00:00:44 #718 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:44 #719 [verbose] > // // test
00:00:44 #720 [verbose] > // // rust=
00:00:44 #721 [verbose] > // // print_code=false
00:00:44 #722 [verbose] >
00:00:44 #723 [verbose] > types ()
00:00:44 #724 [verbose] > test_non_trivial_zero___ true
00:00:44 #725 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2f272a829c8de3479752ea0d06c60e38f3ba66a88a45b648bef9568876b35997\main.spi
00:00:52 #726 [verbose] >
00:00:52 #727 [verbose] > ╭─[ 8.06s - return value ]─────────────────────────────────────────────────────╮
00:00:52 #728 [verbose] > │ zeta_ / s: (0.5, 14.134725) / count: 0 │
00:00:52 #729 [verbose] > │ call(zeta_) / f_code.co_name: zeta / f_locals: s=(0.5+14.134725j), a=1, │
00:00:52 #730 [verbose] > │ derivative=0, method=None, kwargs={} / f_lineno: 530 / f_code.co_filename: │
00:00:52 #731 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:00:52 #732 [verbose] > │ / arg: None │
00:00:52 #733 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(0.5+14.134725j), a=1, │
00:00:52 #734 [verbose] > │ derivative=0, method=None, kwargs={} / f_lineno: 532 / f_code.co_filename: │
00:00:52 #735 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:00:52 #736 [verbose] > │ / arg: None │
00:00:52 #737 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(0.5+14.134725j), a=1, │
00:00:52 #738 [verbose] > │ derivative=0, method=None, kwargs={}, d=0 / f_lineno: 533 / │
00:00:52 #739 [verbose] > │ f_code.co_filename: \mpmath\functions\zeta.py / f_back.f_lineno: 25 / │
00:00:52 #740 [verbose] > │ f_back.f_code.co_filename: / arg: ... │
00:00:52 #741 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:52 #742 [verbose] >
00:00:52 #743 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:52 #744 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:52 #745 [verbose] > │ ## test_real_part_greater_than_one___ │
00:00:52 #746 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:52 #747 [verbose] >
00:00:52 #748 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:52 #749 [verbose] > inl test_real_part_greater_than_one___ log = run_test log (3u8, 2u8) fun zeta,
00:00:52 #750 [verbose] > gamma =>
00:00:52 #751 [verbose] > inl points = ;[[2; 3; 4; 5; 10; 20; 50]]
00:00:52 #752 [verbose] > (a points : _ i32 _)
00:00:52 #753 [verbose] > |> am.iter fun point =>
00:00:52 #754 [verbose] > inl s = .^(point, 0)
00:00:52 #755 [verbose] > inl result = zeta s
00:00:52 #756 [verbose] > result |> re |> _assert_gt 0
00:00:52 #757 [verbose] > result |> im |> _assert_eq 0
00:00:52 #758 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5dcaf2f644ec0b9e24763a5511c4afc964d5d022ed0ca7fe798f84a0b65817f6\main.spi
00:00:52 #759 [verbose] >
00:00:52 #760 [verbose] > ╭─[ 261.43ms - stdout ]────────────────────────────────────────────────────────╮
00:00:52 #761 [verbose] > │ () │
00:00:52 #762 [verbose] > │ │
00:00:52 #763 [verbose] > │ │
00:00:52 #764 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:52 #765 [verbose] >
00:00:52 #766 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:52 #767 [verbose] > // // test
00:00:52 #768 [verbose] > // // rust=
00:00:52 #769 [verbose] > // // print_code=false
00:00:52 #770 [verbose] >
00:00:52 #771 [verbose] > types ()
00:00:52 #772 [verbose] > test_real_part_greater_than_one___ true
00:00:53 #773 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e24f49fbd4c8e1c7f04e3b55c813589dcf26a83258153b537769cfdd5c109dcd\main.spi
00:01:01 #774 [verbose] >
00:01:01 #775 [verbose] > ╭─[ 8.12s - return value ]─────────────────────────────────────────────────────╮
00:01:01 #776 [verbose] > │ zeta_ / s: (2.0, 0.0) / count: 0 │
00:01:01 #777 [verbose] > │ call(zeta_) / f_code.co_name: zeta / f_locals: s=(2+0j), a=1, derivative=0, │
00:01:01 #778 [verbose] > │ method=None, kwargs={} / f_lineno: 530 / f_code.co_filename: │
00:01:01 #779 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:01 #780 [verbose] > │ / arg: None │
00:01:01 #781 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(2+0j), a=1, derivative=0, │
00:01:01 #782 [verbose] > │ method=None, kwargs={} / f_lineno: 532 / f_code.co_filename: │
00:01:01 #783 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:01 #784 [verbose] > │ / arg: None │
00:01:01 #785 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(2+0j), a=1, derivative=0, │
00:01:01 #786 [verbose] > │ method=None, kwargs={}, d=0 / f_lineno: 533 / f_code.co_filename: │
00:01:01 #787 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:01 #788 [verbose] > │ / arg: None │
00:01:01 #789 [verbose] > │ line(zeta_) / f_code.co_name: z... │
00:01:01 #790 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:01 #791 [verbose] >
00:01:01 #792 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:01 #793 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:01 #794 [verbose] > │ ## test_zeta_at_1___ │
00:01:01 #795 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:01 #796 [verbose] >
00:01:01 #797 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:01 #798 [verbose] > inl test_zeta_at_1___ log = run_test log (6u8, 5u8) fun zeta, gamma =>
00:01:01 #799 [verbose] > inl s = .^(1, 0)
00:01:01 #800 [verbose] > inl result = zeta s
00:01:01 #801 [verbose] > result |> re |> _assert_eq limit.max
00:01:01 #802 [verbose] > result |> im |> _assert_eq 0
00:01:01 #803 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\681d0b454f3fc007212a3e16253bdcc6e5a9b727d9e5201275d7a16eb9403ca5\main.spi
00:01:01 #804 [verbose] >
00:01:01 #805 [verbose] > ╭─[ 205.92ms - stdout ]────────────────────────────────────────────────────────╮
00:01:01 #806 [verbose] > │ () │
00:01:01 #807 [verbose] > │ │
00:01:01 #808 [verbose] > │ │
00:01:01 #809 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:01 #810 [verbose] >
00:01:01 #811 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:01 #812 [verbose] > // // test
00:01:01 #813 [verbose] > // // rust=
00:01:01 #814 [verbose] > // // print_code=false
00:01:01 #815 [verbose] >
00:01:01 #816 [verbose] > types ()
00:01:01 #817 [verbose] > test_zeta_at_1___ true
00:01:01 #818 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3373364c4404f323737de7a93aa7ae96b06a911eb9b71f3a495eb58e3eecbc39\main.spi
00:01:08 #819 [verbose] >
00:01:08 #820 [verbose] > ╭─[ 7.36s - return value ]─────────────────────────────────────────────────────╮
00:01:08 #821 [verbose] > │ zeta_ / s: (1.0, 0.0) / count: 0 │
00:01:08 #822 [verbose] > │ call(zeta_) / f_code.co_name: zeta / f_locals: s=(1+0j), a=1, derivative=0, │
00:01:08 #823 [verbose] > │ method=None, kwargs={} / f_lineno: 530 / f_code.co_filename: │
00:01:08 #824 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:08 #825 [verbose] > │ / arg: None │
00:01:08 #826 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(1+0j), a=1, derivative=0, │
00:01:08 #827 [verbose] > │ method=None, kwargs={} / f_lineno: 532 / f_code.co_filename: │
00:01:08 #828 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:08 #829 [verbose] > │ / arg: None │
00:01:08 #830 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(1+0j), a=1, derivative=0, │
00:01:08 #831 [verbose] > │ method=None, kwargs={}, d=0 / f_lineno: 533 / f_code.co_filename: │
00:01:08 #832 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:08 #833 [verbose] > │ / arg: None │
00:01:08 #834 [verbose] > │ line(zeta_) / f_code.co_name: z... │
00:01:08 #835 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:08 #836 [verbose] >
00:01:08 #837 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:08 #838 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:08 #839 [verbose] > │ ## test_symmetry_across_real_axis___ │
00:01:08 #840 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:08 #841 [verbose] >
00:01:08 #842 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:08 #843 [verbose] > inl test_symmetry_across_real_axis___ log = run_test log (8u8, 7u8) fun zeta,
00:01:08 #844 [verbose] > gamma =>
00:01:08 #845 [verbose] > inl s = .^(2, 10)
00:01:08 #846 [verbose] > inl result_positive_im = zeta s
00:01:08 #847 [verbose] > inl result_negative_im = zeta .^(re s, -(im s))
00:01:08 #848 [verbose] > inl conj = result_negative_im |> conj
00:01:08 #849 [verbose] > result_positive_im |> re |> _assert_eq (conj |> re)
00:01:08 #850 [verbose] > result_positive_im |> im |> _assert_eq (conj |> im)
00:01:08 #851 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\db0be26f008672b1a1f0025b5145d93575fc8dca48fe809b0692ffad3598a952\main.spi
00:01:08 #852 [verbose] >
00:01:08 #853 [verbose] > ╭─[ 224.80ms - stdout ]────────────────────────────────────────────────────────╮
00:01:08 #854 [verbose] > │ () │
00:01:08 #855 [verbose] > │ │
00:01:08 #856 [verbose] > │ │
00:01:08 #857 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:08 #858 [verbose] >
00:01:08 #859 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:08 #860 [verbose] > // // test
00:01:08 #861 [verbose] > // // rust=
00:01:08 #862 [verbose] > // // print_code=false
00:01:08 #863 [verbose] >
00:01:08 #864 [verbose] > types ()
00:01:08 #865 [verbose] > test_symmetry_across_real_axis___ true
00:01:09 #866 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\13c751b1b25890ec6c1abb171838126ac5c469b7df59b206f26eed3e3a3e5d9c\main.spi
00:01:16 #867 [verbose] >
00:01:16 #868 [verbose] > ╭─[ 7.28s - return value ]─────────────────────────────────────────────────────╮
00:01:16 #869 [verbose] > │ zeta_ / s: (2.0, 10.0) / count: 0 │
00:01:16 #870 [verbose] > │ call(zeta_) / f_code.co_name: zeta / f_locals: s=(2+10j), a=1, derivative=0, │
00:01:16 #871 [verbose] > │ method=None, kwargs={} / f_lineno: 530 / f_code.co_filename: │
00:01:16 #872 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:16 #873 [verbose] > │ / arg: None │
00:01:16 #874 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(2+10j), a=1, derivative=0, │
00:01:16 #875 [verbose] > │ method=None, kwargs={} / f_lineno: 532 / f_code.co_filename: │
00:01:16 #876 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:16 #877 [verbose] > │ / arg: None │
00:01:16 #878 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(2+10j), a=1, derivative=0, │
00:01:16 #879 [verbose] > │ method=None, kwargs={}, d=0 / f_lineno: 533 / f_code.co_filename: │
00:01:16 #880 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:16 #881 [verbose] > │ / arg: None │
00:01:16 #882 [verbose] > │ line(zeta_) / f_code.co_nam... │
00:01:16 #883 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:16 #884 [verbose] >
00:01:16 #885 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:16 #886 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:16 #887 [verbose] > │ ## test_behavior_near_origin___ │
00:01:16 #888 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:16 #889 [verbose] >
00:01:16 #890 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:16 #891 [verbose] > inl test_behavior_near_origin___ log = run_test log (6u8, 5u8) fun zeta, gamma
00:01:16 #892 [verbose] > =>
00:01:16 #893 [verbose] > inl s = .^(0.01, 0.01)
00:01:16 #894 [verbose] > inl result = zeta s
00:01:16 #895 [verbose] > result |> re |> _assert_lt limit.max
00:01:16 #896 [verbose] > result |> im |> _assert_lt limit.max
00:01:16 #897 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\40bb3a58ea5272b8c26ea468f8de11e68721ad26ada5035a8d4798134eda7ee3\main.spi
00:01:16 #898 [verbose] >
00:01:16 #899 [verbose] > ╭─[ 230.18ms - stdout ]────────────────────────────────────────────────────────╮
00:01:16 #900 [verbose] > │ () │
00:01:16 #901 [verbose] > │ │
00:01:16 #902 [verbose] > │ │
00:01:16 #903 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:16 #904 [verbose] >
00:01:16 #905 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:16 #906 [verbose] > // // test
00:01:16 #907 [verbose] > // // rust=
00:01:16 #908 [verbose] > // // print_code=false
00:01:16 #909 [verbose] >
00:01:16 #910 [verbose] > types ()
00:01:16 #911 [verbose] > test_behavior_near_origin___ true
00:01:16 #912 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\69d313be3213b4dfcc387d224eaa0fe1188e4d4bb08b3ebc49973ed21c45984f\main.spi
00:01:23 #913 [verbose] >
00:01:23 #914 [verbose] > ╭─[ 7.20s - return value ]─────────────────────────────────────────────────────╮
00:01:23 #915 [verbose] > │ zeta_ / s: (0.01, 0.01) / count: 0 │
00:01:23 #916 [verbose] > │ call(zeta_) / f_code.co_name: zeta / f_locals: s=(0.01+0.01j), a=1, │
00:01:23 #917 [verbose] > │ derivative=0, method=None, kwargs={} / f_lineno: 530 / f_code.co_filename: │
00:01:23 #918 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:23 #919 [verbose] > │ / arg: None │
00:01:23 #920 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(0.01+0.01j), a=1, │
00:01:23 #921 [verbose] > │ derivative=0, method=None, kwargs={} / f_lineno: 532 / f_code.co_filename: │
00:01:23 #922 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:23 #923 [verbose] > │ / arg: None │
00:01:23 #924 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(0.01+0.01j), a=1, │
00:01:23 #925 [verbose] > │ derivative=0, method=None, kwargs={}, d=0 / f_lineno: 533 / │
00:01:23 #926 [verbose] > │ f_code.co_filename: \mpmath\functions\zeta.py / f_back.f_lineno: 25 / │
00:01:23 #927 [verbose] > │ f_back.f_code.co_filename: / arg: None │
00:01:23 #928 [verbose] > │ line(zeta_)... │
00:01:23 #929 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:23 #930 [verbose] >
00:01:23 #931 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:23 #932 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:23 #933 [verbose] > │ ## test_imaginary_axis │
00:01:23 #934 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:23 #935 [verbose] >
00:01:23 #936 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:23 #937 [verbose] > inl test_imaginary_axis log = run_test log (3u8, 2u8) fun zeta, gamma =>
00:01:23 #938 [verbose] > (join a ;[[10; 20; 30; 40; 50; 60; 70; 80; 90; 100]] : _ i32 _)
00:01:23 #939 [verbose] > |> am.iter fun s =>
00:01:23 #940 [verbose] > inl s = .^(0, s)
00:01:23 #941 [verbose] > inl result = zeta s
00:01:23 #942 [verbose] > result |> re |> _assert_ne 0
00:01:23 #943 [verbose] > result |> im |> _assert_ne 0
00:01:23 #944 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\d710da2ae36eff93976ecb138e7a1d96d76bd4e50e3161030b78360fb8abe30e\main.spi
00:01:23 #945 [verbose] >
00:01:23 #946 [verbose] > ╭─[ 263.49ms - stdout ]────────────────────────────────────────────────────────╮
00:01:23 #947 [verbose] > │ () │
00:01:23 #948 [verbose] > │ │
00:01:23 #949 [verbose] > │ │
00:01:23 #950 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:23 #951 [verbose] >
00:01:23 #952 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:23 #953 [verbose] > // // test
00:01:23 #954 [verbose] > // // rust=
00:01:23 #955 [verbose] > // // print_code=false
00:01:23 #956 [verbose] >
00:01:23 #957 [verbose] > types ()
00:01:23 #958 [verbose] > test_imaginary_axis true
00:01:24 #959 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\28bbf5b816de2e2b7c9e0da9b6d3aed7383346cbeed4026ea0e50cd21793cf24\main.spi
00:01:31 #960 [verbose] >
00:01:31 #961 [verbose] > ╭─[ 8.01s - return value ]─────────────────────────────────────────────────────╮
00:01:31 #962 [verbose] > │ zeta_ / s: (0.0, 10.0) / count: 0 │
00:01:31 #963 [verbose] > │ call(zeta_) / f_code.co_name: zeta / f_locals: s=10j, a=1, derivative=0, │
00:01:31 #964 [verbose] > │ method=None, kwargs={} / f_lineno: 530 / f_code.co_filename: │
00:01:31 #965 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:31 #966 [verbose] > │ / arg: None │
00:01:31 #967 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=10j, a=1, derivative=0, │
00:01:31 #968 [verbose] > │ method=None, kwargs={} / f_lineno: 532 / f_code.co_filename: │
00:01:31 #969 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:31 #970 [verbose] > │ / arg: None │
00:01:31 #971 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=10j, a=1, derivative=0, │
00:01:31 #972 [verbose] > │ method=None, kwargs={}, d=0 / f_lineno: 533 / f_code.co_filename: │
00:01:31 #973 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:31 #974 [verbose] > │ / arg: None │
00:01:31 #975 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_... │
00:01:31 #976 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:31 #977 [verbose] >
00:01:31 #978 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:31 #979 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:31 #980 [verbose] > │ ## test_critical_strip │
00:01:31 #981 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:31 #982 [verbose] >
00:01:31 #983 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:31 #984 [verbose] > inl test_critical_strip log = run_test log (3u8, 2u8) fun zeta, gamma =>
00:01:31 #985 [verbose] > ;[[
00:01:31 #986 [verbose] > .^(0.5, 14.134725)
00:01:31 #987 [verbose] > .^(0.75, 20.5)
00:01:31 #988 [verbose] > .^(1.25, 30.1)
00:01:31 #989 [verbose] > .^(0.25, 40.0)
00:01:31 #990 [verbose] > .^(1.0, 50.0)
00:01:31 #991 [verbose] > ]]
00:01:31 #992 [verbose] > |> fun x => a x : _ i32 _
00:01:31 #993 [verbose] > |> am.iter fun s =>
00:01:31 #994 [verbose] > inl result = zeta s
00:01:31 #995 [verbose] > result |> re |> _assert_ne 0
00:01:31 #996 [verbose] > result |> im |> _assert_ne 0
00:01:32 #997 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\41748520875dabfe16dfd6fa42aa9813af7b765e7a669107cd17d283feaafd6f\main.spi
00:01:32 #998 [verbose] >
00:01:32 #999 [verbose] > ╭─[ 430.59ms - stdout ]────────────────────────────────────────────────────────╮
00:01:32 #1000 [verbose] > │ () │
00:01:32 #1001 [verbose] > │ │
00:01:32 #1002 [verbose] > │ │
00:01:32 #1003 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:32 #1004 [verbose] >
00:01:32 #1005 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:32 #1006 [verbose] > // // test
00:01:32 #1007 [verbose] > // // rust=
00:01:32 #1008 [verbose] > // // print_code=false
00:01:32 #1009 [verbose] >
00:01:32 #1010 [verbose] > types ()
00:01:32 #1011 [verbose] > test_critical_strip true
00:01:32 #1012 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\3bd7c56ee74de3e0119981e403d610cb951ad8a07e14464ab1a0d4b2385ccd05\main.spi
00:01:40 #1013 [verbose] >
00:01:40 #1014 [verbose] > ╭─[ 7.79s - return value ]─────────────────────────────────────────────────────╮
00:01:40 #1015 [verbose] > │ zeta_ / s: (0.5, 14.134725) / count: 0 │
00:01:40 #1016 [verbose] > │ call(zeta_) / f_code.co_name: zeta / f_locals: s=(0.5+14.134725j), a=1, │
00:01:40 #1017 [verbose] > │ derivative=0, method=None, kwargs={} / f_lineno: 530 / f_code.co_filename: │
00:01:40 #1018 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:40 #1019 [verbose] > │ / arg: None │
00:01:40 #1020 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(0.5+14.134725j), a=1, │
00:01:40 #1021 [verbose] > │ derivative=0, method=None, kwargs={} / f_lineno: 532 / f_code.co_filename: │
00:01:40 #1022 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:40 #1023 [verbose] > │ / arg: None │
00:01:40 #1024 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(0.5+14.134725j), a=1, │
00:01:40 #1025 [verbose] > │ derivative=0, method=None, kwargs={}, d=0 / f_lineno: 533 / │
00:01:40 #1026 [verbose] > │ f_code.co_filename: \mpmath\functions\zeta.py / f_back.f_lineno: 25 / │
00:01:40 #1027 [verbose] > │ f_back.f_code.co_filename: / arg: ... │
00:01:40 #1028 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:40 #1029 [verbose] >
00:01:40 #1030 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:40 #1031 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:40 #1032 [verbose] > │ ## test_reflection_formula_for_specific_value │
00:01:40 #1033 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:40 #1034 [verbose] >
00:01:40 #1035 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:40 #1036 [verbose] > inl test_reflection_formula_for_specific_value log = run_test log (3u8, 2u8) fun
00:01:40 #1037 [verbose] > zeta, gamma =>
00:01:40 #1038 [verbose] > ;[[
00:01:40 #1039 [verbose] > .^(3, 4)
00:01:40 #1040 [verbose] > .^(2.5, -3.5)
00:01:40 #1041 [verbose] > .^(1.5, 2.5)
00:01:40 #1042 [verbose] > .^(0.5, 14.134725)
00:01:40 #1043 [verbose] > ]]
00:01:40 #1044 [verbose] > |> fun x => a x : _ i32 _
00:01:40 #1045 [verbose] > |> am.iter fun s =>
00:01:40 #1046 [verbose] > inl lhs = zeta s
00:01:40 #1047 [verbose] > inl reflection_coefficient =
00:01:40 #1048 [verbose] > (.^(2, 0) .** s)
00:01:40 #1049 [verbose] > .* (.^(pi, 0) .** (s .- .^(1, 0)))
00:01:40 #1050 [verbose] > .* (.^(pi, 0) .* s ./ .^(2, 0) |> complex_sin)
00:01:40 #1051 [verbose] > .* gamma (.^(1, 0) .- s)
00:01:40 #1052 [verbose] >
00:01:40 #1053 [verbose] > inl one_minus_s = .^(1 - re s, -(im s))
00:01:40 #1054 [verbose] > inl rhs = reflection_coefficient .* zeta one_minus_s
00:01:40 #1055 [verbose] >
00:01:40 #1056 [verbose] > re lhs - re rhs |> abs |> _assert_lt 0.0001
00:01:40 #1057 [verbose] > im lhs - im rhs |> abs |> _assert_lt 0.0001
00:01:40 #1058 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\51cc5c9d9e2e5e8e09f160cab15b751d62a375de452e9145180316c10a174ba0\main.spi
00:01:40 #1059 [verbose] >
00:01:40 #1060 [verbose] > ╭─[ 235.93ms - stdout ]────────────────────────────────────────────────────────╮
00:01:40 #1061 [verbose] > │ () │
00:01:40 #1062 [verbose] > │ │
00:01:40 #1063 [verbose] > │ │
00:01:40 #1064 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:40 #1065 [verbose] >
00:01:40 #1066 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:40 #1067 [verbose] > // // test
00:01:40 #1068 [verbose] > // // rust=
00:01:40 #1069 [verbose] > // // print_code=false
00:01:40 #1070 [verbose] >
00:01:40 #1071 [verbose] > types ()
00:01:40 #1072 [verbose] > test_reflection_formula_for_specific_value true
00:01:40 #1073 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\fc345db85b14d4683c70648d94bdef1f3b9f748f0b1f8edfc38b11b54840b525\main.spi
00:01:48 #1074 [verbose] >
00:01:48 #1075 [verbose] > ╭─[ 7.92s - return value ]─────────────────────────────────────────────────────╮
00:01:48 #1076 [verbose] > │ zeta_ / s: (3.0, 4.0) / count: 0 │
00:01:48 #1077 [verbose] > │ call(zeta_) / f_code.co_name: zeta / f_locals: s=(3+4j), a=1, derivative=0, │
00:01:48 #1078 [verbose] > │ method=None, kwargs={} / f_lineno: 530 / f_code.co_filename: │
00:01:48 #1079 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:48 #1080 [verbose] > │ / arg: None │
00:01:48 #1081 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(3+4j), a=1, derivative=0, │
00:01:48 #1082 [verbose] > │ method=None, kwargs={} / f_lineno: 532 / f_code.co_filename: │
00:01:48 #1083 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:48 #1084 [verbose] > │ / arg: None │
00:01:48 #1085 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(3+4j), a=1, derivative=0, │
00:01:48 #1086 [verbose] > │ method=None, kwargs={}, d=0 / f_lineno: 533 / f_code.co_filename: │
00:01:48 #1087 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:48 #1088 [verbose] > │ / arg: None │
00:01:48 #1089 [verbose] > │ line(zeta_) / f_code.co_name: z... │
00:01:48 #1090 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:48 #1091 [verbose] >
00:01:48 #1092 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:48 #1093 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:48 #1094 [verbose] > │ ## test_euler_product_formula │
00:01:48 #1095 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:48 #1096 [verbose] >
00:01:48 #1097 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:48 #1098 [verbose] > inl test_euler_product_formula log = run_test log (3u8, 2u8) fun zeta, gamma =>
00:01:48 #1099 [verbose] > inl s_values = ;[[2; 2.5; 3; 3.5; 4; 4.5; 5]]
00:01:48 #1100 [verbose] > inl primes = ;[[2; 3; 5; 7; 11; 13; 17; 19; 23; 29; 31; 37; 41; 43; 47; 53;
00:01:48 #1101 [verbose] > 59; 61; 67; 71]]
00:01:48 #1102 [verbose] > (a s_values : _ i32 _)
00:01:48 #1103 [verbose] > |> am.iter fun s_re =>
00:01:48 #1104 [verbose] > inl s = .^(s_re, 0)
00:01:48 #1105 [verbose] > inl product =
00:01:48 #1106 [verbose] > (1, (a primes : _ i32 _))
00:01:48 #1107 [verbose] > ||> am.fold fun acc x =>
00:01:48 #1108 [verbose] > acc * 1 / (1 - x ** -s_re)
00:01:48 #1109 [verbose] >
00:01:48 #1110 [verbose] > inl result = zeta s
00:01:48 #1111 [verbose] > re result - product |> abs |> _assert_lt 0.01
00:01:48 #1112 [verbose] > result |> im |> _assert_lt 0.01
00:01:48 #1113 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\5f8e6a65f4e71d4499f3e0a37c266f15602a9caa4e924ad980b5ba49407e710b\main.spi
00:01:48 #1114 [verbose] >
00:01:48 #1115 [verbose] > ╭─[ 234.46ms - stdout ]────────────────────────────────────────────────────────╮
00:01:48 #1116 [verbose] > │ () │
00:01:48 #1117 [verbose] > │ │
00:01:48 #1118 [verbose] > │ │
00:01:48 #1119 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:48 #1120 [verbose] >
00:01:48 #1121 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:48 #1122 [verbose] > // // test
00:01:48 #1123 [verbose] > // // rust=
00:01:48 #1124 [verbose] > // // print_code=false
00:01:48 #1125 [verbose] >
00:01:48 #1126 [verbose] > types ()
00:01:48 #1127 [verbose] > test_euler_product_formula true
00:01:48 #1128 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e79be65ce15b97d805936520f0d45cb76bcfe604c0beb7771a2ea883b1f850b1\main.spi
00:01:56 #1129 [verbose] >
00:01:56 #1130 [verbose] > ╭─[ 7.59s - return value ]─────────────────────────────────────────────────────╮
00:01:56 #1131 [verbose] > │ zeta_ / s: (2.0, 0.0) / count: 0 │
00:01:56 #1132 [verbose] > │ call(zeta_) / f_code.co_name: zeta / f_locals: s=(2+0j), a=1, derivative=0, │
00:01:56 #1133 [verbose] > │ method=None, kwargs={} / f_lineno: 530 / f_code.co_filename: │
00:01:56 #1134 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:56 #1135 [verbose] > │ / arg: None │
00:01:56 #1136 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(2+0j), a=1, derivative=0, │
00:01:56 #1137 [verbose] > │ method=None, kwargs={} / f_lineno: 532 / f_code.co_filename: │
00:01:56 #1138 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:56 #1139 [verbose] > │ / arg: None │
00:01:56 #1140 [verbose] > │ line(zeta_) / f_code.co_name: zeta / f_locals: s=(2+0j), a=1, derivative=0, │
00:01:56 #1141 [verbose] > │ method=None, kwargs={}, d=0 / f_lineno: 533 / f_code.co_filename: │
00:01:56 #1142 [verbose] > │ \mpmath\functions\zeta.py / f_back.f_lineno: 25 / f_back.f_code.co_filename: │
00:01:56 #1143 [verbose] > │ / arg: None │
00:01:56 #1144 [verbose] > │ line(zeta_) / f_code.co_name: z... │
00:01:56 #1145 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:56 #1146 [verbose] >
00:01:56 #1147 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:56 #1148 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:56 #1149 [verbose] > │ ## graph │
00:01:56 #1150 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:56 #1151 [verbose] >
00:01:56 #1152 [verbose] > ── mermaid ─────────────────────────────────────────────────────────────────────
00:01:56 #1153 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:56 #1154 [verbose] > │ <div class="mermaidMarkdownContainer" style="background-color:white"> │
00:01:56 #1155 [verbose] > │ <link rel="stylesheet" │
00:01:56 #1156 [verbose] > │ href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.0/css/all.min. │
00:01:56 #1157 [verbose] > │ css"> │
00:01:56 #1158 [verbose] > │ <div id="506bf8c34c564bc9969a3b5e687e39d6"></div> │
00:01:56 #1159 [verbose] > │ <script type="module"> │
00:01:56 #1160 [verbose] > │ │
00:01:56 #1161 [verbose] > │ import mermaid from │
00:01:56 #1162 [verbose] > │ 'https://cdn.jsdelivr.net/npm/mermaid@10.6.1/dist/mermaid.esm.min.mjs'; │
00:01:56 #1163 [verbose] > │ let renderTarget = │
00:01:56 #1164 [verbose] > │ document.getElementById('506bf8c34c564bc9969a3b5e687e39d6'); │
00:01:56 #1165 [verbose] > │ try { │
00:01:56 #1166 [verbose] > │ const {svg, bindFunctions} = await │
00:01:56 #1167 [verbose] > │ mermaid.mermaidAPI.render( │
00:01:56 #1168 [verbose] > │ 'mermaid_506bf8c34c564bc9969a3b5e687e39d6', │
00:01:56 #1169 [verbose] > │ `graph TD │
00:01:56 #1170 [verbose] > │ zeta("zeta()") --> convert │
00:01:56 #1171 [verbose] > │ zeta --> f["f()"] │
00:01:56 #1172 [verbose] > │ f --> mpc_f["mpc_zeta()"] │
00:01:56 #1173 [verbose] > │ f --> mpf_f["mpf_zeta()"] │
00:01:56 #1174 [verbose] > │ convert --> from_float │
00:01:56 #1175 [verbose] > │ from_float --> from_man_exp │
00:01:56 #1176 [verbose] > │ from_man_exp --> python_bitcount │
00:01:56 #1177 [verbose] > │ python_bitcount --> _normalize │
00:01:56 #1178 [verbose] > │ _normalize --> make_mpc │
00:01:56 #1179 [verbose] > │ make_mpc --> mpc_zeta["mpc_zeta()"] │
00:01:56 #1180 [verbose] > │ mpc_zeta --> mpf_zeta["mpf_zeta()"] │
00:01:56 #1181 [verbose] > │ mpf_zeta --> to_int │
00:01:56 #1182 [verbose] > │ to_int --> mpf_zeta_int["mpf_zeta_int()"] │
00:01:56 #1183 [verbose] > │ mpf_zeta_int --> borwein_coefficients │
00:01:56 #1184 [verbose] > │ borwein_coefficients --> from_man_exp_2("from_man_exp()") │
00:01:56 #1185 [verbose] > │ from_man_exp_2 --> python_bitcount_2("python_bitcount()") │
00:01:56 #1186 [verbose] > │ python_bitcount_2 --> _normalize_2("_normalize()") │
00:01:56 #1187 [verbose] > │ _normalize_2 --> make_mpc_2("make_mpc()") │
00:01:56 #1188 [verbose] > │ make_mpc_2 --> stop_trace │
00:01:56 #1189 [verbose] > │ mpf_zeta_int --> mpf_bernoulli │
00:01:56 #1190 [verbose] > │ mpf_bernoulli --> bernoulli_size │
00:01:56 #1191 [verbose] > │ bernoulli_size --> mpf_rdiv_int │
00:01:56 #1192 [verbose] > │ mpf_rdiv_int --> python_bitcount_3("python_bitcount()") │
00:01:56 #1193 [verbose] > │ python_bitcount_3 --> _normalize1 │
00:01:56 #1194 [verbose] > │ _normalize1 --> from_man_exp_3("from_man_exp()") │
00:01:56 #1195 [verbose] > │ from_man_exp_3 --> _normalize_3("_normalize()") │
00:01:56 #1196 [verbose] > │ _normalize_3 --> mpf_sub │
00:01:56 #1197 [verbose] > │ mpf_sub --> mpf_add │
00:01:56 #1198 [verbose] > │ mpf_add --> mpf_neg │
00:01:56 #1199 [verbose] > │ mpf_neg --> _normalize1_2("_normalize1()") │
00:01:56 #1200 [verbose] > │ _normalize1_2 --> from_int │
00:01:56 #1201 [verbose] > │ from_int --> mpf_div │
00:01:56 #1202 [verbose] > │ mpf_div --> python_bitcount_4("python_bitcount()") │
00:01:56 #1203 [verbose] > │ python_bitcount_4 --> _normalize1_3("_normalize1()") │
00:01:56 #1204 [verbose] > │ _normalize1_3 --> make_mpc_3("make_mpc()") │
00:01:56 #1205 [verbose] > │ make_mpc_3 --> final_stop["stop_trace()"]`); │
00:01:56 #1206 [verbose] > │ renderTarget.innerHTML = svg; │
00:01:56 #1207 [verbose] > │ bindFunctions?.(renderTarget); │
00:01:56 #1208 [verbose] > │ } │
00:01:56 #1209 [verbose] > │ catch (error) { │
00:01:56 #1210 [verbose] > │ console.log(error); │
00:01:56 #1211 [verbose] > │ } │
00:01:56 #1212 [verbose] > │ </script> │
00:01:56 #1213 [verbose] > │ </div> │
00:01:56 #1214 [verbose] > │ │
00:01:56 #1215 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:56 #1216 [verbose] >
00:01:56 #1217 [verbose] > ── mermaid ─────────────────────────────────────────────────────────────────────
00:01:56 #1218 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:56 #1219 [verbose] > │ <div class="mermaidMarkdownContainer" style="background-color:white"> │
00:01:56 #1220 [verbose] > │ <link rel="stylesheet" │
00:01:56 #1221 [verbose] > │ href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.0/css/all.min. │
00:01:56 #1222 [verbose] > │ css"> │
00:01:56 #1223 [verbose] > │ <div id="40d5e0a0152a4ac3964b20bdbb86d21b"></div> │
00:01:56 #1224 [verbose] > │ <script type="module"> │
00:01:56 #1225 [verbose] > │ │
00:01:56 #1226 [verbose] > │ import mermaid from │
00:01:56 #1227 [verbose] > │ 'https://cdn.jsdelivr.net/npm/mermaid@10.6.1/dist/mermaid.esm.min.mjs'; │
00:01:56 #1228 [verbose] > │ let renderTarget = │
00:01:56 #1229 [verbose] > │ document.getElementById('40d5e0a0152a4ac3964b20bdbb86d21b'); │
00:01:56 #1230 [verbose] > │ try { │
00:01:56 #1231 [verbose] > │ const {svg, bindFunctions} = await │
00:01:56 #1232 [verbose] > │ mermaid.mermaidAPI.render( │
00:01:56 #1233 [verbose] > │ 'mermaid_40d5e0a0152a4ac3964b20bdbb86d21b', │
00:01:56 #1234 [verbose] > │ `graph TD │
00:01:56 #1235 [verbose] > │ zeta_rust("zeta() - Rust") --> num_traits("num-traits") │
00:01:56 #1236 [verbose] > │ zeta_rust --> num_bigint("num-bigint") │
00:01:56 #1237 [verbose] > │ zeta_rust --> rust_decimal("rust_decimal for precision") │
00:01:56 #1238 [verbose] > │ zeta_rust --> error_handling("Rust Error Handling") │
00:01:56 #1239 [verbose] > │ │
00:01:56 #1240 [verbose] > │ num_traits --> num_traits_usage("Use for common traits") │
00:01:56 #1241 [verbose] > │ num_bigint --> bigint_operations("Arbitrary-precision arithmetic │
00:01:56 #1242 [verbose] > │ operations") │
00:01:56 #1243 [verbose] > │ rust_decimal --> decimal_operations("High-precision decimal operations") │
00:01:56 #1244 [verbose] > │ error_handling --> result_type("Use Result<T, E> for error handling") │
00:01:56 #1245 [verbose] > │ │
00:01:56 #1246 [verbose] > │ bigint_operations --> convert_rust("convert() - Rust") │
00:01:56 #1247 [verbose] > │ bigint_operations --> normalize_rust("_normalize() - Rust") │
00:01:56 #1248 [verbose] > │ │
00:01:56 #1249 [verbose] > │ convert_rust --> from_float_rust("from_float() - Rust") │
00:01:56 #1250 [verbose] > │ from_float_rust --> from_man_exp_rust("from_man_exp() - Rust") │
00:01:56 #1251 [verbose] > │ from_man_exp_rust --> bitcount_rust("bitcount() - Rust") │
00:01:56 #1252 [verbose] > │ bitcount_rust --> normalize_rust │
00:01:56 #1253 [verbose] > │ normalize_rust --> mpc_zeta_rust("mpc_zeta() - Rust") │
00:01:56 #1254 [verbose] > │ mpc_zeta_rust --> mpf_zeta_rust("mpf_zeta() - Rust") │
00:01:56 #1255 [verbose] > │ mpf_zeta_rust --> to_int_rust("to_int() - Rust") │
00:01:56 #1256 [verbose] > │ to_int_rust --> mpf_zeta_int_rust("mpf_zeta_int() - Rust") │
00:01:56 #1257 [verbose] > │ │
00:01:56 #1258 [verbose] > │ mpf_zeta_int_rust --> borwein_coefficients_rust("borwein_coefficients() │
00:01:56 #1259 [verbose] > │ - Rust") │
00:01:56 #1260 [verbose] > │ borwein_coefficients_rust --> from_man_exp_rust_2("from_man_exp() - │
00:01:56 #1261 [verbose] > │ Rust") │
00:01:56 #1262 [verbose] > │ from_man_exp_rust_2 --> bitcount_rust_2("bitcount() - Rust") │
00:01:56 #1263 [verbose] > │ bitcount_rust_2 --> normalize_rust_2("_normalize() - Rust") │
00:01:56 #1264 [verbose] > │ normalize_rust_2 --> make_mpc_rust("make_mpc() - Rust") │
00:01:56 #1265 [verbose] > │ │
00:01:56 #1266 [verbose] > │ mpf_zeta_int_rust --> mpf_bernoulli_rust("mpf_bernoulli() - Rust") │
00:01:56 #1267 [verbose] > │ mpf_bernoulli_rust --> bernoulli_size_rust("bernoulli_size() - Rust") │
00:01:56 #1268 [verbose] > │ bernoulli_size_rust --> mpf_rdiv_int_rust("mpf_rdiv_int() - Rust") │
00:01:56 #1269 [verbose] > │ mpf_rdiv_int_rust --> bitcount_rust_3("bitcount() - Rust") │
00:01:56 #1270 [verbose] > │ bitcount_rust_3 --> normalize1_rust("_normalize1() - Rust") │
00:01:56 #1271 [verbose] > │ normalize1_rust --> from_man_exp_rust_3("from_man_exp() - Rust") │
00:01:56 #1272 [verbose] > │ from_man_exp_rust_3 --> normalize_rust_3("_normalize() - Rust") │
00:01:56 #1273 [verbose] > │ normalize_rust_3 --> mpf_sub_rust("mpf_sub() - Rust") │
00:01:56 #1274 [verbose] > │ mpf_sub_rust --> mpf_add_rust("mpf_add() - Rust") │
00:01:56 #1275 [verbose] > │ mpf_add_rust --> mpf_neg_rust("mpf_neg() - Rust") │
00:01:56 #1276 [verbose] > │ mpf_neg_rust --> normalize1_rust_2("_normalize1() - Rust") │
00:01:56 #1277 [verbose] > │ normalize1_rust_2 --> from_int_rust("from_int() - Rust") │
00:01:56 #1278 [verbose] > │ from_int_rust --> mpf_div_rust("mpf_div() - Rust") │
00:01:56 #1279 [verbose] > │ mpf_div_rust --> bitcount_rust_4("bitcount() - Rust") │
00:01:56 #1280 [verbose] > │ bitcount_rust_4 --> normalize1_rust_3("_normalize1() - Rust") │
00:01:56 #1281 [verbose] > │ │
00:01:56 #1282 [verbose] > │ style zeta_rust fill:#f9f,stroke:#333,stroke-width:4px │
00:01:56 #1283 [verbose] > │ style num_traits fill:#bbf,stroke:#333,stroke-width:2px │
00:01:56 #1284 [verbose] > │ style num_bigint fill:#bbf,stroke:#333,stroke-width:2px │
00:01:56 #1285 [verbose] > │ style rust_decimal fill:#bbf,stroke:#333,stroke-width:2px │
00:01:56 #1286 [verbose] > │ style error_handling fill:#bbf,stroke:#333,stroke-width:2px │
00:01:56 #1287 [verbose] > │ style bigint_operations fill:#bfb,stroke:#333,stroke-width:2px │
00:01:56 #1288 [verbose] > │ style decimal_operations fill:#bfb,stroke:#333,stroke-width:2px │
00:01:56 #1289 [verbose] > │ style result_type fill:#bfb,stroke:#333,stroke-width:2px`); │
00:01:56 #1290 [verbose] > │ renderTarget.innerHTML = svg; │
00:01:56 #1291 [verbose] > │ bindFunctions?.(renderTarget); │
00:01:56 #1292 [verbose] > │ } │
00:01:56 #1293 [verbose] > │ catch (error) { │
00:01:56 #1294 [verbose] > │ console.log(error); │
00:01:56 #1295 [verbose] > │ } │
00:01:56 #1296 [verbose] > │ </script> │
00:01:56 #1297 [verbose] > │ </div> │
00:01:56 #1298 [verbose] > │ │
00:01:56 #1299 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:56 #1300 [verbose] >
00:01:56 #1301 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:56 #1302 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:56 #1303 [verbose] > │ ## tests │
00:01:56 #1304 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:56 #1305 [verbose] >
00:01:56 #1306 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:56 #1307 [verbose] > inl tests () =
00:01:56 #1308 [verbose] > !\($'"}//"') : ()
00:01:56 #1309 [verbose] >
00:01:56 #1310 [verbose] > !\($'"#[[test]] fn test_zeta_at_known_values_() { //"') : ()
00:01:56 #1311 [verbose] > test_zeta_at_known_values_ false
00:01:56 #1312 [verbose] > !\($'"} #[[test]] fn test_zeta_at_2_minus2() { //"') : ()
00:01:56 #1313 [verbose] > test_zeta_at_2_minus2 false
00:01:56 #1314 [verbose] > !\($'"} #[[test]] fn test_trivial_zero_at_negative_even___() { //"') : ()
00:01:56 #1315 [verbose] > test_trivial_zero_at_negative_even___ false
00:01:56 #1316 [verbose] > !\($'"} #[[test]] fn test_non_trivial_zero___() { //"') : ()
00:01:56 #1317 [verbose] > test_non_trivial_zero___ false
00:01:56 #1318 [verbose] > !\($'"} #[[test]] fn test_real_part_greater_than_one___() { //"') : ()
00:01:56 #1319 [verbose] > test_real_part_greater_than_one___ false
00:01:56 #1320 [verbose] > !\($'"} #[[test]] fn test_zeta_at_1___() { //"') : ()
00:01:56 #1321 [verbose] > test_zeta_at_1___ false
00:01:56 #1322 [verbose] > !\($'"} #[[test]] fn test_symmetry_across_real_axis___() { //"') : ()
00:01:56 #1323 [verbose] > test_symmetry_across_real_axis___ false
00:01:56 #1324 [verbose] > !\($'"} #[[test]] fn test_behavior_near_origin___() { //"') : ()
00:01:56 #1325 [verbose] > test_behavior_near_origin___ false
00:01:56 #1326 [verbose] > !\($'"} #[[test]] fn test_imaginary_axis() { //"') : ()
00:01:56 #1327 [verbose] > test_imaginary_axis false
00:01:56 #1328 [verbose] > !\($'"} #[[test]] fn test_critical_strip() { //"') : ()
00:01:56 #1329 [verbose] > test_critical_strip false
00:01:56 #1330 [verbose] > !\($'"} #[[test]] fn test_reflection_formula_for_specific_value() { //"') :
00:01:56 #1331 [verbose] > ()
00:01:56 #1332 [verbose] > test_reflection_formula_for_specific_value false
00:01:56 #1333 [verbose] > !\($'"} #[[test]] fn test_euler_product_formula() { //"') : ()
00:01:56 #1334 [verbose] > test_euler_product_formula false
00:01:56 #1335 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\71715f6c6d78a9e9d429b30ab3c178078d1e0508af92fe5b5ab764b0e8816880\main.spi
00:01:56 #1336 [verbose] >
00:01:56 #1337 [verbose] > ╭─[ 273.24ms - stdout ]────────────────────────────────────────────────────────╮
00:01:56 #1338 [verbose] > │ () │
00:01:56 #1339 [verbose] > │ │
00:01:56 #1340 [verbose] > │ │
00:01:56 #1341 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:56 #1342 [verbose] >
00:01:56 #1343 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:56 #1344 [verbose] > // // rust=
00:01:56 #1345 [verbose] >
00:01:56 #1346 [verbose] > inl main (_args : array_base string) =
00:01:56 #1347 [verbose] > inl value = 1i32
00:01:56 #1348 [verbose] > console.write_line ($"$\"value: {!value}\"" : string)
00:01:56 #1349 [verbose] > 0i32
00:01:56 #1350 [verbose] >
00:01:56 #1351 [verbose] > inl main () =
00:01:56 #1352 [verbose] > types ()
00:01:56 #1353 [verbose] > $"let tests () = !tests ()" : ()
00:01:56 #1354 [verbose] > $"let main args = !main args" : ()
00:01:56 #1355 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8fcad2fea1f334fff713b886c5df4d6fd51c3be84f414babfc3e658555240cf9\main.spi
00:01:56 #1356 [verbose] >
00:01:56 #1357 [verbose] > ╭─[ 353.77ms - stdout ]────────────────────────────────────────────────────────╮
00:01:56 #1358 [verbose] > │ │
00:01:56 #1359 [verbose] > │ .fsx: │
00:01:56 #1360 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Func0<$0>")>] type Func0<'T> = class │
00:01:56 #1361 [verbose] > │ end │
00:01:56 #1362 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Func1<$0, $1>")>] type Func0<'T, 'U> = │
00:01:56 #1363 [verbose] > │ class end │
00:01:56 #1364 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Box<$0>")>] type Box<'T> = class end │
00:01:56 #1365 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("dyn $0")>] type Dyn<'T> = class end │
00:01:56 #1366 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Fn() -> $0")>] type Fn<'T> = class end │
00:01:56 #1367 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Fn()")>] type FnUnit = class end │
00:01:56 #1368 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("FnOnce() -> $0")>] type FnOnce<'T> = │
00:01:56 #1369 [verbose] > │ class end │
00:01:56 #1370 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("Fn($0, $1)")>] type ActionFn2<'T, 'U> = │
00:01:56 #1371 [verbose] > │ class end │
00:01:56 #1372 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("impl $0")>] type Impl<'T> = class end │
00:01:56 #1373 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("mut $0")>] type Mut<'T> = class end │
00:01:56 #1374 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("&$0")>] type Ref<'T> = class end │
00:01:56 #1375 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("&'static $0")>] type StaticRef<'T> = │
00:01:56 #1376 [verbose] > │ class end │
00:01:56 #1377 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("MutCell<$0>")>] type MutCell<'T> = │
00:01:56 #1378 [verbose] > │ class end │
00:01:56 #1379 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::any::Any")>] type std_any_Any = │
00:01:56 #1380 [verbose] > │ class end │
00:01:56 #1381 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::cell::RefCell<$0>")>] type │
00:01:56 #1382 [verbose] > │ std_cell_RefCell<'T> = class end │
00:01:56 #1383 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::pin::Pin<$0>")>] type │
00:01:56 #1384 [verbose] > │ std_pin_Pin<'T> = class end │
00:01:56 #1385 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::rc::Rc<$0>")>] type std_rc_Rc<'T> │
00:01:56 #1386 [verbose] > │ = class end │
00:01:56 #1387 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::rc::Weak<$0>")>] type │
00:01:56 #1388 [verbose] > │ std_rc_Weak<'T> = class end │
00:01:56 #1389 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::sync::Arc<$0>")>] type │
00:01:56 #1390 [verbose] > │ std_sync_Arc<'T> = class end │
00:01:56 #1391 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("str")>] type Str = class end │
00:01:56 #1392 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>] type │
00:01:56 #1393 [verbose] > │ base64_DecodeError = class end │
00:01:56 #1394 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>] type │
00:01:56 #1395 [verbose] > │ borsh_io_Error = class end │
00:01:56 #1396 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>] type │
00:01:56 #1397 [verbose] > │ js_sys_JsString = class end │
00:01:56 #1398 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>] type │
00:01:56 #1399 [verbose] > │ serde_json_Error = class end │
00:01:56 #1400 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>] type │
00:01:56 #1401 [verbose] > │ serde_json_Value = class end │
00:01:56 #1402 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>] type │
00:01:56 #1403 [verbose] > │ serde_wasm_bindgen_Error = class end │
00:01:56 #1404 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>] type std_ffi_OsStr │
00:01:56 #1405 [verbose] > │ = class end │
00:01:56 #1406 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsString")>] type │
00:01:56 #1407 [verbose] > │ std_ffi_OsString = class end │
00:01:56 #1408 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::str::Utf8Error")>] type │
00:01:56 #1409 [verbose] > │ std_str_Utf8Error = class end │
00:01:56 #1410 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::string::String")>] type │
00:01:56 #1411 [verbose] > │ std_string_String = class end │
00:01:56 #1412 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("num_complex::Complex<$0>")>] type │
00:01:56 #1413 [verbose] > │ num_complex_Complex<'T> = class end │
00:01:56 #1414 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("pyo3::types::PyModule")>] type │
00:01:56 #1415 [verbose] > │ pyo3_types_PyModule = class end │
00:01:56 #1416 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("pyo3::Bound<$0>")>] type pyo3_Bound<'T> │
00:01:56 #1417 [verbose] > │ = class end │
00:01:56 #1418 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("pyo3::Python")>] type pyo3_Python = │
00:01:56 #1419 [verbose] > │ class end │
00:01:56 #1420 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("pyo3::PyAny")>] type pyo3_PyAny = class │
00:01:56 #1421 [verbose] > │ end │
00:01:56 #1422 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("pyo3::PyErr")>] type pyo3_PyErr = class │
00:01:56 #1423 [verbose] > │ end │
00:01:56 #1424 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () "); │
00:01:56 #1425 [verbose] > │ use pyo3::prelude::PyAnyMethods; │
00:01:56 #1426 [verbose] > │ //" │
00:01:56 #1427 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:01:56 #1428 [verbose] > │ and Mut1 = {mutable l0 : int32; mutable l1 : string} │
00:01:56 #1429 [verbose] > │ and Mut2 = {mutable l0 : int32; mutable l1 : num_complex_Complex<float>} │
00:01:56 #1430 [verbose] > │ and [<Struct>] US0 = │
00:01:56 #1431 [verbose] > │ | US0_0 of f0_0 : num_complex_Complex<float> │
00:01:56 #1432 [verbose] > │ | US0_1 │
00:01:56 #1433 [verbose] > │ and UH0 = │
00:01:56 #1434 [verbose] > │ | UH0_0 │
00:01:56 #1435 [verbose] > │ | UH0_1 of float * UH0 │
00:01:56 #1436 [verbose] > │ and Mut3 = {mutable l0 : int32; mutable l1 : float} │
00:01:56 #1437 [verbose] > │ let rec method2 (v0 : int32, v1 : Mut0) : bool = │
00:01:56 #1438 [verbose] > │ let v2 : int32 = v1.l0 │
00:01:56 #1439 [verbose] > │ let v3 : bool = v2 < v0 │
00:01:56 #1440 [verbose] > │ v3 │
00:01:56 #1441 [verbose] > │ and method3 (v0 : num_complex_Complex<float>) : num_complex_Complex<float> = │
00:01:56 #1442 [verbose] > │ v0 │
00:01:56 #1443 [verbose] > │ and method6 (v0 : int32, v1 : Mut1) : bool = │
00:01:56 #1444 [verbose] > │ let v2 : int32 = v1.l0 │
00:01:56 #1445 [verbose] > │ let v3 : bool = v2 < v0 │
00:01:56 #1446 [verbose] > │ v3 │
00:01:56 #1447 [verbose] > │ and method5 (v0 : (string [])) : string = │
00:01:56 #1448 [verbose] > │ let v1 : int32 = v0.Length │
00:01:56 #1449 [verbose] > │ let v2 : string = "" │
00:01:56 #1450 [verbose] > │ let v3 : Mut1 = {l0 = 0; l1 = v2} : Mut1 │
00:01:56 #1451 [verbose] > │ while method6(v1, v3) do │
00:01:56 #1452 [verbose] > │ let v5 : int32 = v3.l0 │
00:01:56 #1453 [verbose] > │ let v6 : string = v3.l1 │
00:01:56 #1454 [verbose] > │ let v7 : string = v0.[int v5] │
00:01:56 #1455 [verbose] > │ let v8 : string = "\n" │
00:01:56 #1456 [verbose] > │ let v9 : string = v6 + v7 + v8 + "" │
00:01:56 #1457 [verbose] > │ let v10 : int32 = v5 + 1 │
00:01:56 #1458 [verbose] > │ v3.l0 <- v10 │
00:01:56 #1459 [verbose] > │ v3.l1 <- v9 │
00:01:56 #1460 [verbose] > │ () │
00:01:56 #1461 [verbose] > │ let v11 : string = v3.l1 │
00:01:56 #1462 [verbose] > │ v11 │
00:01:56 #1463 [verbose] > │ and method7 (v0 : num_complex_Complex<float>) : num_complex_Complex<float> = │
00:01:56 #1464 [verbose] > │ v0 │
00:01:56 #1465 [verbose] > │ and method8 (v0 : num_complex_Complex<float>) : num_complex_Complex<float> = │
00:01:56 #1466 [verbose] > │ v0 │
00:01:56 #1467 [verbose] > │ and method9 (v0 : pyo3_Python) : pyo3_Python = │
00:01:56 #1468 [verbose] > │ v0 │
00:01:56 #1469 [verbose] > │ and closure1 () (v0 : pyo3_PyErr) : std_string_String = │
00:01:56 #1470 [verbose] > │ let v1 : string = @$"format!(""{{}}"", $0)" │
00:01:56 #1471 [verbose] > │ let v2 : std_string_String = Fable.Core.RustInterop.emitRustExpr v0 v1 │
00:01:56 #1472 [verbose] > │ v2 │
00:01:56 #1473 [verbose] > │ and method10 () : (pyo3_PyErr -> std_string_String) = │
00:01:56 #1474 [verbose] > │ closure1() │
00:01:56 #1475 [verbose] > │ and method11 (v0 : Result<pyo3_Bound<pyo3_types_PyModule>, pyo3_PyErr>) : │
00:01:56 #1476 [verbose] > │ Result<pyo3_Bound<pyo3_types_PyModule>, pyo3_PyErr> = │
00:01:56 #1477 [verbose] > │ v0 │
00:01:56 #1478 [verbose] > │ and method12 (v0 : Result<pyo3_Bound<pyo3_types_PyModule>, │
00:01:56 #1479 [verbose] > │ std_string_String>) : Result<pyo3_Bound<pyo3_types_PyModule>, │
00:01:56 #1480 [verbose] > │ std_string_String> = │
00:01:56 #1481 [verbose] > │ v0 │
00:01:56 #1482 [verbose] > │ and method13 () : string = │
00:01:56 #1483 [verbose] > │ let v0 : string = "fn" │
00:01:56 #1484 [verbose] > │ v0 │
00:01:56 #1485 [verbose] > │ and method14 (v0 : pyo3_Bound<pyo3_types_PyModule>) : │
00:01:56 #1486 [verbose] > │ pyo3_Bound<pyo3_types_PyModule> = │
00:01:56 #1487 [verbose] > │ v0 │
00:01:56 #1488 [verbose] > │ and closure2 () (v0 : pyo3_PyErr) : std_string_String = │
00:01:56 #1489 [verbose] > │ let v1 : string = @$"format!(""{{}}"", $0)" │
00:01:56 #1490 [verbose] > │ let v2 : std_string_String = Fable.Core.RustInterop.emitRustExpr v0 v1 │
00:01:56 #1491 [verbose] > │ v2 │
00:01:56 #1492 [verbose] > │ and method15 () : (pyo3_PyErr -> std_string_String) = │
00:01:56 #1493 [verbose] > │ closure2() │
00:01:56 #1494 [verbose] > │ and method16 (v0 : Result<pyo3_Bound<pyo3_PyAny>, pyo3_PyErr>) : │
00:01:56 #1495 [verbose] > │ Result<pyo3_Bound<pyo3_PyAny>, pyo3_PyErr> = │
00:01:56 #1496 [verbose] > │ v0 │
00:01:56 #1497 [verbose] > │ and method17 (v0 : Result<pyo3_Bound<pyo3_PyAny>, std_string_String>) : │
00:01:56 #1498 [verbose] > │ Result<pyo3_Bound<pyo3_PyAny>, std_string_String> = │
00:01:56 #1499 [verbose] > │ v0 │
00:01:56 #1500 [verbose] > │ and method18 (v0 : (bool * (float * float))) : (bool * (float * float)) = │
00:01:56 #1501 [verbose] > │ v0 │
00:01:56 #1502 [verbose] > │ and method19 (v0 : pyo3_Bound<pyo3_PyAny>) : pyo3_Bound<pyo3_PyAny> = │
00:01:56 #1503 [verbose] > │ v0 │
00:01:56 #1504 [verbose] > │ and closure3 () (v0 : pyo3_PyErr) : std_string_String = │
00:01:56 #1505 [verbose] > │ let v1 : string = @$"format!(""{{}}"", $0)" │
00:01:56 #1506 [verbose] > │ let v2 : std_string_String = Fable.Core.RustInterop.emitRustExpr v0 v1 │
00:01:56 #1507 [verbose] > │ v2 │
00:01:56 #1508 [verbose] > │ and method20 () : (pyo3_PyErr -> std_string_String) = │
00:01:56 #1509 [verbose] > │ closure3() │
00:01:56 #1510 [verbose] > │ and method21 (v0 : pyo3_Bound<pyo3_PyAny>) : pyo3_Bound<pyo3_PyAny> = │
00:01:56 #1511 [verbose] > │ v0 │
00:01:56 #1512 [verbose] > │ and closure4 () (v0 : pyo3_PyErr) : std_string_String = │
00:01:56 #1513 [verbose] > │ let v1 : string = @$"format!(""{{}}"", $0)" │
00:01:56 #1514 [verbose] > │ let v2 : std_string_String = Fable.Core.RustInterop.emitRustExpr v0 v1 │
00:01:56 #1515 [verbose] > │ v2 │
00:01:56 #1516 [verbose] > │ and method22 () : (pyo3_PyErr -> std_string_String) = │
00:01:56 #1517 [verbose] > │ closure4() │
00:01:56 #1518 [verbose] > │ and method23 (v0 : Result<struct (float * float), pyo3_PyErr>) : │
00:01:56 #1519 [verbose] > │ Result<struct (float * float), pyo3_PyErr> = │
00:01:56 #1520 [verbose] > │ v0 │
00:01:56 #1521 [verbose] > │ and method4 (v0 : pyo3_Python, v1 : string, v2 : num_complex_Complex<float>) │
00:01:56 #1522 [verbose] > │ : Result<num_complex_Complex<float>, std_string_String> = │
00:01:56 #1523 [verbose] > │ let v3 : string = $"import sys" │
00:01:56 #1524 [verbose] > │ let v4 : string = $"import traceback" │
00:01:56 #1525 [verbose] > │ let v5 : string = $"import re" │
00:01:56 #1526 [verbose] > │ let v6 : string = $"count = 0" │
00:01:56 #1527 [verbose] > │ let v7 : string = $"memory_address_pattern = re.compile(r' at 0x[ │
00:01:56 #1528 [verbose] > │ 0-9a-fA-F]+')" │
00:01:56 #1529 [verbose] > │ let v8 : string = $"def trace_calls(frame, event, arg):" │
00:01:56 #1530 [verbose] > │ let v9 : string = $" global count" │
00:01:56 #1531 [verbose] > │ let v10 : string = $" count += 1" │
00:01:56 #1532 [verbose] > │ let v11 : string = $" if count < 200:" │
00:01:56 #1533 [verbose] > │ let v12 : string = $" try:" │
00:01:56 #1534 [verbose] > │ let v13 : string = $" args = {{ k: v for k, v in │
00:01:56 #1535 [verbose] > │ frame.f_locals.items() if frame.f_code.co_name != 'make_mpc' and k not in [ │
00:01:56 #1536 [verbose] > │ 'ctx'] and not callable(v) }}" │
00:01:56 #1537 [verbose] > │ let v14 : string = $" args_str = ', '.join([ │
00:01:56 #1538 [verbose] > │ f\"{{k}}={{re.sub(memory_address_pattern, ' at 0x<?>', repr(v))}}\" for k, v │
00:01:56 #1539 [verbose] > │ in args.items() ])" │
00:01:56 #1540 [verbose] > │ let v15 : string = "zeta_" │
00:01:56 #1541 [verbose] > │ let v16 : string = $" print(f\"{{event}}({v15}) / │
00:01:56 #1542 [verbose] > │ f_code.co_name: {{frame.f_code.co_name}} / f_locals: {{args_str}} / │
00:01:56 #1543 [verbose] > │ f_lineno: {{frame.f_lineno}} / f_code.co_filename: │
00:01:56 #1544 [verbose] > │ {{frame.f_code.co_filename.split('site-packages')[-1]}} / f_back.f_lineno: │
00:01:56 #1545 [verbose] > │ {{ '' if frame.f_back is None else frame.f_back.f_lineno }} / │
00:01:56 #1546 [verbose] > │ f_back.f_code.co_filename: {{ '' if frame.f_back is None else │
00:01:56 #1547 [verbose] > │ frame.f_back.f_code.co_filename.split('site-packages')[-1] }} / arg: │
00:01:56 #1548 [verbose] > │ {{re.sub(memory_address_pattern, ' at 0x<?>', repr(arg))}}\", flush=True)" │
00:01:56 #1549 [verbose] > │ let v17 : string = $" except ValueError as e:" │
00:01:56 #1550 [verbose] > │ let v18 : string = $" print(f'{v15} / e: {{e}}', flush=True)" │
00:01:56 #1551 [verbose] > │ let v19 : string = $" return trace_calls" │
00:01:56 #1552 [verbose] > │ let v20 : string = $"import mpmath" │
00:01:56 #1553 [verbose] > │ let v21 : string = $"def fn(log, s):" │
00:01:56 #1554 [verbose] > │ let v22 : string = $" global count" │
00:01:56 #1555 [verbose] > │ let v23 : string = $" if log:" │
00:01:56 #1556 [verbose] > │ let v24 : string = $" print(f'{v15} / s: {{s}} / count: │
00:01:56 #1557 [verbose] > │ {{count}}', flush=True)" │
00:01:56 #1558 [verbose] > │ let v25 : string = $" s = complex(*s)" │
00:01:56 #1559 [verbose] > │ let v26 : string = $" try:" │
00:01:56 #1560 [verbose] > │ let v27 : string = $" if log: sys.settrace(trace_calls)" │
00:01:56 #1561 [verbose] > │ let v28 : string = $" if log:" │
00:01:56 #1562 [verbose] > │ let v29 : string = $" sys.settrace(None)" │
00:01:56 #1563 [verbose] > │ let v30 : string = $" print(f'{v15} / result: {{s}} / count: │
00:01:56 #1564 [verbose] > │ {{count}}', flush=True)" │
00:01:56 #1565 [verbose] > │ let v31 : string = $" except ValueError as e:" │
00:01:56 #1566 [verbose] > │ let v32 : string = $" if s.real == 1:" │
00:01:56 #1567 [verbose] > │ let v33 : string = $" s = complex(float('inf'), 0)" │
00:01:56 #1568 [verbose] > │ let v34 : string = $" return (s.real, s.imag)" │
00:01:56 #1569 [verbose] > │ let v35 : (string []) = [|v3; v4; v5; v6; v7; v8; v9; v10; v11; v12; │
00:01:56 #1570 [verbose] > │ v13; v14; v16; v17; v18; v19; v20; v21; v22; v23; v24; v25; v26; v27; v1; │
00:01:56 #1571 [verbose] > │ v28; v29; v30; v31; v32; v33; v34|] │
00:01:57 #1572 [verbose] > │ let v36 : string = method5(v35) │
00:01:57 #1573 [verbose] > │ let v37 : num_complex_Complex<float> = method7(v2) │
00:01:57 #1574 [verbose] > │ let v38 : string = "v37.re" │
00:01:57 #1575 [verbose] > │ let v39 : float = Fable.Core.RustInterop.emitRustExpr () v38 │
00:01:57 #1576 [verbose] > │ let v40 : num_complex_Complex<float> = method8(v2) │
00:01:57 #1577 [verbose] > │ let v41 : string = "v40.im" │
00:01:57 #1578 [verbose] > │ let v42 : float = Fable.Core.RustInterop.emitRustExpr () v41 │
00:01:57 #1579 [verbose] > │ let v43 : (float * float) = v39, v42 │
00:01:57 #1580 [verbose] > │ let v44 : (bool * (float * float)) = false, v43 │
00:01:57 #1581 [verbose] > │ let v45 : pyo3_Python = method9(v0) │
00:01:57 #1582 [verbose] > │ let v46 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:01:57 #1583 [verbose] > │ let v47 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v36 v46 │
00:01:57 #1584 [verbose] > │ let v48 : string = "pyo3::types::PyModule::from_code_bound(v45, v47, │
00:01:57 #1585 [verbose] > │ \"\", \"\")" │
00:01:57 #1586 [verbose] > │ let v49 : Result<pyo3_Bound<pyo3_types_PyModule>, pyo3_PyErr> = │
00:01:57 #1587 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v48 │
00:01:57 #1588 [verbose] > │ let v50 : (pyo3_PyErr -> std_string_String) = method10() │
00:01:57 #1589 [verbose] > │ let v51 : Result<pyo3_Bound<pyo3_types_PyModule>, pyo3_PyErr> = │
00:01:57 #1590 [verbose] > │ method11(v49) │
00:01:57 #1591 [verbose] > │ let v52 : string = "v51.map_err(|x| v50(x))" │
00:01:57 #1592 [verbose] > │ let v53 : Result<pyo3_Bound<pyo3_types_PyModule>, std_string_String> = │
00:01:57 #1593 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v52 │
00:01:57 #1594 [verbose] > │ let v54 : Result<pyo3_Bound<pyo3_types_PyModule>, std_string_String> = │
00:01:57 #1595 [verbose] > │ method12(v53) │
00:01:57 #1596 [verbose] > │ let v55 : string = "v54.unwrap()" │
00:01:57 #1597 [verbose] > │ let v56 : pyo3_Bound<pyo3_types_PyModule> = │
00:01:57 #1598 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v55 │
00:01:57 #1599 [verbose] > │ let v57 : string = method13() │
00:01:57 #1600 [verbose] > │ let v58 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:01:57 #1601 [verbose] > │ let v59 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v57 v58 │
00:01:57 #1602 [verbose] > │ let v60 : pyo3_Bound<pyo3_types_PyModule> = method14(v56) │
00:01:57 #1603 [verbose] > │ let v61 : string = "v60.getattr(v59)" │
00:01:57 #1604 [verbose] > │ let v62 : Result<pyo3_Bound<pyo3_PyAny>, pyo3_PyErr> = │
00:01:57 #1605 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v61 │
00:01:57 #1606 [verbose] > │ let v63 : (pyo3_PyErr -> std_string_String) = method15() │
00:01:57 #1607 [verbose] > │ let v64 : Result<pyo3_Bound<pyo3_PyAny>, pyo3_PyErr> = method16(v62) │
00:01:57 #1608 [verbose] > │ let v65 : string = "v64.map_err(|x| v63(x))" │
00:01:57 #1609 [verbose] > │ let v66 : Result<pyo3_Bound<pyo3_PyAny>, std_string_String> = │
00:01:57 #1610 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v65 │
00:01:57 #1611 [verbose] > │ let v67 : Result<pyo3_Bound<pyo3_PyAny>, std_string_String> = │
00:01:57 #1612 [verbose] > │ method17(v66) │
00:01:57 #1613 [verbose] > │ let v68 : string = "v67.unwrap()" │
00:01:57 #1614 [verbose] > │ let v69 : pyo3_Bound<pyo3_PyAny> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #1615 [verbose] > │ () v68 │
00:01:57 #1616 [verbose] > │ let v70 : (bool * (float * float)) = method18(v44) │
00:01:57 #1617 [verbose] > │ let v71 : pyo3_Bound<pyo3_PyAny> = method19(v69) │
00:01:57 #1618 [verbose] > │ let v72 : string = "pyo3::prelude::PyAnyMethods::call(&v71, ((*v70).0, │
00:01:57 #1619 [verbose] > │ *(*v70).1), None)" │
00:01:57 #1620 [verbose] > │ let v73 : Result<pyo3_Bound<pyo3_PyAny>, pyo3_PyErr> = │
00:01:57 #1621 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v72 │
00:01:57 #1622 [verbose] > │ let v74 : (pyo3_PyErr -> std_string_String) = method20() │
00:01:57 #1623 [verbose] > │ let v75 : Result<pyo3_Bound<pyo3_PyAny>, pyo3_PyErr> = method16(v73) │
00:01:57 #1624 [verbose] > │ let v76 : string = "v75.map_err(|x| v74(x))" │
00:01:57 #1625 [verbose] > │ let v77 : Result<pyo3_Bound<pyo3_PyAny>, std_string_String> = │
00:01:57 #1626 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v76 │
00:01:57 #1627 [verbose] > │ let v78 : string = "v77?" │
00:01:57 #1628 [verbose] > │ let v79 : pyo3_Bound<pyo3_PyAny> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #1629 [verbose] > │ () v78 │
00:01:57 #1630 [verbose] > │ let v80 : pyo3_Bound<pyo3_PyAny> = method21(v79) │
00:01:57 #1631 [verbose] > │ let v81 : string = "v80.extract()" │
00:01:57 #1632 [verbose] > │ let v82 : Result<struct (float * float), pyo3_PyErr> = │
00:01:57 #1633 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v81 │
00:01:57 #1634 [verbose] > │ let v83 : (pyo3_PyErr -> std_string_String) = method22() │
00:01:57 #1635 [verbose] > │ let v84 : Result<struct (float * float), pyo3_PyErr> = method23(v82) │
00:01:57 #1636 [verbose] > │ let v85 : string = "v84.map_err(|x| v83(x))" │
00:01:57 #1637 [verbose] > │ let v86 : Result<struct (float * float), std_string_String> = │
00:01:57 #1638 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v85 │
00:01:57 #1639 [verbose] > │ let v87 : string = "v86?" │
00:01:57 #1640 [verbose] > │ let struct (v88 : float, v89 : float) = │
00:01:57 #1641 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v87 │
00:01:57 #1642 [verbose] > │ let v90 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1643 [verbose] > │ let v91 : num_complex_Complex<float> = │
00:01:57 #1644 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v88, v89) v90 │
00:01:57 #1645 [verbose] > │ let v92 : Result<num_complex_Complex<float>, std_string_String> = Ok v91 │
00:01:57 #1646 [verbose] > │ v92 │
00:01:57 #1647 [verbose] > │ and method25 (v0 : Mut0) : bool = │
00:01:57 #1648 [verbose] > │ let v1 : int32 = v0.l0 │
00:01:57 #1649 [verbose] > │ let v2 : bool = v1 < 10000 │
00:01:57 #1650 [verbose] > │ v2 │
00:01:57 #1651 [verbose] > │ and method26 (v0 : int32, v1 : Mut2) : bool = │
00:01:57 #1652 [verbose] > │ let v2 : int32 = v1.l0 │
00:01:57 #1653 [verbose] > │ let v3 : bool = v2 < v0 │
00:01:57 #1654 [verbose] > │ v3 │
00:01:57 #1655 [verbose] > │ and method27 (v0 : num_complex_Complex<float>) : num_complex_Complex<float> │
00:01:57 #1656 [verbose] > │ = │
00:01:57 #1657 [verbose] > │ v0 │
00:01:57 #1658 [verbose] > │ and method28 (v0 : num_complex_Complex<float>) : num_complex_Complex<float> │
00:01:57 #1659 [verbose] > │ = │
00:01:57 #1660 [verbose] > │ v0 │
00:01:57 #1661 [verbose] > │ and method29 (v0 : pyo3_Python, v1 : string, v2 : │
00:01:57 #1662 [verbose] > │ num_complex_Complex<float>) : Result<num_complex_Complex<float>, │
00:01:57 #1663 [verbose] > │ std_string_String> = │
00:01:57 #1664 [verbose] > │ let v3 : string = $"import sys" │
00:01:57 #1665 [verbose] > │ let v4 : string = $"import traceback" │
00:01:57 #1666 [verbose] > │ let v5 : string = $"import re" │
00:01:57 #1667 [verbose] > │ let v6 : string = $"count = 0" │
00:01:57 #1668 [verbose] > │ let v7 : string = $"memory_address_pattern = re.compile(r' at 0x[ │
00:01:57 #1669 [verbose] > │ 0-9a-fA-F]+')" │
00:01:57 #1670 [verbose] > │ let v8 : string = $"def trace_calls(frame, event, arg):" │
00:01:57 #1671 [verbose] > │ let v9 : string = $" global count" │
00:01:57 #1672 [verbose] > │ let v10 : string = $" count += 1" │
00:01:57 #1673 [verbose] > │ let v11 : string = $" if count < 200:" │
00:01:57 #1674 [verbose] > │ let v12 : string = $" try:" │
00:01:57 #1675 [verbose] > │ let v13 : string = $" args = {{ k: v for k, v in │
00:01:57 #1676 [verbose] > │ frame.f_locals.items() if frame.f_code.co_name != 'make_mpc' and k not in [ │
00:01:57 #1677 [verbose] > │ 'ctx'] and not callable(v) }}" │
00:01:57 #1678 [verbose] > │ let v14 : string = $" args_str = ', '.join([ │
00:01:57 #1679 [verbose] > │ f\"{{k}}={{re.sub(memory_address_pattern, ' at 0x<?>', repr(v))}}\" for k, v │
00:01:57 #1680 [verbose] > │ in args.items() ])" │
00:01:57 #1681 [verbose] > │ let v15 : string = "gamma_" │
00:01:57 #1682 [verbose] > │ let v16 : string = $" print(f\"{{event}}({v15}) / │
00:01:57 #1683 [verbose] > │ f_code.co_name: {{frame.f_code.co_name}} / f_locals: {{args_str}} / │
00:01:57 #1684 [verbose] > │ f_lineno: {{frame.f_lineno}} / f_code.co_filename: │
00:01:57 #1685 [verbose] > │ {{frame.f_code.co_filename.split('site-packages')[-1]}} / f_back.f_lineno: │
00:01:57 #1686 [verbose] > │ {{ '' if frame.f_back is None else frame.f_back.f_lineno }} / │
00:01:57 #1687 [verbose] > │ f_back.f_code.co_filename: {{ '' if frame.f_back is None else │
00:01:57 #1688 [verbose] > │ frame.f_back.f_code.co_filename.split('site-packages')[-1] }} / arg: │
00:01:57 #1689 [verbose] > │ {{re.sub(memory_address_pattern, ' at 0x<?>', repr(arg))}}\", flush=True)" │
00:01:57 #1690 [verbose] > │ let v17 : string = $" except ValueError as e:" │
00:01:57 #1691 [verbose] > │ let v18 : string = $" print(f'{v15} / e: {{e}}', flush=True)" │
00:01:57 #1692 [verbose] > │ let v19 : string = $" return trace_calls" │
00:01:57 #1693 [verbose] > │ let v20 : string = $"import mpmath" │
00:01:57 #1694 [verbose] > │ let v21 : string = $"def fn(log, s):" │
00:01:57 #1695 [verbose] > │ let v22 : string = $" global count" │
00:01:57 #1696 [verbose] > │ let v23 : string = $" if log:" │
00:01:57 #1697 [verbose] > │ let v24 : string = $" print(f'{v15} / s: {{s}} / count: │
00:01:57 #1698 [verbose] > │ {{count}}', flush=True)" │
00:01:57 #1699 [verbose] > │ let v25 : string = $" s = complex(*s)" │
00:01:57 #1700 [verbose] > │ let v26 : string = $" try:" │
00:01:57 #1701 [verbose] > │ let v27 : string = $" if log: sys.settrace(trace_calls)" │
00:01:57 #1702 [verbose] > │ let v28 : string = $" if log:" │
00:01:57 #1703 [verbose] > │ let v29 : string = $" sys.settrace(None)" │
00:01:57 #1704 [verbose] > │ let v30 : string = $" print(f'{v15} / result: {{s}} / count: │
00:01:57 #1705 [verbose] > │ {{count}}', flush=True)" │
00:01:57 #1706 [verbose] > │ let v31 : string = $" except ValueError as e:" │
00:01:57 #1707 [verbose] > │ let v32 : string = $" if s.real == 1:" │
00:01:57 #1708 [verbose] > │ let v33 : string = $" s = complex(float('inf'), 0)" │
00:01:57 #1709 [verbose] > │ let v34 : string = $" return (s.real, s.imag)" │
00:01:57 #1710 [verbose] > │ let v35 : (string []) = [|v3; v4; v5; v6; v7; v8; v9; v10; v11; v12; │
00:01:57 #1711 [verbose] > │ v13; v14; v16; v17; v18; v19; v20; v21; v22; v23; v24; v25; v26; v27; v1; │
00:01:57 #1712 [verbose] > │ v28; v29; v30; v31; v32; v33; v34|] │
00:01:57 #1713 [verbose] > │ let v36 : string = method5(v35) │
00:01:57 #1714 [verbose] > │ let v37 : num_complex_Complex<float> = method7(v2) │
00:01:57 #1715 [verbose] > │ let v38 : string = "v37.re" │
00:01:57 #1716 [verbose] > │ let v39 : float = Fable.Core.RustInterop.emitRustExpr () v38 │
00:01:57 #1717 [verbose] > │ let v40 : num_complex_Complex<float> = method8(v2) │
00:01:57 #1718 [verbose] > │ let v41 : string = "v40.im" │
00:01:57 #1719 [verbose] > │ let v42 : float = Fable.Core.RustInterop.emitRustExpr () v41 │
00:01:57 #1720 [verbose] > │ let v43 : (float * float) = v39, v42 │
00:01:57 #1721 [verbose] > │ let v44 : (bool * (float * float)) = false, v43 │
00:01:57 #1722 [verbose] > │ let v45 : pyo3_Python = method9(v0) │
00:01:57 #1723 [verbose] > │ let v46 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:01:57 #1724 [verbose] > │ let v47 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v36 v46 │
00:01:57 #1725 [verbose] > │ let v48 : string = "pyo3::types::PyModule::from_code_bound(v45, v47, │
00:01:57 #1726 [verbose] > │ \"\", \"\")" │
00:01:57 #1727 [verbose] > │ let v49 : Result<pyo3_Bound<pyo3_types_PyModule>, pyo3_PyErr> = │
00:01:57 #1728 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v48 │
00:01:57 #1729 [verbose] > │ let v50 : (pyo3_PyErr -> std_string_String) = method10() │
00:01:57 #1730 [verbose] > │ let v51 : Result<pyo3_Bound<pyo3_types_PyModule>, pyo3_PyErr> = │
00:01:57 #1731 [verbose] > │ method11(v49) │
00:01:57 #1732 [verbose] > │ let v52 : string = "v51.map_err(|x| v50(x))" │
00:01:57 #1733 [verbose] > │ let v53 : Result<pyo3_Bound<pyo3_types_PyModule>, std_string_String> = │
00:01:57 #1734 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v52 │
00:01:57 #1735 [verbose] > │ let v54 : Result<pyo3_Bound<pyo3_types_PyModule>, std_string_String> = │
00:01:57 #1736 [verbose] > │ method12(v53) │
00:01:57 #1737 [verbose] > │ let v55 : string = "v54.unwrap()" │
00:01:57 #1738 [verbose] > │ let v56 : pyo3_Bound<pyo3_types_PyModule> = │
00:01:57 #1739 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v55 │
00:01:57 #1740 [verbose] > │ let v57 : string = method13() │
00:01:57 #1741 [verbose] > │ let v58 : string = "fable_library_rust::String_::LrcStr::as_str(&$0)" │
00:01:57 #1742 [verbose] > │ let v59 : Ref<Str> = Fable.Core.RustInterop.emitRustExpr v57 v58 │
00:01:57 #1743 [verbose] > │ let v60 : pyo3_Bound<pyo3_types_PyModule> = method14(v56) │
00:01:57 #1744 [verbose] > │ let v61 : string = "v60.getattr(v59)" │
00:01:57 #1745 [verbose] > │ let v62 : Result<pyo3_Bound<pyo3_PyAny>, pyo3_PyErr> = │
00:01:57 #1746 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v61 │
00:01:57 #1747 [verbose] > │ let v63 : (pyo3_PyErr -> std_string_String) = method15() │
00:01:57 #1748 [verbose] > │ let v64 : Result<pyo3_Bound<pyo3_PyAny>, pyo3_PyErr> = method16(v62) │
00:01:57 #1749 [verbose] > │ let v65 : string = "v64.map_err(|x| v63(x))" │
00:01:57 #1750 [verbose] > │ let v66 : Result<pyo3_Bound<pyo3_PyAny>, std_string_String> = │
00:01:57 #1751 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v65 │
00:01:57 #1752 [verbose] > │ let v67 : Result<pyo3_Bound<pyo3_PyAny>, std_string_String> = │
00:01:57 #1753 [verbose] > │ method17(v66) │
00:01:57 #1754 [verbose] > │ let v68 : string = "v67.unwrap()" │
00:01:57 #1755 [verbose] > │ let v69 : pyo3_Bound<pyo3_PyAny> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #1756 [verbose] > │ () v68 │
00:01:57 #1757 [verbose] > │ let v70 : (bool * (float * float)) = method18(v44) │
00:01:57 #1758 [verbose] > │ let v71 : pyo3_Bound<pyo3_PyAny> = method19(v69) │
00:01:57 #1759 [verbose] > │ let v72 : string = "pyo3::prelude::PyAnyMethods::call(&v71, ((*v70).0, │
00:01:57 #1760 [verbose] > │ *(*v70).1), None)" │
00:01:57 #1761 [verbose] > │ let v73 : Result<pyo3_Bound<pyo3_PyAny>, pyo3_PyErr> = │
00:01:57 #1762 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v72 │
00:01:57 #1763 [verbose] > │ let v74 : (pyo3_PyErr -> std_string_String) = method20() │
00:01:57 #1764 [verbose] > │ let v75 : Result<pyo3_Bound<pyo3_PyAny>, pyo3_PyErr> = method16(v73) │
00:01:57 #1765 [verbose] > │ let v76 : string = "v75.map_err(|x| v74(x))" │
00:01:57 #1766 [verbose] > │ let v77 : Result<pyo3_Bound<pyo3_PyAny>, std_string_String> = │
00:01:57 #1767 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v76 │
00:01:57 #1768 [verbose] > │ let v78 : string = "v77?" │
00:01:57 #1769 [verbose] > │ let v79 : pyo3_Bound<pyo3_PyAny> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #1770 [verbose] > │ () v78 │
00:01:57 #1771 [verbose] > │ let v80 : pyo3_Bound<pyo3_PyAny> = method21(v79) │
00:01:57 #1772 [verbose] > │ let v81 : string = "v80.extract()" │
00:01:57 #1773 [verbose] > │ let v82 : Result<struct (float * float), pyo3_PyErr> = │
00:01:57 #1774 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v81 │
00:01:57 #1775 [verbose] > │ let v83 : (pyo3_PyErr -> std_string_String) = method22() │
00:01:57 #1776 [verbose] > │ let v84 : Result<struct (float * float), pyo3_PyErr> = method23(v82) │
00:01:57 #1777 [verbose] > │ let v85 : string = "v84.map_err(|x| v83(x))" │
00:01:57 #1778 [verbose] > │ let v86 : Result<struct (float * float), std_string_String> = │
00:01:57 #1779 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v85 │
00:01:57 #1780 [verbose] > │ let v87 : string = "v86?" │
00:01:57 #1781 [verbose] > │ let struct (v88 : float, v89 : float) = │
00:01:57 #1782 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v87 │
00:01:57 #1783 [verbose] > │ let v90 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1784 [verbose] > │ let v91 : num_complex_Complex<float> = │
00:01:57 #1785 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v88, v89) v90 │
00:01:57 #1786 [verbose] > │ let v92 : Result<num_complex_Complex<float>, std_string_String> = Ok v91 │
00:01:57 #1787 [verbose] > │ v92 │
00:01:57 #1788 [verbose] > │ and closure5 () (v0 : num_complex_Complex<float>) : US0 = │
00:01:57 #1789 [verbose] > │ US0_0(v0) │
00:01:57 #1790 [verbose] > │ and method30 () : (num_complex_Complex<float> -> US0) = │
00:01:57 #1791 [verbose] > │ closure5() │
00:01:57 #1792 [verbose] > │ and method24 (v0 : pyo3_Python, v1 : num_complex_Complex<float>) : │
00:01:57 #1793 [verbose] > │ num_complex_Complex<float> = │
00:01:57 #1794 [verbose] > │ let v2 : string = "println!(\"zeta / count: {:?} / s: {:?}\", 0, $0)" │
00:01:57 #1795 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v1 v2 │
00:01:57 #1796 [verbose] > │ let v3 : num_complex_Complex<float> = method7(v1) │
00:01:57 #1797 [verbose] > │ let v4 : string = "v3.re" │
00:01:57 #1798 [verbose] > │ let v5 : float = Fable.Core.RustInterop.emitRustExpr () v4 │
00:01:57 #1799 [verbose] > │ let v6 : bool = v5 > 1.0 │
00:01:57 #1800 [verbose] > │ if v6 then │
00:01:57 #1801 [verbose] > │ let v7 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1802 [verbose] > │ let v8 : num_complex_Complex<float> = │
00:01:57 #1803 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.0, 0.0) v7 │
00:01:57 #1804 [verbose] > │ let v9 : (int32 []) = Array.zeroCreate<int32> (10000) │
00:01:57 #1805 [verbose] > │ let v10 : Mut0 = {l0 = 0} : Mut0 │
00:01:57 #1806 [verbose] > │ while method25(v10) do │
00:01:57 #1807 [verbose] > │ let v12 : int32 = v10.l0 │
00:01:57 #1808 [verbose] > │ v9.[int v12] <- v12 │
00:01:57 #1809 [verbose] > │ let v13 : int32 = v12 + 1 │
00:01:57 #1810 [verbose] > │ v10.l0 <- v13 │
00:01:57 #1811 [verbose] > │ () │
00:01:57 #1812 [verbose] > │ let v14 : int32 = v9.Length │
00:01:57 #1813 [verbose] > │ let v15 : Mut2 = {l0 = 0; l1 = v8} : Mut2 │
00:01:57 #1814 [verbose] > │ while method26(v14, v15) do │
00:01:57 #1815 [verbose] > │ let v17 : int32 = v15.l0 │
00:01:57 #1816 [verbose] > │ let v18 : num_complex_Complex<float> = v15.l1 │
00:01:57 #1817 [verbose] > │ let v19 : int32 = v9.[int v17] │
00:01:57 #1818 [verbose] > │ let v20 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1819 [verbose] > │ let v21 : num_complex_Complex<float> = │
00:01:57 #1820 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (1.0, 0.0) v20 │
00:01:57 #1821 [verbose] > │ let v22 : float = float v19 │
00:01:57 #1822 [verbose] > │ let v23 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1823 [verbose] > │ let v24 : num_complex_Complex<float> = │
00:01:57 #1824 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v22, 0.0) v23 │
00:01:57 #1825 [verbose] > │ let v25 : num_complex_Complex<float> = method27(v24) │
00:01:57 #1826 [verbose] > │ let v26 : num_complex_Complex<float> = method28(v1) │
00:01:57 #1827 [verbose] > │ let v27 : string = "num_complex::Complex::powc(v25, v26)" │
00:01:57 #1828 [verbose] > │ let v28 : num_complex_Complex<float> = │
00:01:57 #1829 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v27 │
00:01:57 #1830 [verbose] > │ let v29 : string = "v21 / v28" │
00:01:57 #1831 [verbose] > │ let v30 : num_complex_Complex<float> = │
00:01:57 #1832 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v29 │
00:01:57 #1833 [verbose] > │ let v31 : string = "v18 + v30" │
00:01:57 #1834 [verbose] > │ let v32 : num_complex_Complex<float> = │
00:01:57 #1835 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v31 │
00:01:57 #1836 [verbose] > │ let v33 : int32 = v17 + 1 │
00:01:57 #1837 [verbose] > │ v15.l0 <- v33 │
00:01:57 #1838 [verbose] > │ v15.l1 <- v32 │
00:01:57 #1839 [verbose] > │ () │
00:01:57 #1840 [verbose] > │ let v34 : num_complex_Complex<float> = v15.l1 │
00:01:57 #1841 [verbose] > │ v34 │
00:01:57 #1842 [verbose] > │ else │
00:01:57 #1843 [verbose] > │ let v35 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1844 [verbose] > │ let v36 : num_complex_Complex<float> = │
00:01:57 #1845 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (1.0, 0.0) v35 │
00:01:57 #1846 [verbose] > │ let v37 : string = "$0 - $1" │
00:01:57 #1847 [verbose] > │ let v38 : num_complex_Complex<float> = │
00:01:57 #1848 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v36, v1) v37 │
00:01:57 #1849 [verbose] > │ let v39 : string = $" s = mpmath.gamma(s)" │
00:01:57 #1850 [verbose] > │ let v40 : num_complex_Complex<float> = method3(v38) │
00:01:57 #1851 [verbose] > │ let v41 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #1852 [verbose] > │ method29(v0, v39, v40) │
00:01:57 #1853 [verbose] > │ let v42 : string = "v41.ok()" │
00:01:57 #1854 [verbose] > │ let v43 : num_complex_Complex<float> option = │
00:01:57 #1855 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v42 │
00:01:57 #1856 [verbose] > │ let v44 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #1857 [verbose] > │ let v45 : US0 = US0_1 │
00:01:57 #1858 [verbose] > │ let v46 : US0 = v43 |> Option.map v44 |> Option.defaultValue v45 │
00:01:57 #1859 [verbose] > │ let v47 : string = "f64::NAN" │
00:01:57 #1860 [verbose] > │ let v48 : float = Fable.Core.RustInterop.emitRustExpr () v47 │
00:01:57 #1861 [verbose] > │ let v49 : string = "f64::NAN" │
00:01:57 #1862 [verbose] > │ let v50 : float = Fable.Core.RustInterop.emitRustExpr () v49 │
00:01:57 #1863 [verbose] > │ let v51 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1864 [verbose] > │ let v52 : num_complex_Complex<float> = │
00:01:57 #1865 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v48, v50) v51 │
00:01:57 #1866 [verbose] > │ let v55 : num_complex_Complex<float> = │
00:01:57 #1867 [verbose] > │ match v46 with │
00:01:57 #1868 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #1869 [verbose] > │ v52 │
00:01:57 #1870 [verbose] > │ | US0_0(v53) -> (* Some *) │
00:01:57 #1871 [verbose] > │ v53 │
00:01:57 #1872 [verbose] > │ let v56 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1873 [verbose] > │ let v57 : num_complex_Complex<float> = │
00:01:57 #1874 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (3.141592653589793, 0.0) v56 │
00:01:57 #1875 [verbose] > │ let v58 : string = "$0 * $1" │
00:01:57 #1876 [verbose] > │ let v59 : num_complex_Complex<float> = │
00:01:57 #1877 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v57, v1) v58 │
00:01:57 #1878 [verbose] > │ let v60 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1879 [verbose] > │ let v61 : num_complex_Complex<float> = │
00:01:57 #1880 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (2.0, 0.0) v60 │
00:01:57 #1881 [verbose] > │ let v62 : string = "v59 / v61" │
00:01:57 #1882 [verbose] > │ let v63 : num_complex_Complex<float> = │
00:01:57 #1883 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v62 │
00:01:57 #1884 [verbose] > │ let v64 : string = "v63.sin()" │
00:01:57 #1885 [verbose] > │ let v65 : num_complex_Complex<float> = │
00:01:57 #1886 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v64 │
00:01:57 #1887 [verbose] > │ let v66 : num_complex_Complex<float> = method7(v1) │
00:01:57 #1888 [verbose] > │ let v67 : string = "v66.re" │
00:01:57 #1889 [verbose] > │ let v68 : float = Fable.Core.RustInterop.emitRustExpr () v67 │
00:01:57 #1890 [verbose] > │ let v69 : float = 1.0 - v68 │
00:01:57 #1891 [verbose] > │ let v70 : num_complex_Complex<float> = method8(v1) │
00:01:57 #1892 [verbose] > │ let v71 : string = "v70.im" │
00:01:57 #1893 [verbose] > │ let v72 : float = Fable.Core.RustInterop.emitRustExpr () v71 │
00:01:57 #1894 [verbose] > │ let v73 : float = -v72 │
00:01:57 #1895 [verbose] > │ let v74 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1896 [verbose] > │ let v75 : num_complex_Complex<float> = │
00:01:57 #1897 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v69, v73) v74 │
00:01:57 #1898 [verbose] > │ let v76 : num_complex_Complex<float> = method7(v75) │
00:01:57 #1899 [verbose] > │ let v77 : string = "v76.re" │
00:01:57 #1900 [verbose] > │ let v78 : float = Fable.Core.RustInterop.emitRustExpr () v77 │
00:01:57 #1901 [verbose] > │ let v79 : bool = v78 <= 1.0 │
00:01:57 #1902 [verbose] > │ let v474 : num_complex_Complex<float> = │
00:01:57 #1903 [verbose] > │ if v79 then │
00:01:57 #1904 [verbose] > │ let v80 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1905 [verbose] > │ let v81 : num_complex_Complex<float> = │
00:01:57 #1906 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.0, 0.0) v80 │
00:01:57 #1907 [verbose] > │ v81 │
00:01:57 #1908 [verbose] > │ else │
00:01:57 #1909 [verbose] > │ let v82 : string = "println!(\"zeta / count: {:?} / s: │
00:01:57 #1910 [verbose] > │ {:?}\", 1, $0)" │
00:01:57 #1911 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v75 v82 │
00:01:57 #1912 [verbose] > │ let v83 : num_complex_Complex<float> = method7(v75) │
00:01:57 #1913 [verbose] > │ let v84 : string = "v83.re" │
00:01:57 #1914 [verbose] > │ let v85 : float = Fable.Core.RustInterop.emitRustExpr () v84 │
00:01:57 #1915 [verbose] > │ let v86 : bool = v85 > 1.0 │
00:01:57 #1916 [verbose] > │ if v86 then │
00:01:57 #1917 [verbose] > │ let v87 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1918 [verbose] > │ let v88 : num_complex_Complex<float> = │
00:01:57 #1919 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.0, 0.0) v87 │
00:01:57 #1920 [verbose] > │ let v89 : (int32 []) = Array.zeroCreate<int32> (10000) │
00:01:57 #1921 [verbose] > │ let v90 : Mut0 = {l0 = 0} : Mut0 │
00:01:57 #1922 [verbose] > │ while method25(v90) do │
00:01:57 #1923 [verbose] > │ let v92 : int32 = v90.l0 │
00:01:57 #1924 [verbose] > │ v89.[int v92] <- v92 │
00:01:57 #1925 [verbose] > │ let v93 : int32 = v92 + 1 │
00:01:57 #1926 [verbose] > │ v90.l0 <- v93 │
00:01:57 #1927 [verbose] > │ () │
00:01:57 #1928 [verbose] > │ let v94 : int32 = v89.Length │
00:01:57 #1929 [verbose] > │ let v95 : Mut2 = {l0 = 0; l1 = v88} : Mut2 │
00:01:57 #1930 [verbose] > │ while method26(v94, v95) do │
00:01:57 #1931 [verbose] > │ let v97 : int32 = v95.l0 │
00:01:57 #1932 [verbose] > │ let v98 : num_complex_Complex<float> = v95.l1 │
00:01:57 #1933 [verbose] > │ let v99 : int32 = v89.[int v97] │
00:01:57 #1934 [verbose] > │ let v100 : string = "num_complex::Complex::new($0, │
00:01:57 #1935 [verbose] > │ $1)" │
00:01:57 #1936 [verbose] > │ let v101 : num_complex_Complex<float> = │
00:01:57 #1937 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (1.0, 0.0) v100 │
00:01:57 #1938 [verbose] > │ let v102 : float = float v99 │
00:01:57 #1939 [verbose] > │ let v103 : string = "num_complex::Complex::new($0, │
00:01:57 #1940 [verbose] > │ $1)" │
00:01:57 #1941 [verbose] > │ let v104 : num_complex_Complex<float> = │
00:01:57 #1942 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v102, 0.0) v103 │
00:01:57 #1943 [verbose] > │ let v105 : num_complex_Complex<float> = │
00:01:57 #1944 [verbose] > │ method27(v104) │
00:01:57 #1945 [verbose] > │ let v106 : num_complex_Complex<float> = │
00:01:57 #1946 [verbose] > │ method28(v75) │
00:01:57 #1947 [verbose] > │ let v107 : string = │
00:01:57 #1948 [verbose] > │ "num_complex::Complex::powc(v105, v106)" │
00:01:57 #1949 [verbose] > │ let v108 : num_complex_Complex<float> = │
00:01:57 #1950 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v107 │
00:01:57 #1951 [verbose] > │ let v109 : string = "v101 / v108" │
00:01:57 #1952 [verbose] > │ let v110 : num_complex_Complex<float> = │
00:01:57 #1953 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v109 │
00:01:57 #1954 [verbose] > │ let v111 : string = "v98 + v110" │
00:01:57 #1955 [verbose] > │ let v112 : num_complex_Complex<float> = │
00:01:57 #1956 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v111 │
00:01:57 #1957 [verbose] > │ let v113 : int32 = v97 + 1 │
00:01:57 #1958 [verbose] > │ v95.l0 <- v113 │
00:01:57 #1959 [verbose] > │ v95.l1 <- v112 │
00:01:57 #1960 [verbose] > │ () │
00:01:57 #1961 [verbose] > │ let v114 : num_complex_Complex<float> = v95.l1 │
00:01:57 #1962 [verbose] > │ v114 │
00:01:57 #1963 [verbose] > │ else │
00:01:57 #1964 [verbose] > │ let v115 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1965 [verbose] > │ let v116 : num_complex_Complex<float> = │
00:01:57 #1966 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (1.0, 0.0) v115 │
00:01:57 #1967 [verbose] > │ let v117 : string = "$0 - $1" │
00:01:57 #1968 [verbose] > │ let v118 : num_complex_Complex<float> = │
00:01:57 #1969 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v116, v75) v117 │
00:01:57 #1970 [verbose] > │ let v119 : string = $" s = mpmath.gamma(s)" │
00:01:57 #1971 [verbose] > │ let v120 : num_complex_Complex<float> = method3(v118) │
00:01:57 #1972 [verbose] > │ let v121 : Result<num_complex_Complex<float>, │
00:01:57 #1973 [verbose] > │ std_string_String> = method29(v0, v119, v120) │
00:01:57 #1974 [verbose] > │ let v122 : string = "v121.ok()" │
00:01:57 #1975 [verbose] > │ let v123 : num_complex_Complex<float> option = │
00:01:57 #1976 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v122 │
00:01:57 #1977 [verbose] > │ let v124 : (num_complex_Complex<float> -> US0) = │
00:01:57 #1978 [verbose] > │ method30() │
00:01:57 #1979 [verbose] > │ let v125 : US0 = US0_1 │
00:01:57 #1980 [verbose] > │ let v126 : US0 = v123 |> Option.map v124 |> │
00:01:57 #1981 [verbose] > │ Option.defaultValue v125 │
00:01:57 #1982 [verbose] > │ let v127 : string = "f64::NAN" │
00:01:57 #1983 [verbose] > │ let v128 : float = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #1984 [verbose] > │ () v127 │
00:01:57 #1985 [verbose] > │ let v129 : string = "f64::NAN" │
00:01:57 #1986 [verbose] > │ let v130 : float = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #1987 [verbose] > │ () v129 │
00:01:57 #1988 [verbose] > │ let v131 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1989 [verbose] > │ let v132 : num_complex_Complex<float> = │
00:01:57 #1990 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v128, v130) v131 │
00:01:57 #1991 [verbose] > │ let v135 : num_complex_Complex<float> = │
00:01:57 #1992 [verbose] > │ match v126 with │
00:01:57 #1993 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #1994 [verbose] > │ v132 │
00:01:57 #1995 [verbose] > │ | US0_0(v133) -> (* Some *) │
00:01:57 #1996 [verbose] > │ v133 │
00:01:57 #1997 [verbose] > │ let v136 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #1998 [verbose] > │ let v137 : num_complex_Complex<float> = │
00:01:57 #1999 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (3.141592653589793, 0.0) v136 │
00:01:57 #2000 [verbose] > │ let v138 : string = "$0 * $1" │
00:01:57 #2001 [verbose] > │ let v139 : num_complex_Complex<float> = │
00:01:57 #2002 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v137, v75) v138 │
00:01:57 #2003 [verbose] > │ let v140 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2004 [verbose] > │ let v141 : num_complex_Complex<float> = │
00:01:57 #2005 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (2.0, 0.0) v140 │
00:01:57 #2006 [verbose] > │ let v142 : string = "v139 / v141" │
00:01:57 #2007 [verbose] > │ let v143 : num_complex_Complex<float> = │
00:01:57 #2008 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v142 │
00:01:57 #2009 [verbose] > │ let v144 : string = "v143.sin()" │
00:01:57 #2010 [verbose] > │ let v145 : num_complex_Complex<float> = │
00:01:57 #2011 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v144 │
00:01:57 #2012 [verbose] > │ let v146 : num_complex_Complex<float> = method7(v75) │
00:01:57 #2013 [verbose] > │ let v147 : string = "v146.re" │
00:01:57 #2014 [verbose] > │ let v148 : float = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #2015 [verbose] > │ () v147 │
00:01:57 #2016 [verbose] > │ let v149 : float = 1.0 - v148 │
00:01:57 #2017 [verbose] > │ let v150 : num_complex_Complex<float> = method8(v75) │
00:01:57 #2018 [verbose] > │ let v151 : string = "v150.im" │
00:01:57 #2019 [verbose] > │ let v152 : float = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #2020 [verbose] > │ () v151 │
00:01:57 #2021 [verbose] > │ let v153 : float = -v152 │
00:01:57 #2022 [verbose] > │ let v154 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2023 [verbose] > │ let v155 : num_complex_Complex<float> = │
00:01:57 #2024 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v149, v153) v154 │
00:01:57 #2025 [verbose] > │ let v156 : num_complex_Complex<float> = method7(v155) │
00:01:57 #2026 [verbose] > │ let v157 : string = "v156.re" │
00:01:57 #2027 [verbose] > │ let v158 : float = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #2028 [verbose] > │ () v157 │
00:01:57 #2029 [verbose] > │ let v159 : bool = v158 <= 1.0 │
00:01:57 #2030 [verbose] > │ let v456 : num_complex_Complex<float> = │
00:01:57 #2031 [verbose] > │ if v159 then │
00:01:57 #2032 [verbose] > │ let v160 : string = │
00:01:57 #2033 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2034 [verbose] > │ let v161 : num_complex_Complex<float> = │
00:01:57 #2035 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.0, 0.0) v160 │
00:01:57 #2036 [verbose] > │ v161 │
00:01:57 #2037 [verbose] > │ else │
00:01:57 #2038 [verbose] > │ let v162 : string = "println!(\"zeta / count: │
00:01:57 #2039 [verbose] > │ {:?} / s: {:?}\", 2, $0)" │
00:01:57 #2040 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v155 v162 │
00:01:57 #2041 [verbose] > │ let v163 : num_complex_Complex<float> = │
00:01:57 #2042 [verbose] > │ method7(v155) │
00:01:57 #2043 [verbose] > │ let v164 : string = "v163.re" │
00:01:57 #2044 [verbose] > │ let v165 : float = │
00:01:57 #2045 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v164 │
00:01:57 #2046 [verbose] > │ let v166 : bool = v165 > 1.0 │
00:01:57 #2047 [verbose] > │ if v166 then │
00:01:57 #2048 [verbose] > │ let v167 : string = │
00:01:57 #2049 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2050 [verbose] > │ let v168 : num_complex_Complex<float> = │
00:01:57 #2051 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.0, 0.0) v167 │
00:01:57 #2052 [verbose] > │ let v169 : (int32 []) = │
00:01:57 #2053 [verbose] > │ Array.zeroCreate<int32> (10000) │
00:01:57 #2054 [verbose] > │ let v170 : Mut0 = {l0 = 0} : Mut0 │
00:01:57 #2055 [verbose] > │ while method25(v170) do │
00:01:57 #2056 [verbose] > │ let v172 : int32 = v170.l0 │
00:01:57 #2057 [verbose] > │ v169.[int v172] <- v172 │
00:01:57 #2058 [verbose] > │ let v173 : int32 = v172 + 1 │
00:01:57 #2059 [verbose] > │ v170.l0 <- v173 │
00:01:57 #2060 [verbose] > │ () │
00:01:57 #2061 [verbose] > │ let v174 : int32 = v169.Length │
00:01:57 #2062 [verbose] > │ let v175 : Mut2 = {l0 = 0; l1 = v168} : Mut2 │
00:01:57 #2063 [verbose] > │ while method26(v174, v175) do │
00:01:57 #2064 [verbose] > │ let v177 : int32 = v175.l0 │
00:01:57 #2065 [verbose] > │ let v178 : num_complex_Complex<float> = │
00:01:57 #2066 [verbose] > │ v175.l1 │
00:01:57 #2067 [verbose] > │ let v179 : int32 = v169.[int v177] │
00:01:57 #2068 [verbose] > │ let v180 : string = │
00:01:57 #2069 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2070 [verbose] > │ let v181 : num_complex_Complex<float> = │
00:01:57 #2071 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (1.0, 0.0) v180 │
00:01:57 #2072 [verbose] > │ let v182 : float = float v179 │
00:01:57 #2073 [verbose] > │ let v183 : string = │
00:01:57 #2074 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2075 [verbose] > │ let v184 : num_complex_Complex<float> = │
00:01:57 #2076 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v182, 0.0) v183 │
00:01:57 #2077 [verbose] > │ let v185 : num_complex_Complex<float> = │
00:01:57 #2078 [verbose] > │ method27(v184) │
00:01:57 #2079 [verbose] > │ let v186 : num_complex_Complex<float> = │
00:01:57 #2080 [verbose] > │ method28(v155) │
00:01:57 #2081 [verbose] > │ let v187 : string = │
00:01:57 #2082 [verbose] > │ "num_complex::Complex::powc(v185, v186)" │
00:01:57 #2083 [verbose] > │ let v188 : num_complex_Complex<float> = │
00:01:57 #2084 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v187 │
00:01:57 #2085 [verbose] > │ let v189 : string = "v181 / v188" │
00:01:57 #2086 [verbose] > │ let v190 : num_complex_Complex<float> = │
00:01:57 #2087 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v189 │
00:01:57 #2088 [verbose] > │ let v191 : string = "v178 + v190" │
00:01:57 #2089 [verbose] > │ let v192 : num_complex_Complex<float> = │
00:01:57 #2090 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v191 │
00:01:57 #2091 [verbose] > │ let v193 : int32 = v177 + 1 │
00:01:57 #2092 [verbose] > │ v175.l0 <- v193 │
00:01:57 #2093 [verbose] > │ v175.l1 <- v192 │
00:01:57 #2094 [verbose] > │ () │
00:01:57 #2095 [verbose] > │ let v194 : num_complex_Complex<float> = │
00:01:57 #2096 [verbose] > │ v175.l1 │
00:01:57 #2097 [verbose] > │ v194 │
00:01:57 #2098 [verbose] > │ else │
00:01:57 #2099 [verbose] > │ let v195 : string = │
00:01:57 #2100 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2101 [verbose] > │ let v196 : num_complex_Complex<float> = │
00:01:57 #2102 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (1.0, 0.0) v195 │
00:01:57 #2103 [verbose] > │ let v197 : string = "$0 - $1" │
00:01:57 #2104 [verbose] > │ let v198 : num_complex_Complex<float> = │
00:01:57 #2105 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v196, v155) v197 │
00:01:57 #2106 [verbose] > │ let v199 : string = $" s = │
00:01:57 #2107 [verbose] > │ mpmath.gamma(s)" │
00:01:57 #2108 [verbose] > │ let v200 : num_complex_Complex<float> = │
00:01:57 #2109 [verbose] > │ method3(v198) │
00:01:57 #2110 [verbose] > │ let v201 : │
00:01:57 #2111 [verbose] > │ Result<num_complex_Complex<float>, std_string_String> = method29(v0, v199, │
00:01:57 #2112 [verbose] > │ v200) │
00:01:57 #2113 [verbose] > │ let v202 : string = "v201.ok()" │
00:01:57 #2114 [verbose] > │ let v203 : num_complex_Complex<float> option │
00:01:57 #2115 [verbose] > │ = Fable.Core.RustInterop.emitRustExpr () v202 │
00:01:57 #2116 [verbose] > │ let v204 : (num_complex_Complex<float> -> │
00:01:57 #2117 [verbose] > │ US0) = method30() │
00:01:57 #2118 [verbose] > │ let v205 : US0 = US0_1 │
00:01:57 #2119 [verbose] > │ let v206 : US0 = v203 |> Option.map v204 |> │
00:01:57 #2120 [verbose] > │ Option.defaultValue v205 │
00:01:57 #2121 [verbose] > │ let v207 : string = "f64::NAN" │
00:01:57 #2122 [verbose] > │ let v208 : float = │
00:01:57 #2123 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v207 │
00:01:57 #2124 [verbose] > │ let v209 : string = "f64::NAN" │
00:01:57 #2125 [verbose] > │ let v210 : float = │
00:01:57 #2126 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v209 │
00:01:57 #2127 [verbose] > │ let v211 : string = │
00:01:57 #2128 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2129 [verbose] > │ let v212 : num_complex_Complex<float> = │
00:01:57 #2130 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v208, v210) v211 │
00:01:57 #2131 [verbose] > │ let v215 : num_complex_Complex<float> = │
00:01:57 #2132 [verbose] > │ match v206 with │
00:01:57 #2133 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #2134 [verbose] > │ v212 │
00:01:57 #2135 [verbose] > │ | US0_0(v213) -> (* Some *) │
00:01:57 #2136 [verbose] > │ v213 │
00:01:57 #2137 [verbose] > │ let v216 : string = │
00:01:57 #2138 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2139 [verbose] > │ let v217 : num_complex_Complex<float> = │
00:01:57 #2140 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (3.141592653589793, 0.0) v216 │
00:01:57 #2141 [verbose] > │ let v218 : string = "$0 * $1" │
00:01:57 #2142 [verbose] > │ let v219 : num_complex_Complex<float> = │
00:01:57 #2143 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v217, v155) v218 │
00:01:57 #2144 [verbose] > │ let v220 : string = │
00:01:57 #2145 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2146 [verbose] > │ let v221 : num_complex_Complex<float> = │
00:01:57 #2147 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (2.0, 0.0) v220 │
00:01:57 #2148 [verbose] > │ let v222 : string = "v219 / v221" │
00:01:57 #2149 [verbose] > │ let v223 : num_complex_Complex<float> = │
00:01:57 #2150 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v222 │
00:01:57 #2151 [verbose] > │ let v224 : string = "v223.sin()" │
00:01:57 #2152 [verbose] > │ let v225 : num_complex_Complex<float> = │
00:01:57 #2153 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v224 │
00:01:57 #2154 [verbose] > │ let v226 : num_complex_Complex<float> = │
00:01:57 #2155 [verbose] > │ method7(v155) │
00:01:57 #2156 [verbose] > │ let v227 : string = "v226.re" │
00:01:57 #2157 [verbose] > │ let v228 : float = │
00:01:57 #2158 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v227 │
00:01:57 #2159 [verbose] > │ let v229 : float = 1.0 - v228 │
00:01:57 #2160 [verbose] > │ let v230 : num_complex_Complex<float> = │
00:01:57 #2161 [verbose] > │ method8(v155) │
00:01:57 #2162 [verbose] > │ let v231 : string = "v230.im" │
00:01:57 #2163 [verbose] > │ let v232 : float = │
00:01:57 #2164 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v231 │
00:01:57 #2165 [verbose] > │ let v233 : float = -v232 │
00:01:57 #2166 [verbose] > │ let v234 : string = │
00:01:57 #2167 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2168 [verbose] > │ let v235 : num_complex_Complex<float> = │
00:01:57 #2169 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v229, v233) v234 │
00:01:57 #2170 [verbose] > │ let v236 : num_complex_Complex<float> = │
00:01:57 #2171 [verbose] > │ method7(v235) │
00:01:57 #2172 [verbose] > │ let v237 : string = "v236.re" │
00:01:57 #2173 [verbose] > │ let v238 : float = │
00:01:57 #2174 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v237 │
00:01:57 #2175 [verbose] > │ let v239 : bool = v238 <= 1.0 │
00:01:57 #2176 [verbose] > │ let v438 : num_complex_Complex<float> = │
00:01:57 #2177 [verbose] > │ if v239 then │
00:01:57 #2178 [verbose] > │ let v240 : string = │
00:01:57 #2179 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2180 [verbose] > │ let v241 : │
00:01:57 #2181 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2182 [verbose] > │ (0.0, 0.0) v240 │
00:01:57 #2183 [verbose] > │ v241 │
00:01:57 #2184 [verbose] > │ else │
00:01:57 #2185 [verbose] > │ let v242 : string = "println!(\"zeta │
00:01:57 #2186 [verbose] > │ / count: {:?} / s: {:?}\", 3, $0)" │
00:01:57 #2187 [verbose] > │ Fable.Core.RustInterop.emitRustExpr │
00:01:57 #2188 [verbose] > │ v235 v242 │
00:01:57 #2189 [verbose] > │ let v243 : │
00:01:57 #2190 [verbose] > │ num_complex_Complex<float> = method7(v235) │
00:01:57 #2191 [verbose] > │ let v244 : string = "v243.re" │
00:01:57 #2192 [verbose] > │ let v245 : float = │
00:01:57 #2193 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v244 │
00:01:57 #2194 [verbose] > │ let v246 : bool = v245 > 1.0 │
00:01:57 #2195 [verbose] > │ if v246 then │
00:01:57 #2196 [verbose] > │ let v247 : string = │
00:01:57 #2197 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2198 [verbose] > │ let v248 : │
00:01:57 #2199 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2200 [verbose] > │ (0.0, 0.0) v247 │
00:01:57 #2201 [verbose] > │ let v249 : (int32 []) = │
00:01:57 #2202 [verbose] > │ Array.zeroCreate<int32> (10000) │
00:01:57 #2203 [verbose] > │ let v250 : Mut0 = {l0 = 0} : │
00:01:57 #2204 [verbose] > │ Mut0 │
00:01:57 #2205 [verbose] > │ while method25(v250) do │
00:01:57 #2206 [verbose] > │ let v252 : int32 = v250.l0 │
00:01:57 #2207 [verbose] > │ v249.[int v252] <- v252 │
00:01:57 #2208 [verbose] > │ let v253 : int32 = v252 + 1 │
00:01:57 #2209 [verbose] > │ v250.l0 <- v253 │
00:01:57 #2210 [verbose] > │ () │
00:01:57 #2211 [verbose] > │ let v254 : int32 = v249.Length │
00:01:57 #2212 [verbose] > │ let v255 : Mut2 = {l0 = 0; l1 = │
00:01:57 #2213 [verbose] > │ v248} : Mut2 │
00:01:57 #2214 [verbose] > │ while method26(v254, v255) do │
00:01:57 #2215 [verbose] > │ let v257 : int32 = v255.l0 │
00:01:57 #2216 [verbose] > │ let v258 : │
00:01:57 #2217 [verbose] > │ num_complex_Complex<float> = v255.l1 │
00:01:57 #2218 [verbose] > │ let v259 : int32 = v249.[int │
00:01:57 #2219 [verbose] > │ v257] │
00:01:57 #2220 [verbose] > │ let v260 : string = │
00:01:57 #2221 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2222 [verbose] > │ let v261 : │
00:01:57 #2223 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2224 [verbose] > │ (1.0, 0.0) v260 │
00:01:57 #2225 [verbose] > │ let v262 : float = float │
00:01:57 #2226 [verbose] > │ v259 │
00:01:57 #2227 [verbose] > │ let v263 : string = │
00:01:57 #2228 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2229 [verbose] > │ let v264 : │
00:01:57 #2230 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2231 [verbose] > │ (v262, 0.0) v263 │
00:01:57 #2232 [verbose] > │ let v265 : │
00:01:57 #2233 [verbose] > │ num_complex_Complex<float> = method27(v264) │
00:01:57 #2234 [verbose] > │ let v266 : │
00:01:57 #2235 [verbose] > │ num_complex_Complex<float> = method28(v235) │
00:01:57 #2236 [verbose] > │ let v267 : string = │
00:01:57 #2237 [verbose] > │ "num_complex::Complex::powc(v265, v266)" │
00:01:57 #2238 [verbose] > │ let v268 : │
00:01:57 #2239 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr () v267 │
00:01:57 #2240 [verbose] > │ let v269 : string = "v261 / │
00:01:57 #2241 [verbose] > │ v268" │
00:01:57 #2242 [verbose] > │ let v270 : │
00:01:57 #2243 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr () v269 │
00:01:57 #2244 [verbose] > │ let v271 : string = "v258 + │
00:01:57 #2245 [verbose] > │ v270" │
00:01:57 #2246 [verbose] > │ let v272 : │
00:01:57 #2247 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr () v271 │
00:01:57 #2248 [verbose] > │ let v273 : int32 = v257 + 1 │
00:01:57 #2249 [verbose] > │ v255.l0 <- v273 │
00:01:57 #2250 [verbose] > │ v255.l1 <- v272 │
00:01:57 #2251 [verbose] > │ () │
00:01:57 #2252 [verbose] > │ let v274 : │
00:01:57 #2253 [verbose] > │ num_complex_Complex<float> = v255.l1 │
00:01:57 #2254 [verbose] > │ v274 │
00:01:57 #2255 [verbose] > │ else │
00:01:57 #2256 [verbose] > │ let v275 : string = │
00:01:57 #2257 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2258 [verbose] > │ let v276 : │
00:01:57 #2259 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2260 [verbose] > │ (1.0, 0.0) v275 │
00:01:57 #2261 [verbose] > │ let v277 : string = "$0 - $1" │
00:01:57 #2262 [verbose] > │ let v278 : │
00:01:57 #2263 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2264 [verbose] > │ (v276, v235) v277 │
00:01:57 #2265 [verbose] > │ let v279 : string = $" s │
00:01:57 #2266 [verbose] > │ = mpmath.gamma(s)" │
00:01:57 #2267 [verbose] > │ let v280 : │
00:01:57 #2268 [verbose] > │ num_complex_Complex<float> = method3(v278) │
00:01:57 #2269 [verbose] > │ let v281 : │
00:01:57 #2270 [verbose] > │ Result<num_complex_Complex<float>, std_string_String> = method29(v0, v279, │
00:01:57 #2271 [verbose] > │ v280) │
00:01:57 #2272 [verbose] > │ let v282 : string = "v281.ok()" │
00:01:57 #2273 [verbose] > │ let v283 : │
00:01:57 #2274 [verbose] > │ num_complex_Complex<float> option = Fable.Core.RustInterop.emitRustExpr () │
00:01:57 #2275 [verbose] > │ v282 │
00:01:57 #2276 [verbose] > │ let v284 : │
00:01:57 #2277 [verbose] > │ (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #2278 [verbose] > │ let v285 : US0 = US0_1 │
00:01:57 #2279 [verbose] > │ let v286 : US0 = v283 |> │
00:01:57 #2280 [verbose] > │ Option.map v284 |> Option.defaultValue v285 │
00:01:57 #2281 [verbose] > │ let v287 : string = "f64::NAN" │
00:01:57 #2282 [verbose] > │ let v288 : float = │
00:01:57 #2283 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v287 │
00:01:57 #2284 [verbose] > │ let v289 : string = "f64::NAN" │
00:01:57 #2285 [verbose] > │ let v290 : float = │
00:01:57 #2286 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v289 │
00:01:57 #2287 [verbose] > │ let v291 : string = │
00:01:57 #2288 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2289 [verbose] > │ let v292 : │
00:01:57 #2290 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2291 [verbose] > │ (v288, v290) v291 │
00:01:57 #2292 [verbose] > │ let v295 : │
00:01:57 #2293 [verbose] > │ num_complex_Complex<float> = │
00:01:57 #2294 [verbose] > │ match v286 with │
00:01:57 #2295 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #2296 [verbose] > │ v292 │
00:01:57 #2297 [verbose] > │ | US0_0(v293) -> (* Some *) │
00:01:57 #2298 [verbose] > │ v293 │
00:01:57 #2299 [verbose] > │ let v296 : string = │
00:01:57 #2300 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2301 [verbose] > │ let v297 : │
00:01:57 #2302 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2303 [verbose] > │ (3.141592653589793, 0.0) v296 │
00:01:57 #2304 [verbose] > │ let v298 : string = "$0 * $1" │
00:01:57 #2305 [verbose] > │ let v299 : │
00:01:57 #2306 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2307 [verbose] > │ (v297, v235) v298 │
00:01:57 #2308 [verbose] > │ let v300 : string = │
00:01:57 #2309 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2310 [verbose] > │ let v301 : │
00:01:57 #2311 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2312 [verbose] > │ (2.0, 0.0) v300 │
00:01:57 #2313 [verbose] > │ let v302 : string = "v299 / │
00:01:57 #2314 [verbose] > │ v301" │
00:01:57 #2315 [verbose] > │ let v303 : │
00:01:57 #2316 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr () v302 │
00:01:57 #2317 [verbose] > │ let v304 : string = "v303.sin()" │
00:01:57 #2318 [verbose] > │ let v305 : │
00:01:57 #2319 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr () v304 │
00:01:57 #2320 [verbose] > │ let v306 : │
00:01:57 #2321 [verbose] > │ num_complex_Complex<float> = method7(v235) │
00:01:57 #2322 [verbose] > │ let v307 : string = "v306.re" │
00:01:57 #2323 [verbose] > │ let v308 : float = │
00:01:57 #2324 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v307 │
00:01:57 #2325 [verbose] > │ let v309 : float = 1.0 - v308 │
00:01:57 #2326 [verbose] > │ let v310 : │
00:01:57 #2327 [verbose] > │ num_complex_Complex<float> = method8(v235) │
00:01:57 #2328 [verbose] > │ let v311 : string = "v310.im" │
00:01:57 #2329 [verbose] > │ let v312 : float = │
00:01:57 #2330 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v311 │
00:01:57 #2331 [verbose] > │ let v313 : float = -v312 │
00:01:57 #2332 [verbose] > │ let v314 : string = │
00:01:57 #2333 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2334 [verbose] > │ let v315 : │
00:01:57 #2335 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2336 [verbose] > │ (v309, v313) v314 │
00:01:57 #2337 [verbose] > │ let v316 : │
00:01:57 #2338 [verbose] > │ num_complex_Complex<float> = method7(v315) │
00:01:57 #2339 [verbose] > │ let v317 : string = "v316.re" │
00:01:57 #2340 [verbose] > │ let v318 : float = │
00:01:57 #2341 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v317 │
00:01:57 #2342 [verbose] > │ let v319 : bool = v318 <= 1.0 │
00:01:57 #2343 [verbose] > │ let v420 : │
00:01:57 #2344 [verbose] > │ num_complex_Complex<float> = │
00:01:57 #2345 [verbose] > │ if v319 then │
00:01:57 #2346 [verbose] > │ let v320 : string = │
00:01:57 #2347 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2348 [verbose] > │ let v321 : │
00:01:57 #2349 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2350 [verbose] > │ (0.0, 0.0) v320 │
00:01:57 #2351 [verbose] > │ v321 │
00:01:57 #2352 [verbose] > │ else │
00:01:57 #2353 [verbose] > │ let v322 : string = │
00:01:57 #2354 [verbose] > │ "println!(\"zeta / count: {:?} / s: {:?}\", 4, $0)" │
00:01:57 #2355 [verbose] > │ │
00:01:57 #2356 [verbose] > │ Fable.Core.RustInterop.emitRustExpr v315 v322 │
00:01:57 #2357 [verbose] > │ let v323 : │
00:01:57 #2358 [verbose] > │ num_complex_Complex<float> = method7(v315) │
00:01:57 #2359 [verbose] > │ let v324 : string = │
00:01:57 #2360 [verbose] > │ "v323.re" │
00:01:57 #2361 [verbose] > │ let v325 : float = │
00:01:57 #2362 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v324 │
00:01:57 #2363 [verbose] > │ let v326 : bool = v325 > │
00:01:57 #2364 [verbose] > │ 1.0 │
00:01:57 #2365 [verbose] > │ if v326 then │
00:01:57 #2366 [verbose] > │ let v327 : string = │
00:01:57 #2367 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2368 [verbose] > │ let v328 : │
00:01:57 #2369 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2370 [verbose] > │ (0.0, 0.0) v327 │
00:01:57 #2371 [verbose] > │ let v329 : (int32 [ │
00:01:57 #2372 [verbose] > │ ]) = Array.zeroCreate<int32> (10000) │
00:01:57 #2373 [verbose] > │ let v330 : Mut0 = │
00:01:57 #2374 [verbose] > │ {l0 = 0} : Mut0 │
00:01:57 #2375 [verbose] > │ while method25(v330) │
00:01:57 #2376 [verbose] > │ do │
00:01:57 #2377 [verbose] > │ let v332 : int32 │
00:01:57 #2378 [verbose] > │ = v330.l0 │
00:01:57 #2379 [verbose] > │ v329.[int v332] │
00:01:57 #2380 [verbose] > │ <- v332 │
00:01:57 #2381 [verbose] > │ let v333 : int32 │
00:01:57 #2382 [verbose] > │ = v332 + 1 │
00:01:57 #2383 [verbose] > │ v330.l0 <- v333 │
00:01:57 #2384 [verbose] > │ () │
00:01:57 #2385 [verbose] > │ let v334 : int32 = │
00:01:57 #2386 [verbose] > │ v329.Length │
00:01:57 #2387 [verbose] > │ let v335 : Mut2 = │
00:01:57 #2388 [verbose] > │ {l0 = 0; l1 = v328} : Mut2 │
00:01:57 #2389 [verbose] > │ while method26(v334, │
00:01:57 #2390 [verbose] > │ v335) do │
00:01:57 #2391 [verbose] > │ let v337 : int32 │
00:01:57 #2392 [verbose] > │ = v335.l0 │
00:01:57 #2393 [verbose] > │ let v338 : │
00:01:57 #2394 [verbose] > │ num_complex_Complex<float> = v335.l1 │
00:01:57 #2395 [verbose] > │ let v339 : int32 │
00:01:57 #2396 [verbose] > │ = v329.[int v337] │
00:01:57 #2397 [verbose] > │ let v340 : │
00:01:57 #2398 [verbose] > │ string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2399 [verbose] > │ let v341 : │
00:01:57 #2400 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2401 [verbose] > │ (1.0, 0.0) v340 │
00:01:57 #2402 [verbose] > │ let v342 : float │
00:01:57 #2403 [verbose] > │ = float v339 │
00:01:57 #2404 [verbose] > │ let v343 : │
00:01:57 #2405 [verbose] > │ string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2406 [verbose] > │ let v344 : │
00:01:57 #2407 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2408 [verbose] > │ (v342, 0.0) v343 │
00:01:57 #2409 [verbose] > │ let v345 : │
00:01:57 #2410 [verbose] > │ num_complex_Complex<float> = method27(v344) │
00:01:57 #2411 [verbose] > │ let v346 : │
00:01:57 #2412 [verbose] > │ num_complex_Complex<float> = method28(v315) │
00:01:57 #2413 [verbose] > │ let v347 : │
00:01:57 #2414 [verbose] > │ string = "num_complex::Complex::powc(v345, v346)" │
00:01:57 #2415 [verbose] > │ let v348 : │
00:01:57 #2416 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr () v347 │
00:01:57 #2417 [verbose] > │ let v349 : │
00:01:57 #2418 [verbose] > │ string = "v341 / v348" │
00:01:57 #2419 [verbose] > │ let v350 : │
00:01:57 #2420 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr () v349 │
00:01:57 #2421 [verbose] > │ let v351 : │
00:01:57 #2422 [verbose] > │ string = "v338 + v350" │
00:01:57 #2423 [verbose] > │ let v352 : │
00:01:57 #2424 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr () v351 │
00:01:57 #2425 [verbose] > │ let v353 : int32 │
00:01:57 #2426 [verbose] > │ = v337 + 1 │
00:01:57 #2427 [verbose] > │ v335.l0 <- v353 │
00:01:57 #2428 [verbose] > │ v335.l1 <- v352 │
00:01:57 #2429 [verbose] > │ () │
00:01:57 #2430 [verbose] > │ let v354 : │
00:01:57 #2431 [verbose] > │ num_complex_Complex<float> = v335.l1 │
00:01:57 #2432 [verbose] > │ v354 │
00:01:57 #2433 [verbose] > │ else │
00:01:57 #2434 [verbose] > │ let v355 : string = │
00:01:57 #2435 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2436 [verbose] > │ let v356 : │
00:01:57 #2437 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2438 [verbose] > │ (1.0, 0.0) v355 │
00:01:57 #2439 [verbose] > │ let v357 : string = │
00:01:57 #2440 [verbose] > │ "$0 - $1" │
00:01:57 #2441 [verbose] > │ let v358 : │
00:01:57 #2442 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2443 [verbose] > │ (v356, v315) v357 │
00:01:57 #2444 [verbose] > │ let v359 : string = │
00:01:57 #2445 [verbose] > │ $" s = mpmath.gamma(s)" │
00:01:57 #2446 [verbose] > │ let v360 : │
00:01:57 #2447 [verbose] > │ num_complex_Complex<float> = method3(v358) │
00:01:57 #2448 [verbose] > │ let v361 : │
00:01:57 #2449 [verbose] > │ Result<num_complex_Complex<float>, std_string_String> = method29(v0, v359, │
00:01:57 #2450 [verbose] > │ v360) │
00:01:57 #2451 [verbose] > │ let v362 : string = │
00:01:57 #2452 [verbose] > │ "v361.ok()" │
00:01:57 #2453 [verbose] > │ let v363 : │
00:01:57 #2454 [verbose] > │ num_complex_Complex<float> option = Fable.Core.RustInterop.emitRustExpr () │
00:01:57 #2455 [verbose] > │ v362 │
00:01:57 #2456 [verbose] > │ let v364 : │
00:01:57 #2457 [verbose] > │ (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #2458 [verbose] > │ let v365 : US0 = │
00:01:57 #2459 [verbose] > │ US0_1 │
00:01:57 #2460 [verbose] > │ let v366 : US0 = │
00:01:57 #2461 [verbose] > │ v363 |> Option.map v364 |> Option.defaultValue v365 │
00:01:57 #2462 [verbose] > │ let v367 : string = │
00:01:57 #2463 [verbose] > │ "f64::NAN" │
00:01:57 #2464 [verbose] > │ let v368 : float = │
00:01:57 #2465 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v367 │
00:01:57 #2466 [verbose] > │ let v369 : string = │
00:01:57 #2467 [verbose] > │ "f64::NAN" │
00:01:57 #2468 [verbose] > │ let v370 : float = │
00:01:57 #2469 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v369 │
00:01:57 #2470 [verbose] > │ let v371 : string = │
00:01:57 #2471 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2472 [verbose] > │ let v372 : │
00:01:57 #2473 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2474 [verbose] > │ (v368, v370) v371 │
00:01:57 #2475 [verbose] > │ let v375 : │
00:01:57 #2476 [verbose] > │ num_complex_Complex<float> = │
00:01:57 #2477 [verbose] > │ match v366 with │
00:01:57 #2478 [verbose] > │ | US0_1 -> (* │
00:01:57 #2479 [verbose] > │ None *) │
00:01:57 #2480 [verbose] > │ v372 │
00:01:57 #2481 [verbose] > │ | US0_0(v373) -> │
00:01:57 #2482 [verbose] > │ (* Some *) │
00:01:57 #2483 [verbose] > │ v373 │
00:01:57 #2484 [verbose] > │ let v376 : string = │
00:01:57 #2485 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2486 [verbose] > │ let v377 : │
00:01:57 #2487 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2488 [verbose] > │ (3.141592653589793, 0.0) v376 │
00:01:57 #2489 [verbose] > │ let v378 : string = │
00:01:57 #2490 [verbose] > │ "$0 * $1" │
00:01:57 #2491 [verbose] > │ let v379 : │
00:01:57 #2492 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2493 [verbose] > │ (v377, v315) v378 │
00:01:57 #2494 [verbose] > │ let v380 : string = │
00:01:57 #2495 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2496 [verbose] > │ let v381 : │
00:01:57 #2497 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2498 [verbose] > │ (2.0, 0.0) v380 │
00:01:57 #2499 [verbose] > │ let v382 : string = │
00:01:57 #2500 [verbose] > │ "v379 / v381" │
00:01:57 #2501 [verbose] > │ let v383 : │
00:01:57 #2502 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr () v382 │
00:01:57 #2503 [verbose] > │ let v384 : string = │
00:01:57 #2504 [verbose] > │ "v383.sin()" │
00:01:57 #2505 [verbose] > │ let v385 : │
00:01:57 #2506 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr () v384 │
00:01:57 #2507 [verbose] > │ let v386 : │
00:01:57 #2508 [verbose] > │ num_complex_Complex<float> = method7(v315) │
00:01:57 #2509 [verbose] > │ let v387 : string = │
00:01:57 #2510 [verbose] > │ "v386.re" │
00:01:57 #2511 [verbose] > │ let v388 : float = │
00:01:57 #2512 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v387 │
00:01:57 #2513 [verbose] > │ let v389 : float = │
00:01:57 #2514 [verbose] > │ 1.0 - v388 │
00:01:57 #2515 [verbose] > │ let v390 : │
00:01:57 #2516 [verbose] > │ num_complex_Complex<float> = method8(v315) │
00:01:57 #2517 [verbose] > │ let v391 : string = │
00:01:57 #2518 [verbose] > │ "v390.im" │
00:01:57 #2519 [verbose] > │ let v392 : float = │
00:01:57 #2520 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v391 │
00:01:57 #2521 [verbose] > │ let v393 : float = │
00:01:57 #2522 [verbose] > │ -v392 │
00:01:57 #2523 [verbose] > │ let v394 : string = │
00:01:57 #2524 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2525 [verbose] > │ let v395 : │
00:01:57 #2526 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2527 [verbose] > │ (v389, v393) v394 │
00:01:57 #2528 [verbose] > │ let v396 : │
00:01:57 #2529 [verbose] > │ num_complex_Complex<float> = method7(v395) │
00:01:57 #2530 [verbose] > │ let v397 : string = │
00:01:57 #2531 [verbose] > │ "v396.re" │
00:01:57 #2532 [verbose] > │ let v398 : float = │
00:01:57 #2533 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v397 │
00:01:57 #2534 [verbose] > │ let v399 : bool = │
00:01:57 #2535 [verbose] > │ v398 <= 1.0 │
00:01:57 #2536 [verbose] > │ let v402 : │
00:01:57 #2537 [verbose] > │ num_complex_Complex<float> = │
00:01:57 #2538 [verbose] > │ if v399 then │
00:01:57 #2539 [verbose] > │ let v400 : │
00:01:57 #2540 [verbose] > │ string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2541 [verbose] > │ let v401 : │
00:01:57 #2542 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2543 [verbose] > │ (0.0, 0.0) v400 │
00:01:57 #2544 [verbose] > │ v401 │
00:01:57 #2545 [verbose] > │ else │
00:01:57 #2546 [verbose] > │ v395 │
00:01:57 #2547 [verbose] > │ let v403 : string = │
00:01:57 #2548 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2549 [verbose] > │ let v404 : │
00:01:57 #2550 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2551 [verbose] > │ (2.0, 0.0) v403 │
00:01:57 #2552 [verbose] > │ let v405 : string = │
00:01:57 #2553 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2554 [verbose] > │ let v406 : │
00:01:57 #2555 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2556 [verbose] > │ (3.141592653589793, 0.0) v405 │
00:01:57 #2557 [verbose] > │ let v407 : │
00:01:57 #2558 [verbose] > │ num_complex_Complex<float> = method27(v406) │
00:01:57 #2559 [verbose] > │ let v408 : │
00:01:57 #2560 [verbose] > │ num_complex_Complex<float> = method28(v315) │
00:01:57 #2561 [verbose] > │ let v409 : string = │
00:01:57 #2562 [verbose] > │ "num_complex::Complex::powc(v407, v408)" │
00:01:57 #2563 [verbose] > │ let v410 : │
00:01:57 #2564 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr () v409 │
00:01:57 #2565 [verbose] > │ let v411 : string = │
00:01:57 #2566 [verbose] > │ "$0 * $1" │
00:01:57 #2567 [verbose] > │ let v412 : │
00:01:57 #2568 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2569 [verbose] > │ (v404, v410) v411 │
00:01:57 #2570 [verbose] > │ let v413 : string = │
00:01:57 #2571 [verbose] > │ "$0 * $1" │
00:01:57 #2572 [verbose] > │ let v414 : │
00:01:57 #2573 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2574 [verbose] > │ (v412, v385) v413 │
00:01:57 #2575 [verbose] > │ let v415 : string = │
00:01:57 #2576 [verbose] > │ "$0 * $1" │
00:01:57 #2577 [verbose] > │ let v416 : │
00:01:57 #2578 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2579 [verbose] > │ (v414, v375) v415 │
00:01:57 #2580 [verbose] > │ let v417 : string = │
00:01:57 #2581 [verbose] > │ "$0 * $1" │
00:01:57 #2582 [verbose] > │ let v418 : │
00:01:57 #2583 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2584 [verbose] > │ (v416, v402) v417 │
00:01:57 #2585 [verbose] > │ v418 │
00:01:57 #2586 [verbose] > │ let v421 : string = │
00:01:57 #2587 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2588 [verbose] > │ let v422 : │
00:01:57 #2589 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2590 [verbose] > │ (2.0, 0.0) v421 │
00:01:57 #2591 [verbose] > │ let v423 : string = │
00:01:57 #2592 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2593 [verbose] > │ let v424 : │
00:01:57 #2594 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2595 [verbose] > │ (3.141592653589793, 0.0) v423 │
00:01:57 #2596 [verbose] > │ let v425 : │
00:01:57 #2597 [verbose] > │ num_complex_Complex<float> = method27(v424) │
00:01:57 #2598 [verbose] > │ let v426 : │
00:01:57 #2599 [verbose] > │ num_complex_Complex<float> = method28(v235) │
00:01:57 #2600 [verbose] > │ let v427 : string = │
00:01:57 #2601 [verbose] > │ "num_complex::Complex::powc(v425, v426)" │
00:01:57 #2602 [verbose] > │ let v428 : │
00:01:57 #2603 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr () v427 │
00:01:57 #2604 [verbose] > │ let v429 : string = "$0 * $1" │
00:01:57 #2605 [verbose] > │ let v430 : │
00:01:57 #2606 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2607 [verbose] > │ (v422, v428) v429 │
00:01:57 #2608 [verbose] > │ let v431 : string = "$0 * $1" │
00:01:57 #2609 [verbose] > │ let v432 : │
00:01:57 #2610 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2611 [verbose] > │ (v430, v305) v431 │
00:01:57 #2612 [verbose] > │ let v433 : string = "$0 * $1" │
00:01:57 #2613 [verbose] > │ let v434 : │
00:01:57 #2614 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2615 [verbose] > │ (v432, v295) v433 │
00:01:57 #2616 [verbose] > │ let v435 : string = "$0 * $1" │
00:01:57 #2617 [verbose] > │ let v436 : │
00:01:57 #2618 [verbose] > │ num_complex_Complex<float> = Fable.Core.RustInterop.emitRustExpr struct │
00:01:57 #2619 [verbose] > │ (v434, v420) v435 │
00:01:57 #2620 [verbose] > │ v436 │
00:01:57 #2621 [verbose] > │ let v439 : string = │
00:01:57 #2622 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2623 [verbose] > │ let v440 : num_complex_Complex<float> = │
00:01:57 #2624 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (2.0, 0.0) v439 │
00:01:57 #2625 [verbose] > │ let v441 : string = │
00:01:57 #2626 [verbose] > │ "num_complex::Complex::new($0, $1)" │
00:01:57 #2627 [verbose] > │ let v442 : num_complex_Complex<float> = │
00:01:57 #2628 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (3.141592653589793, 0.0) v441 │
00:01:57 #2629 [verbose] > │ let v443 : num_complex_Complex<float> = │
00:01:57 #2630 [verbose] > │ method27(v442) │
00:01:57 #2631 [verbose] > │ let v444 : num_complex_Complex<float> = │
00:01:57 #2632 [verbose] > │ method28(v155) │
00:01:57 #2633 [verbose] > │ let v445 : string = │
00:01:57 #2634 [verbose] > │ "num_complex::Complex::powc(v443, v444)" │
00:01:57 #2635 [verbose] > │ let v446 : num_complex_Complex<float> = │
00:01:57 #2636 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v445 │
00:01:57 #2637 [verbose] > │ let v447 : string = "$0 * $1" │
00:01:57 #2638 [verbose] > │ let v448 : num_complex_Complex<float> = │
00:01:57 #2639 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v440, v446) v447 │
00:01:57 #2640 [verbose] > │ let v449 : string = "$0 * $1" │
00:01:57 #2641 [verbose] > │ let v450 : num_complex_Complex<float> = │
00:01:57 #2642 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v448, v225) v449 │
00:01:57 #2643 [verbose] > │ let v451 : string = "$0 * $1" │
00:01:57 #2644 [verbose] > │ let v452 : num_complex_Complex<float> = │
00:01:57 #2645 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v450, v215) v451 │
00:01:57 #2646 [verbose] > │ let v453 : string = "$0 * $1" │
00:01:57 #2647 [verbose] > │ let v454 : num_complex_Complex<float> = │
00:01:57 #2648 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v452, v438) v453 │
00:01:57 #2649 [verbose] > │ v454 │
00:01:57 #2650 [verbose] > │ let v457 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2651 [verbose] > │ let v458 : num_complex_Complex<float> = │
00:01:57 #2652 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (2.0, 0.0) v457 │
00:01:57 #2653 [verbose] > │ let v459 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2654 [verbose] > │ let v460 : num_complex_Complex<float> = │
00:01:57 #2655 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (3.141592653589793, 0.0) v459 │
00:01:57 #2656 [verbose] > │ let v461 : num_complex_Complex<float> = method27(v460) │
00:01:57 #2657 [verbose] > │ let v462 : num_complex_Complex<float> = method28(v75) │
00:01:57 #2658 [verbose] > │ let v463 : string = "num_complex::Complex::powc(v461, │
00:01:57 #2659 [verbose] > │ v462)" │
00:01:57 #2660 [verbose] > │ let v464 : num_complex_Complex<float> = │
00:01:57 #2661 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v463 │
00:01:57 #2662 [verbose] > │ let v465 : string = "$0 * $1" │
00:01:57 #2663 [verbose] > │ let v466 : num_complex_Complex<float> = │
00:01:57 #2664 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v458, v464) v465 │
00:01:57 #2665 [verbose] > │ let v467 : string = "$0 * $1" │
00:01:57 #2666 [verbose] > │ let v468 : num_complex_Complex<float> = │
00:01:57 #2667 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v466, v145) v467 │
00:01:57 #2668 [verbose] > │ let v469 : string = "$0 * $1" │
00:01:57 #2669 [verbose] > │ let v470 : num_complex_Complex<float> = │
00:01:57 #2670 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v468, v135) v469 │
00:01:57 #2671 [verbose] > │ let v471 : string = "$0 * $1" │
00:01:57 #2672 [verbose] > │ let v472 : num_complex_Complex<float> = │
00:01:57 #2673 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v470, v456) v471 │
00:01:57 #2674 [verbose] > │ v472 │
00:01:57 #2675 [verbose] > │ let v475 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2676 [verbose] > │ let v476 : num_complex_Complex<float> = │
00:01:57 #2677 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (2.0, 0.0) v475 │
00:01:57 #2678 [verbose] > │ let v477 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2679 [verbose] > │ let v478 : num_complex_Complex<float> = │
00:01:57 #2680 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (3.141592653589793, 0.0) v477 │
00:01:57 #2681 [verbose] > │ let v479 : num_complex_Complex<float> = method27(v478) │
00:01:57 #2682 [verbose] > │ let v480 : num_complex_Complex<float> = method28(v1) │
00:01:57 #2683 [verbose] > │ let v481 : string = "num_complex::Complex::powc(v479, v480)" │
00:01:57 #2684 [verbose] > │ let v482 : num_complex_Complex<float> = │
00:01:57 #2685 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v481 │
00:01:57 #2686 [verbose] > │ let v483 : string = "$0 * $1" │
00:01:57 #2687 [verbose] > │ let v484 : num_complex_Complex<float> = │
00:01:57 #2688 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v476, v482) v483 │
00:01:57 #2689 [verbose] > │ let v485 : string = "$0 * $1" │
00:01:57 #2690 [verbose] > │ let v486 : num_complex_Complex<float> = │
00:01:57 #2691 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v484, v65) v485 │
00:01:57 #2692 [verbose] > │ let v487 : string = "$0 * $1" │
00:01:57 #2693 [verbose] > │ let v488 : num_complex_Complex<float> = │
00:01:57 #2694 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v486, v55) v487 │
00:01:57 #2695 [verbose] > │ let v489 : string = "$0 * $1" │
00:01:57 #2696 [verbose] > │ let v490 : num_complex_Complex<float> = │
00:01:57 #2697 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v488, v474) v489 │
00:01:57 #2698 [verbose] > │ v490 │
00:01:57 #2699 [verbose] > │ and method31 (v0 : bool) : bool = │
00:01:57 #2700 [verbose] > │ v0 │
00:01:57 #2701 [verbose] > │ and method1 (v0 : pyo3_Python) : unit = │
00:01:57 #2702 [verbose] > │ let v1 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2703 [verbose] > │ let v2 : num_complex_Complex<float> = │
00:01:57 #2704 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (2.0, 0.0) v1 │
00:01:57 #2705 [verbose] > │ let v3 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2706 [verbose] > │ let v4 : num_complex_Complex<float> = │
00:01:57 #2707 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (-1.0, 0.0) v3 │
00:01:57 #2708 [verbose] > │ let v5 : (struct (num_complex_Complex<float> * float) []) = [|struct │
00:01:57 #2709 [verbose] > │ (v2, 1.6449340668482264); struct (v4, -0.08333333333333333)|] │
00:01:57 #2710 [verbose] > │ let v6 : int32 = v5.Length │
00:01:57 #2711 [verbose] > │ let v7 : Mut0 = {l0 = 0} : Mut0 │
00:01:57 #2712 [verbose] > │ while method2(v6, v7) do │
00:01:57 #2713 [verbose] > │ let v9 : int32 = v7.l0 │
00:01:57 #2714 [verbose] > │ let struct (v10 : num_complex_Complex<float>, v11 : float) = v5.[int │
00:01:57 #2715 [verbose] > │ v9] │
00:01:57 #2716 [verbose] > │ let v12 : string = $" s = mpmath.zeta(s)" │
00:01:57 #2717 [verbose] > │ let v13 : num_complex_Complex<float> = method3(v10) │
00:01:57 #2718 [verbose] > │ let v14 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #2719 [verbose] > │ method4(v0, v12, v13) │
00:01:57 #2720 [verbose] > │ let v15 : num_complex_Complex<float> = method24(v0, v10) │
00:01:57 #2721 [verbose] > │ let v16 : string = "v14.ok()" │
00:01:57 #2722 [verbose] > │ let v17 : num_complex_Complex<float> option = │
00:01:57 #2723 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v16 │
00:01:57 #2724 [verbose] > │ let v18 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #2725 [verbose] > │ let v19 : US0 = US0_1 │
00:01:57 #2726 [verbose] > │ let v20 : US0 = v17 |> Option.map v18 |> Option.defaultValue v19 │
00:01:57 #2727 [verbose] > │ let v21 : string = "f64::NAN" │
00:01:57 #2728 [verbose] > │ let v22 : float = Fable.Core.RustInterop.emitRustExpr () v21 │
00:01:57 #2729 [verbose] > │ let v23 : string = "f64::NAN" │
00:01:57 #2730 [verbose] > │ let v24 : float = Fable.Core.RustInterop.emitRustExpr () v23 │
00:01:57 #2731 [verbose] > │ let v25 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2732 [verbose] > │ let v26 : num_complex_Complex<float> = │
00:01:57 #2733 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v22, v24) v25 │
00:01:57 #2734 [verbose] > │ let v29 : num_complex_Complex<float> = │
00:01:57 #2735 [verbose] > │ match v20 with │
00:01:57 #2736 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #2737 [verbose] > │ v26 │
00:01:57 #2738 [verbose] > │ | US0_0(v27) -> (* Some *) │
00:01:57 #2739 [verbose] > │ v27 │
00:01:57 #2740 [verbose] > │ let v30 : num_complex_Complex<float> = method8(v29) │
00:01:57 #2741 [verbose] > │ let v31 : string = "v30.im" │
00:01:57 #2742 [verbose] > │ let v32 : float = Fable.Core.RustInterop.emitRustExpr () v31 │
00:01:57 #2743 [verbose] > │ let v33 : string = $"%A{v32}" │
00:01:57 #2744 [verbose] > │ System.Console.WriteLine v33 │
00:01:57 #2745 [verbose] > │ let v34 : bool = v32 = 0.0 │
00:01:57 #2746 [verbose] > │ let v36 : bool = │
00:01:57 #2747 [verbose] > │ if v34 then │
00:01:57 #2748 [verbose] > │ true │
00:01:57 #2749 [verbose] > │ else │
00:01:57 #2750 [verbose] > │ method31(v34) │
00:01:57 #2751 [verbose] > │ let v37 : string = $"__expect / actual: %A{v32} / expected: %A{0.0}" │
00:01:57 #2752 [verbose] > │ let v38 : bool = v36 = false │
00:01:57 #2753 [verbose] > │ if v38 then │
00:01:57 #2754 [verbose] > │ failwith<unit> v37 │
00:01:57 #2755 [verbose] > │ let v39 : num_complex_Complex<float> = method7(v29) │
00:01:57 #2756 [verbose] > │ let v40 : string = "v39.re" │
00:01:57 #2757 [verbose] > │ let v41 : float = Fable.Core.RustInterop.emitRustExpr () v40 │
00:01:57 #2758 [verbose] > │ let v42 : float = v41 - v11 │
00:01:57 #2759 [verbose] > │ let v43 : float = -v42 │
00:01:57 #2760 [verbose] > │ let v44 : bool = v42 >= v43 │
00:01:57 #2761 [verbose] > │ let v45 : float = │
00:01:57 #2762 [verbose] > │ if v44 then │
00:01:57 #2763 [verbose] > │ v42 │
00:01:57 #2764 [verbose] > │ else │
00:01:57 #2765 [verbose] > │ v43 │
00:01:57 #2766 [verbose] > │ let v46 : string = $"%A{v45}" │
00:01:57 #2767 [verbose] > │ System.Console.WriteLine v46 │
00:01:57 #2768 [verbose] > │ let v47 : bool = v45 < 0.0001 │
00:01:57 #2769 [verbose] > │ let v49 : bool = │
00:01:57 #2770 [verbose] > │ if v47 then │
00:01:57 #2771 [verbose] > │ true │
00:01:57 #2772 [verbose] > │ else │
00:01:57 #2773 [verbose] > │ method31(v47) │
00:01:57 #2774 [verbose] > │ let v50 : string = $"__expect / actual: %A{v45} / expected: │
00:01:57 #2775 [verbose] > │ %A{0.0001}" │
00:01:57 #2776 [verbose] > │ let v51 : bool = v49 = false │
00:01:57 #2777 [verbose] > │ if v51 then │
00:01:57 #2778 [verbose] > │ failwith<unit> v50 │
00:01:57 #2779 [verbose] > │ let v52 : int32 = v9 + 1 │
00:01:57 #2780 [verbose] > │ v7.l0 <- v52 │
00:01:57 #2781 [verbose] > │ () │
00:01:57 #2782 [verbose] > │ () │
00:01:57 #2783 [verbose] > │ and method32 (v0 : Result<unit, pyo3_PyErr>) : Result<unit, pyo3_PyErr> = │
00:01:57 #2784 [verbose] > │ v0 │
00:01:57 #2785 [verbose] > │ and method33 (v0 : Result<unit, pyo3_PyErr>) : Result<unit, pyo3_PyErr> = │
00:01:57 #2786 [verbose] > │ v0 │
00:01:57 #2787 [verbose] > │ and method0 () : unit = │
00:01:57 #2788 [verbose] > │ let v0 : string = "pyo3::prepare_freethreaded_python()" │
00:01:57 #2789 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:57 #2790 [verbose] > │ let v1 : string = "let __result = pyo3::Python::with_gil(|py| -> │
00:01:57 #2791 [verbose] > │ pyo3::PyResult<()> { //" │
00:01:57 #2792 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:57 #2793 [verbose] > │ let v2 : string = "py" │
00:01:57 #2794 [verbose] > │ let v3 : pyo3_Python = Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:57 #2795 [verbose] > │ method1(v3) │
00:01:57 #2796 [verbose] > │ let v4 : Result<unit, pyo3_PyErr> = Ok () │
00:01:57 #2797 [verbose] > │ let v5 : Result<unit, pyo3_PyErr> = method32(v4) │
00:01:57 #2798 [verbose] > │ let v6 : string = "v5 }})" │
00:01:57 #2799 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:57 #2800 [verbose] > │ let v7 : string = "{ //" │
00:01:57 #2801 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #2802 [verbose] > │ let v8 : string = "__result" │
00:01:57 #2803 [verbose] > │ let v9 : Result<unit, pyo3_PyErr> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #2804 [verbose] > │ () v8 │
00:01:57 #2805 [verbose] > │ let v10 : Result<unit, pyo3_PyErr> = method33(v9) │
00:01:57 #2806 [verbose] > │ let v11 : string = "v10.unwrap()" │
00:01:57 #2807 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:57 #2808 [verbose] > │ () │
00:01:57 #2809 [verbose] > │ and method35 (v0 : pyo3_Python) : unit = │
00:01:57 #2810 [verbose] > │ let v1 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2811 [verbose] > │ let v2 : num_complex_Complex<float> = │
00:01:57 #2812 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (2.0, -2.0) v1 │
00:01:57 #2813 [verbose] > │ let v3 : string = $" s = mpmath.zeta(s)" │
00:01:57 #2814 [verbose] > │ let v4 : num_complex_Complex<float> = method3(v2) │
00:01:57 #2815 [verbose] > │ let v5 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #2816 [verbose] > │ method4(v0, v3, v4) │
00:01:57 #2817 [verbose] > │ let v6 : num_complex_Complex<float> = method24(v0, v2) │
00:01:57 #2818 [verbose] > │ let v7 : string = "v5.ok()" │
00:01:57 #2819 [verbose] > │ let v8 : num_complex_Complex<float> option = │
00:01:57 #2820 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #2821 [verbose] > │ let v9 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #2822 [verbose] > │ let v10 : US0 = US0_1 │
00:01:57 #2823 [verbose] > │ let v11 : US0 = v8 |> Option.map v9 |> Option.defaultValue v10 │
00:01:57 #2824 [verbose] > │ let v12 : string = "f64::NAN" │
00:01:57 #2825 [verbose] > │ let v13 : float = Fable.Core.RustInterop.emitRustExpr () v12 │
00:01:57 #2826 [verbose] > │ let v14 : string = "f64::NAN" │
00:01:57 #2827 [verbose] > │ let v15 : float = Fable.Core.RustInterop.emitRustExpr () v14 │
00:01:57 #2828 [verbose] > │ let v16 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2829 [verbose] > │ let v17 : num_complex_Complex<float> = │
00:01:57 #2830 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v13, v15) v16 │
00:01:57 #2831 [verbose] > │ let v20 : num_complex_Complex<float> = │
00:01:57 #2832 [verbose] > │ match v11 with │
00:01:57 #2833 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #2834 [verbose] > │ v17 │
00:01:57 #2835 [verbose] > │ | US0_0(v18) -> (* Some *) │
00:01:57 #2836 [verbose] > │ v18 │
00:01:57 #2837 [verbose] > │ let v21 : num_complex_Complex<float> = method7(v20) │
00:01:57 #2838 [verbose] > │ let v22 : string = "v21.re" │
00:01:57 #2839 [verbose] > │ let v23 : float = Fable.Core.RustInterop.emitRustExpr () v22 │
00:01:57 #2840 [verbose] > │ let v24 : float = v23 - 0.8673 │
00:01:57 #2841 [verbose] > │ let v25 : float = -v24 │
00:01:57 #2842 [verbose] > │ let v26 : bool = v24 >= v25 │
00:01:57 #2843 [verbose] > │ let v27 : float = │
00:01:57 #2844 [verbose] > │ if v26 then │
00:01:57 #2845 [verbose] > │ v24 │
00:01:57 #2846 [verbose] > │ else │
00:01:57 #2847 [verbose] > │ v25 │
00:01:57 #2848 [verbose] > │ let v28 : string = $"%A{v27}" │
00:01:57 #2849 [verbose] > │ System.Console.WriteLine v28 │
00:01:57 #2850 [verbose] > │ let v29 : bool = v27 < 0.001 │
00:01:57 #2851 [verbose] > │ let v31 : bool = │
00:01:57 #2852 [verbose] > │ if v29 then │
00:01:57 #2853 [verbose] > │ true │
00:01:57 #2854 [verbose] > │ else │
00:01:57 #2855 [verbose] > │ method31(v29) │
00:01:57 #2856 [verbose] > │ let v32 : string = $"__expect / actual: %A{v27} / expected: %A{0.001}" │
00:01:57 #2857 [verbose] > │ let v33 : bool = v31 = false │
00:01:57 #2858 [verbose] > │ if v33 then │
00:01:57 #2859 [verbose] > │ failwith<unit> v32 │
00:01:57 #2860 [verbose] > │ let v34 : num_complex_Complex<float> = method8(v20) │
00:01:57 #2861 [verbose] > │ let v35 : string = "v34.im" │
00:01:57 #2862 [verbose] > │ let v36 : float = Fable.Core.RustInterop.emitRustExpr () v35 │
00:01:57 #2863 [verbose] > │ let v37 : float = v36 - 0.275 │
00:01:57 #2864 [verbose] > │ let v38 : float = -v37 │
00:01:57 #2865 [verbose] > │ let v39 : bool = v37 >= v38 │
00:01:57 #2866 [verbose] > │ let v40 : float = │
00:01:57 #2867 [verbose] > │ if v39 then │
00:01:57 #2868 [verbose] > │ v37 │
00:01:57 #2869 [verbose] > │ else │
00:01:57 #2870 [verbose] > │ v38 │
00:01:57 #2871 [verbose] > │ let v41 : string = $"%A{v40}" │
00:01:57 #2872 [verbose] > │ System.Console.WriteLine v41 │
00:01:57 #2873 [verbose] > │ let v42 : bool = v40 < 0.001 │
00:01:57 #2874 [verbose] > │ let v44 : bool = │
00:01:57 #2875 [verbose] > │ if v42 then │
00:01:57 #2876 [verbose] > │ true │
00:01:57 #2877 [verbose] > │ else │
00:01:57 #2878 [verbose] > │ method31(v42) │
00:01:57 #2879 [verbose] > │ let v45 : string = $"__expect / actual: %A{v40} / expected: %A{0.001}" │
00:01:57 #2880 [verbose] > │ let v46 : bool = v44 = false │
00:01:57 #2881 [verbose] > │ if v46 then │
00:01:57 #2882 [verbose] > │ failwith<unit> v45 │
00:01:57 #2883 [verbose] > │ and method34 () : unit = │
00:01:57 #2884 [verbose] > │ let v0 : string = "pyo3::prepare_freethreaded_python()" │
00:01:57 #2885 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:57 #2886 [verbose] > │ let v1 : string = "let __result = pyo3::Python::with_gil(|py| -> │
00:01:57 #2887 [verbose] > │ pyo3::PyResult<()> { //" │
00:01:57 #2888 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:57 #2889 [verbose] > │ let v2 : string = "py" │
00:01:57 #2890 [verbose] > │ let v3 : pyo3_Python = Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:57 #2891 [verbose] > │ method35(v3) │
00:01:57 #2892 [verbose] > │ let v4 : Result<unit, pyo3_PyErr> = Ok () │
00:01:57 #2893 [verbose] > │ let v5 : Result<unit, pyo3_PyErr> = method32(v4) │
00:01:57 #2894 [verbose] > │ let v6 : string = "v5 }})" │
00:01:57 #2895 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:57 #2896 [verbose] > │ let v7 : string = "{ //" │
00:01:57 #2897 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #2898 [verbose] > │ let v8 : string = "__result" │
00:01:57 #2899 [verbose] > │ let v9 : Result<unit, pyo3_PyErr> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #2900 [verbose] > │ () v8 │
00:01:57 #2901 [verbose] > │ let v10 : Result<unit, pyo3_PyErr> = method33(v9) │
00:01:57 #2902 [verbose] > │ let v11 : string = "v10.unwrap()" │
00:01:57 #2903 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:57 #2904 [verbose] > │ () │
00:01:57 #2905 [verbose] > │ and method38 () : UH0 = │
00:01:57 #2906 [verbose] > │ let v0 : UH0 = UH0_0 │
00:01:57 #2907 [verbose] > │ let v1 : UH0 = UH0_1(-40.0, v0) │
00:01:57 #2908 [verbose] > │ let v2 : UH0 = UH0_1(-38.0, v1) │
00:01:57 #2909 [verbose] > │ let v3 : UH0 = UH0_1(-36.0, v2) │
00:01:57 #2910 [verbose] > │ let v4 : UH0 = UH0_1(-34.0, v3) │
00:01:57 #2911 [verbose] > │ let v5 : UH0 = UH0_1(-32.0, v4) │
00:01:57 #2912 [verbose] > │ let v6 : UH0 = UH0_1(-30.0, v5) │
00:01:57 #2913 [verbose] > │ let v7 : UH0 = UH0_1(-28.0, v6) │
00:01:57 #2914 [verbose] > │ let v8 : UH0 = UH0_1(-26.0, v7) │
00:01:57 #2915 [verbose] > │ let v9 : UH0 = UH0_1(-24.0, v8) │
00:01:57 #2916 [verbose] > │ let v10 : UH0 = UH0_1(-22.0, v9) │
00:01:57 #2917 [verbose] > │ let v11 : UH0 = UH0_1(-20.0, v10) │
00:01:57 #2918 [verbose] > │ let v12 : UH0 = UH0_1(-18.0, v11) │
00:01:57 #2919 [verbose] > │ let v13 : UH0 = UH0_1(-16.0, v12) │
00:01:57 #2920 [verbose] > │ let v14 : UH0 = UH0_1(-14.0, v13) │
00:01:57 #2921 [verbose] > │ let v15 : UH0 = UH0_1(-12.0, v14) │
00:01:57 #2922 [verbose] > │ let v16 : UH0 = UH0_1(-10.0, v15) │
00:01:57 #2923 [verbose] > │ let v17 : UH0 = UH0_1(-8.0, v16) │
00:01:57 #2924 [verbose] > │ let v18 : UH0 = UH0_1(-6.0, v17) │
00:01:57 #2925 [verbose] > │ let v19 : UH0 = UH0_1(-4.0, v18) │
00:01:57 #2926 [verbose] > │ UH0_1(-2.0, v19) │
00:01:57 #2927 [verbose] > │ and method39 (v0 : pyo3_Python, v1 : UH0) : unit = │
00:01:57 #2928 [verbose] > │ match v1 with │
00:01:57 #2929 [verbose] > │ | UH0_1(v2, v3) -> (* Cons *) │
00:01:57 #2930 [verbose] > │ let v4 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2931 [verbose] > │ let v5 : num_complex_Complex<float> = │
00:01:57 #2932 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v2, 0.0) v4 │
00:01:57 #2933 [verbose] > │ let v6 : string = $" s = mpmath.zeta(s)" │
00:01:57 #2934 [verbose] > │ let v7 : num_complex_Complex<float> = method3(v5) │
00:01:57 #2935 [verbose] > │ let v8 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #2936 [verbose] > │ method4(v0, v6, v7) │
00:01:57 #2937 [verbose] > │ let v9 : num_complex_Complex<float> = method24(v0, v5) │
00:01:57 #2938 [verbose] > │ let v10 : string = "v8.ok()" │
00:01:57 #2939 [verbose] > │ let v11 : num_complex_Complex<float> option = │
00:01:57 #2940 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v10 │
00:01:57 #2941 [verbose] > │ let v12 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #2942 [verbose] > │ let v13 : US0 = US0_1 │
00:01:57 #2943 [verbose] > │ let v14 : US0 = v11 |> Option.map v12 |> Option.defaultValue v13 │
00:01:57 #2944 [verbose] > │ let v15 : string = "f64::NAN" │
00:01:57 #2945 [verbose] > │ let v16 : float = Fable.Core.RustInterop.emitRustExpr () v15 │
00:01:57 #2946 [verbose] > │ let v17 : string = "f64::NAN" │
00:01:57 #2947 [verbose] > │ let v18 : float = Fable.Core.RustInterop.emitRustExpr () v17 │
00:01:57 #2948 [verbose] > │ let v19 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #2949 [verbose] > │ let v20 : num_complex_Complex<float> = │
00:01:57 #2950 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v16, v18) v19 │
00:01:57 #2951 [verbose] > │ let v23 : num_complex_Complex<float> = │
00:01:57 #2952 [verbose] > │ match v14 with │
00:01:57 #2953 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #2954 [verbose] > │ v20 │
00:01:57 #2955 [verbose] > │ | US0_0(v21) -> (* Some *) │
00:01:57 #2956 [verbose] > │ v21 │
00:01:57 #2957 [verbose] > │ let v24 : num_complex_Complex<float> = method7(v23) │
00:01:57 #2958 [verbose] > │ let v25 : string = "v24.re" │
00:01:57 #2959 [verbose] > │ let v26 : float = Fable.Core.RustInterop.emitRustExpr () v25 │
00:01:57 #2960 [verbose] > │ let v27 : string = $"%A{v26}" │
00:01:57 #2961 [verbose] > │ System.Console.WriteLine v27 │
00:01:57 #2962 [verbose] > │ let v28 : bool = v26 = 0.0 │
00:01:57 #2963 [verbose] > │ let v30 : bool = │
00:01:57 #2964 [verbose] > │ if v28 then │
00:01:57 #2965 [verbose] > │ true │
00:01:57 #2966 [verbose] > │ else │
00:01:57 #2967 [verbose] > │ method31(v28) │
00:01:57 #2968 [verbose] > │ let v31 : string = $"__expect / actual: %A{v26} / expected: %A{0.0}" │
00:01:57 #2969 [verbose] > │ let v32 : bool = v30 = false │
00:01:57 #2970 [verbose] > │ if v32 then │
00:01:57 #2971 [verbose] > │ failwith<unit> v31 │
00:01:57 #2972 [verbose] > │ let v33 : num_complex_Complex<float> = method8(v23) │
00:01:57 #2973 [verbose] > │ let v34 : string = "v33.im" │
00:01:57 #2974 [verbose] > │ let v35 : float = Fable.Core.RustInterop.emitRustExpr () v34 │
00:01:57 #2975 [verbose] > │ let v36 : string = $"%A{v35}" │
00:01:57 #2976 [verbose] > │ System.Console.WriteLine v36 │
00:01:57 #2977 [verbose] > │ let v37 : bool = v35 = 0.0 │
00:01:57 #2978 [verbose] > │ let v39 : bool = │
00:01:57 #2979 [verbose] > │ if v37 then │
00:01:57 #2980 [verbose] > │ true │
00:01:57 #2981 [verbose] > │ else │
00:01:57 #2982 [verbose] > │ method31(v37) │
00:01:57 #2983 [verbose] > │ let v40 : string = $"__expect / actual: %A{v35} / expected: %A{0.0}" │
00:01:57 #2984 [verbose] > │ let v41 : bool = v39 = false │
00:01:57 #2985 [verbose] > │ if v41 then │
00:01:57 #2986 [verbose] > │ failwith<unit> v40 │
00:01:57 #2987 [verbose] > │ method39(v0, v3) │
00:01:57 #2988 [verbose] > │ | UH0_0 -> (* Nil *) │
00:01:57 #2989 [verbose] > │ () │
00:01:57 #2990 [verbose] > │ and method37 (v0 : pyo3_Python) : unit = │
00:01:57 #2991 [verbose] > │ let v1 : UH0 = method38() │
00:01:57 #2992 [verbose] > │ method39(v0, v1) │
00:01:57 #2993 [verbose] > │ and method36 () : unit = │
00:01:57 #2994 [verbose] > │ let v0 : string = "pyo3::prepare_freethreaded_python()" │
00:01:57 #2995 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:57 #2996 [verbose] > │ let v1 : string = "let __result = pyo3::Python::with_gil(|py| -> │
00:01:57 #2997 [verbose] > │ pyo3::PyResult<()> { //" │
00:01:57 #2998 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:57 #2999 [verbose] > │ let v2 : string = "py" │
00:01:57 #3000 [verbose] > │ let v3 : pyo3_Python = Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:57 #3001 [verbose] > │ method37(v3) │
00:01:57 #3002 [verbose] > │ let v4 : Result<unit, pyo3_PyErr> = Ok () │
00:01:57 #3003 [verbose] > │ let v5 : Result<unit, pyo3_PyErr> = method32(v4) │
00:01:57 #3004 [verbose] > │ let v6 : string = "v5 }})" │
00:01:57 #3005 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:57 #3006 [verbose] > │ let v7 : string = "{ //" │
00:01:57 #3007 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #3008 [verbose] > │ let v8 : string = "__result" │
00:01:57 #3009 [verbose] > │ let v9 : Result<unit, pyo3_PyErr> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #3010 [verbose] > │ () v8 │
00:01:57 #3011 [verbose] > │ let v10 : Result<unit, pyo3_PyErr> = method33(v9) │
00:01:57 #3012 [verbose] > │ let v11 : string = "v10.unwrap()" │
00:01:57 #3013 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:57 #3014 [verbose] > │ () │
00:01:57 #3015 [verbose] > │ and method41 (v0 : pyo3_Python) : unit = │
00:01:57 #3016 [verbose] > │ let v1 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3017 [verbose] > │ let v2 : num_complex_Complex<float> = │
00:01:57 #3018 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.5, 14.134725) v1 │
00:01:57 #3019 [verbose] > │ let v3 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3020 [verbose] > │ let v4 : num_complex_Complex<float> = │
00:01:57 #3021 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.5, 21.02204) v3 │
00:01:57 #3022 [verbose] > │ let v5 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3023 [verbose] > │ let v6 : num_complex_Complex<float> = │
00:01:57 #3024 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.5, 25.010857) v5 │
00:01:57 #3025 [verbose] > │ let v7 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3026 [verbose] > │ let v8 : num_complex_Complex<float> = │
00:01:57 #3027 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.5, 30.424876) v7 │
00:01:57 #3028 [verbose] > │ let v9 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3029 [verbose] > │ let v10 : num_complex_Complex<float> = │
00:01:57 #3030 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.5, 32.935062) v9 │
00:01:57 #3031 [verbose] > │ let v11 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3032 [verbose] > │ let v12 : num_complex_Complex<float> = │
00:01:57 #3033 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.5, 37.586178) v11 │
00:01:57 #3034 [verbose] > │ let v13 : (num_complex_Complex<float> []) = [|v2; v4; v6; v8; v10; v12|] │
00:01:57 #3035 [verbose] > │ let v14 : int32 = v13.Length │
00:01:57 #3036 [verbose] > │ let v15 : Mut0 = {l0 = 0} : Mut0 │
00:01:57 #3037 [verbose] > │ while method2(v14, v15) do │
00:01:57 #3038 [verbose] > │ let v17 : int32 = v15.l0 │
00:01:57 #3039 [verbose] > │ let v18 : num_complex_Complex<float> = v13.[int v17] │
00:01:57 #3040 [verbose] > │ let v19 : string = $" s = mpmath.zeta(s)" │
00:01:57 #3041 [verbose] > │ let v20 : num_complex_Complex<float> = method3(v18) │
00:01:57 #3042 [verbose] > │ let v21 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #3043 [verbose] > │ method4(v0, v19, v20) │
00:01:57 #3044 [verbose] > │ let v22 : num_complex_Complex<float> = method24(v0, v18) │
00:01:57 #3045 [verbose] > │ let v23 : string = "v21.ok()" │
00:01:57 #3046 [verbose] > │ let v24 : num_complex_Complex<float> option = │
00:01:57 #3047 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v23 │
00:01:57 #3048 [verbose] > │ let v25 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #3049 [verbose] > │ let v26 : US0 = US0_1 │
00:01:57 #3050 [verbose] > │ let v27 : US0 = v24 |> Option.map v25 |> Option.defaultValue v26 │
00:01:57 #3051 [verbose] > │ let v28 : string = "f64::NAN" │
00:01:57 #3052 [verbose] > │ let v29 : float = Fable.Core.RustInterop.emitRustExpr () v28 │
00:01:57 #3053 [verbose] > │ let v30 : string = "f64::NAN" │
00:01:57 #3054 [verbose] > │ let v31 : float = Fable.Core.RustInterop.emitRustExpr () v30 │
00:01:57 #3055 [verbose] > │ let v32 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3056 [verbose] > │ let v33 : num_complex_Complex<float> = │
00:01:57 #3057 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v29, v31) v32 │
00:01:57 #3058 [verbose] > │ let v36 : num_complex_Complex<float> = │
00:01:57 #3059 [verbose] > │ match v27 with │
00:01:57 #3060 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #3061 [verbose] > │ v33 │
00:01:57 #3062 [verbose] > │ | US0_0(v34) -> (* Some *) │
00:01:57 #3063 [verbose] > │ v34 │
00:01:57 #3064 [verbose] > │ let v37 : num_complex_Complex<float> = method7(v36) │
00:01:57 #3065 [verbose] > │ let v38 : string = "v37.re" │
00:01:57 #3066 [verbose] > │ let v39 : float = Fable.Core.RustInterop.emitRustExpr () v38 │
00:01:57 #3067 [verbose] > │ let v40 : float = -v39 │
00:01:57 #3068 [verbose] > │ let v41 : bool = v39 >= v40 │
00:01:57 #3069 [verbose] > │ let v42 : float = │
00:01:57 #3070 [verbose] > │ if v41 then │
00:01:57 #3071 [verbose] > │ v39 │
00:01:57 #3072 [verbose] > │ else │
00:01:57 #3073 [verbose] > │ v40 │
00:01:57 #3074 [verbose] > │ let v43 : string = $"%A{v42}" │
00:01:57 #3075 [verbose] > │ System.Console.WriteLine v43 │
00:01:57 #3076 [verbose] > │ let v44 : bool = v42 < 0.0001 │
00:01:57 #3077 [verbose] > │ let v46 : bool = │
00:01:57 #3078 [verbose] > │ if v44 then │
00:01:57 #3079 [verbose] > │ true │
00:01:57 #3080 [verbose] > │ else │
00:01:57 #3081 [verbose] > │ method31(v44) │
00:01:57 #3082 [verbose] > │ let v47 : string = $"__expect / actual: %A{v42} / expected: │
00:01:57 #3083 [verbose] > │ %A{0.0001}" │
00:01:57 #3084 [verbose] > │ let v48 : bool = v46 = false │
00:01:57 #3085 [verbose] > │ if v48 then │
00:01:57 #3086 [verbose] > │ failwith<unit> v47 │
00:01:57 #3087 [verbose] > │ let v49 : num_complex_Complex<float> = method8(v36) │
00:01:57 #3088 [verbose] > │ let v50 : string = "v49.im" │
00:01:57 #3089 [verbose] > │ let v51 : float = Fable.Core.RustInterop.emitRustExpr () v50 │
00:01:57 #3090 [verbose] > │ let v52 : float = -v51 │
00:01:57 #3091 [verbose] > │ let v53 : bool = v51 >= v52 │
00:01:57 #3092 [verbose] > │ let v54 : float = │
00:01:57 #3093 [verbose] > │ if v53 then │
00:01:57 #3094 [verbose] > │ v51 │
00:01:57 #3095 [verbose] > │ else │
00:01:57 #3096 [verbose] > │ v52 │
00:01:57 #3097 [verbose] > │ let v55 : string = $"%A{v54}" │
00:01:57 #3098 [verbose] > │ System.Console.WriteLine v55 │
00:01:57 #3099 [verbose] > │ let v56 : bool = v54 < 0.0001 │
00:01:57 #3100 [verbose] > │ let v58 : bool = │
00:01:57 #3101 [verbose] > │ if v56 then │
00:01:57 #3102 [verbose] > │ true │
00:01:57 #3103 [verbose] > │ else │
00:01:57 #3104 [verbose] > │ method31(v56) │
00:01:57 #3105 [verbose] > │ let v59 : string = $"__expect / actual: %A{v54} / expected: │
00:01:57 #3106 [verbose] > │ %A{0.0001}" │
00:01:57 #3107 [verbose] > │ let v60 : bool = v58 = false │
00:01:57 #3108 [verbose] > │ if v60 then │
00:01:57 #3109 [verbose] > │ failwith<unit> v59 │
00:01:57 #3110 [verbose] > │ let v61 : int32 = v17 + 1 │
00:01:57 #3111 [verbose] > │ v15.l0 <- v61 │
00:01:57 #3112 [verbose] > │ () │
00:01:57 #3113 [verbose] > │ () │
00:01:57 #3114 [verbose] > │ and method40 () : unit = │
00:01:57 #3115 [verbose] > │ let v0 : string = "pyo3::prepare_freethreaded_python()" │
00:01:57 #3116 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:57 #3117 [verbose] > │ let v1 : string = "let __result = pyo3::Python::with_gil(|py| -> │
00:01:57 #3118 [verbose] > │ pyo3::PyResult<()> { //" │
00:01:57 #3119 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:57 #3120 [verbose] > │ let v2 : string = "py" │
00:01:57 #3121 [verbose] > │ let v3 : pyo3_Python = Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:57 #3122 [verbose] > │ method41(v3) │
00:01:57 #3123 [verbose] > │ let v4 : Result<unit, pyo3_PyErr> = Ok () │
00:01:57 #3124 [verbose] > │ let v5 : Result<unit, pyo3_PyErr> = method32(v4) │
00:01:57 #3125 [verbose] > │ let v6 : string = "v5 }})" │
00:01:57 #3126 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:57 #3127 [verbose] > │ let v7 : string = "{ //" │
00:01:57 #3128 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #3129 [verbose] > │ let v8 : string = "__result" │
00:01:57 #3130 [verbose] > │ let v9 : Result<unit, pyo3_PyErr> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #3131 [verbose] > │ () v8 │
00:01:57 #3132 [verbose] > │ let v10 : Result<unit, pyo3_PyErr> = method33(v9) │
00:01:57 #3133 [verbose] > │ let v11 : string = "v10.unwrap()" │
00:01:57 #3134 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:57 #3135 [verbose] > │ () │
00:01:57 #3136 [verbose] > │ and method43 (v0 : pyo3_Python) : unit = │
00:01:57 #3137 [verbose] > │ let v1 : (float []) = [|2.0; 3.0; 4.0; 5.0; 10.0; 20.0; 50.0|] │
00:01:57 #3138 [verbose] > │ let v2 : int32 = v1.Length │
00:01:57 #3139 [verbose] > │ let v3 : Mut0 = {l0 = 0} : Mut0 │
00:01:57 #3140 [verbose] > │ while method2(v2, v3) do │
00:01:57 #3141 [verbose] > │ let v5 : int32 = v3.l0 │
00:01:57 #3142 [verbose] > │ let v6 : float = v1.[int v5] │
00:01:57 #3143 [verbose] > │ let v7 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3144 [verbose] > │ let v8 : num_complex_Complex<float> = │
00:01:57 #3145 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v6, 0.0) v7 │
00:01:57 #3146 [verbose] > │ let v9 : string = $" s = mpmath.zeta(s)" │
00:01:57 #3147 [verbose] > │ let v10 : num_complex_Complex<float> = method3(v8) │
00:01:57 #3148 [verbose] > │ let v11 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #3149 [verbose] > │ method4(v0, v9, v10) │
00:01:57 #3150 [verbose] > │ let v12 : num_complex_Complex<float> = method24(v0, v8) │
00:01:57 #3151 [verbose] > │ let v13 : string = "v11.ok()" │
00:01:57 #3152 [verbose] > │ let v14 : num_complex_Complex<float> option = │
00:01:57 #3153 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v13 │
00:01:57 #3154 [verbose] > │ let v15 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #3155 [verbose] > │ let v16 : US0 = US0_1 │
00:01:57 #3156 [verbose] > │ let v17 : US0 = v14 |> Option.map v15 |> Option.defaultValue v16 │
00:01:57 #3157 [verbose] > │ let v18 : string = "f64::NAN" │
00:01:57 #3158 [verbose] > │ let v19 : float = Fable.Core.RustInterop.emitRustExpr () v18 │
00:01:57 #3159 [verbose] > │ let v20 : string = "f64::NAN" │
00:01:57 #3160 [verbose] > │ let v21 : float = Fable.Core.RustInterop.emitRustExpr () v20 │
00:01:57 #3161 [verbose] > │ let v22 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3162 [verbose] > │ let v23 : num_complex_Complex<float> = │
00:01:57 #3163 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v19, v21) v22 │
00:01:57 #3164 [verbose] > │ let v26 : num_complex_Complex<float> = │
00:01:57 #3165 [verbose] > │ match v17 with │
00:01:57 #3166 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #3167 [verbose] > │ v23 │
00:01:57 #3168 [verbose] > │ | US0_0(v24) -> (* Some *) │
00:01:57 #3169 [verbose] > │ v24 │
00:01:57 #3170 [verbose] > │ let v27 : num_complex_Complex<float> = method7(v26) │
00:01:57 #3171 [verbose] > │ let v28 : string = "v27.re" │
00:01:57 #3172 [verbose] > │ let v29 : float = Fable.Core.RustInterop.emitRustExpr () v28 │
00:01:57 #3173 [verbose] > │ let v30 : string = $"%A{v29}" │
00:01:57 #3174 [verbose] > │ System.Console.WriteLine v30 │
00:01:57 #3175 [verbose] > │ let v31 : bool = v29 > 0.0 │
00:01:57 #3176 [verbose] > │ let v33 : bool = │
00:01:57 #3177 [verbose] > │ if v31 then │
00:01:57 #3178 [verbose] > │ true │
00:01:57 #3179 [verbose] > │ else │
00:01:57 #3180 [verbose] > │ method31(v31) │
00:01:57 #3181 [verbose] > │ let v34 : string = $"__expect / actual: %A{v29} / expected: %A{0.0}" │
00:01:57 #3182 [verbose] > │ let v35 : bool = v33 = false │
00:01:57 #3183 [verbose] > │ if v35 then │
00:01:57 #3184 [verbose] > │ failwith<unit> v34 │
00:01:57 #3185 [verbose] > │ let v36 : num_complex_Complex<float> = method8(v26) │
00:01:57 #3186 [verbose] > │ let v37 : string = "v36.im" │
00:01:57 #3187 [verbose] > │ let v38 : float = Fable.Core.RustInterop.emitRustExpr () v37 │
00:01:57 #3188 [verbose] > │ let v39 : string = $"%A{v38}" │
00:01:57 #3189 [verbose] > │ System.Console.WriteLine v39 │
00:01:57 #3190 [verbose] > │ let v40 : bool = v38 = 0.0 │
00:01:57 #3191 [verbose] > │ let v42 : bool = │
00:01:57 #3192 [verbose] > │ if v40 then │
00:01:57 #3193 [verbose] > │ true │
00:01:57 #3194 [verbose] > │ else │
00:01:57 #3195 [verbose] > │ method31(v40) │
00:01:57 #3196 [verbose] > │ let v43 : string = $"__expect / actual: %A{v38} / expected: %A{0.0}" │
00:01:57 #3197 [verbose] > │ let v44 : bool = v42 = false │
00:01:57 #3198 [verbose] > │ if v44 then │
00:01:57 #3199 [verbose] > │ failwith<unit> v43 │
00:01:57 #3200 [verbose] > │ let v45 : int32 = v5 + 1 │
00:01:57 #3201 [verbose] > │ v3.l0 <- v45 │
00:01:57 #3202 [verbose] > │ () │
00:01:57 #3203 [verbose] > │ () │
00:01:57 #3204 [verbose] > │ and method42 () : unit = │
00:01:57 #3205 [verbose] > │ let v0 : string = "pyo3::prepare_freethreaded_python()" │
00:01:57 #3206 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:57 #3207 [verbose] > │ let v1 : string = "let __result = pyo3::Python::with_gil(|py| -> │
00:01:57 #3208 [verbose] > │ pyo3::PyResult<()> { //" │
00:01:57 #3209 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:57 #3210 [verbose] > │ let v2 : string = "py" │
00:01:57 #3211 [verbose] > │ let v3 : pyo3_Python = Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:57 #3212 [verbose] > │ method43(v3) │
00:01:57 #3213 [verbose] > │ let v4 : Result<unit, pyo3_PyErr> = Ok () │
00:01:57 #3214 [verbose] > │ let v5 : Result<unit, pyo3_PyErr> = method32(v4) │
00:01:57 #3215 [verbose] > │ let v6 : string = "v5 }})" │
00:01:57 #3216 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:57 #3217 [verbose] > │ let v7 : string = "{ //" │
00:01:57 #3218 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #3219 [verbose] > │ let v8 : string = "__result" │
00:01:57 #3220 [verbose] > │ let v9 : Result<unit, pyo3_PyErr> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #3221 [verbose] > │ () v8 │
00:01:57 #3222 [verbose] > │ let v10 : Result<unit, pyo3_PyErr> = method33(v9) │
00:01:57 #3223 [verbose] > │ let v11 : string = "v10.unwrap()" │
00:01:57 #3224 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:57 #3225 [verbose] > │ () │
00:01:57 #3226 [verbose] > │ and method45 (v0 : pyo3_Python) : unit = │
00:01:57 #3227 [verbose] > │ let v1 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3228 [verbose] > │ let v2 : num_complex_Complex<float> = │
00:01:57 #3229 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (1.0, 0.0) v1 │
00:01:57 #3230 [verbose] > │ let v3 : string = $" s = mpmath.zeta(s)" │
00:01:57 #3231 [verbose] > │ let v4 : num_complex_Complex<float> = method3(v2) │
00:01:57 #3232 [verbose] > │ let v5 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #3233 [verbose] > │ method4(v0, v3, v4) │
00:01:57 #3234 [verbose] > │ let v6 : num_complex_Complex<float> = method24(v0, v2) │
00:01:57 #3235 [verbose] > │ let v7 : string = "v5.ok()" │
00:01:57 #3236 [verbose] > │ let v8 : num_complex_Complex<float> option = │
00:01:57 #3237 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #3238 [verbose] > │ let v9 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #3239 [verbose] > │ let v10 : US0 = US0_1 │
00:01:57 #3240 [verbose] > │ let v11 : US0 = v8 |> Option.map v9 |> Option.defaultValue v10 │
00:01:57 #3241 [verbose] > │ let v12 : string = "f64::NAN" │
00:01:57 #3242 [verbose] > │ let v13 : float = Fable.Core.RustInterop.emitRustExpr () v12 │
00:01:57 #3243 [verbose] > │ let v14 : string = "f64::NAN" │
00:01:57 #3244 [verbose] > │ let v15 : float = Fable.Core.RustInterop.emitRustExpr () v14 │
00:01:57 #3245 [verbose] > │ let v16 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3246 [verbose] > │ let v17 : num_complex_Complex<float> = │
00:01:57 #3247 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v13, v15) v16 │
00:01:57 #3248 [verbose] > │ let v20 : num_complex_Complex<float> = │
00:01:57 #3249 [verbose] > │ match v11 with │
00:01:57 #3250 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #3251 [verbose] > │ v17 │
00:01:57 #3252 [verbose] > │ | US0_0(v18) -> (* Some *) │
00:01:57 #3253 [verbose] > │ v18 │
00:01:57 #3254 [verbose] > │ let v21 : num_complex_Complex<float> = method7(v20) │
00:01:57 #3255 [verbose] > │ let v22 : string = "v21.re" │
00:01:57 #3256 [verbose] > │ let v23 : float = Fable.Core.RustInterop.emitRustExpr () v22 │
00:01:57 #3257 [verbose] > │ let v24 : string = $"%A{v23}" │
00:01:57 #3258 [verbose] > │ System.Console.WriteLine v24 │
00:01:57 #3259 [verbose] > │ let v25 : bool = v23 = infinity │
00:01:57 #3260 [verbose] > │ let v27 : bool = │
00:01:57 #3261 [verbose] > │ if v25 then │
00:01:57 #3262 [verbose] > │ true │
00:01:57 #3263 [verbose] > │ else │
00:01:57 #3264 [verbose] > │ method31(v25) │
00:01:57 #3265 [verbose] > │ let v28 : string = $"__expect / actual: %A{v23} / expected: │
00:01:57 #3266 [verbose] > │ %A{infinity}" │
00:01:57 #3267 [verbose] > │ let v29 : bool = v27 = false │
00:01:57 #3268 [verbose] > │ if v29 then │
00:01:57 #3269 [verbose] > │ failwith<unit> v28 │
00:01:57 #3270 [verbose] > │ let v30 : num_complex_Complex<float> = method8(v20) │
00:01:57 #3271 [verbose] > │ let v31 : string = "v30.im" │
00:01:57 #3272 [verbose] > │ let v32 : float = Fable.Core.RustInterop.emitRustExpr () v31 │
00:01:57 #3273 [verbose] > │ let v33 : string = $"%A{v32}" │
00:01:57 #3274 [verbose] > │ System.Console.WriteLine v33 │
00:01:57 #3275 [verbose] > │ let v34 : bool = v32 = 0.0 │
00:01:57 #3276 [verbose] > │ let v36 : bool = │
00:01:57 #3277 [verbose] > │ if v34 then │
00:01:57 #3278 [verbose] > │ true │
00:01:57 #3279 [verbose] > │ else │
00:01:57 #3280 [verbose] > │ method31(v34) │
00:01:57 #3281 [verbose] > │ let v37 : string = $"__expect / actual: %A{v32} / expected: %A{0.0}" │
00:01:57 #3282 [verbose] > │ let v38 : bool = v36 = false │
00:01:57 #3283 [verbose] > │ if v38 then │
00:01:57 #3284 [verbose] > │ failwith<unit> v37 │
00:01:57 #3285 [verbose] > │ and method44 () : unit = │
00:01:57 #3286 [verbose] > │ let v0 : string = "pyo3::prepare_freethreaded_python()" │
00:01:57 #3287 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:57 #3288 [verbose] > │ let v1 : string = "let __result = pyo3::Python::with_gil(|py| -> │
00:01:57 #3289 [verbose] > │ pyo3::PyResult<()> { //" │
00:01:57 #3290 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:57 #3291 [verbose] > │ let v2 : string = "py" │
00:01:57 #3292 [verbose] > │ let v3 : pyo3_Python = Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:57 #3293 [verbose] > │ method45(v3) │
00:01:57 #3294 [verbose] > │ let v4 : Result<unit, pyo3_PyErr> = Ok () │
00:01:57 #3295 [verbose] > │ let v5 : Result<unit, pyo3_PyErr> = method32(v4) │
00:01:57 #3296 [verbose] > │ let v6 : string = "v5 }})" │
00:01:57 #3297 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:57 #3298 [verbose] > │ let v7 : string = "{ //" │
00:01:57 #3299 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #3300 [verbose] > │ let v8 : string = "__result" │
00:01:57 #3301 [verbose] > │ let v9 : Result<unit, pyo3_PyErr> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #3302 [verbose] > │ () v8 │
00:01:57 #3303 [verbose] > │ let v10 : Result<unit, pyo3_PyErr> = method33(v9) │
00:01:57 #3304 [verbose] > │ let v11 : string = "v10.unwrap()" │
00:01:57 #3305 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:57 #3306 [verbose] > │ () │
00:01:57 #3307 [verbose] > │ and method47 (v0 : pyo3_Python) : unit = │
00:01:57 #3308 [verbose] > │ let v1 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3309 [verbose] > │ let v2 : num_complex_Complex<float> = │
00:01:57 #3310 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (2.0, 10.0) v1 │
00:01:57 #3311 [verbose] > │ let v3 : string = $" s = mpmath.zeta(s)" │
00:01:57 #3312 [verbose] > │ let v4 : num_complex_Complex<float> = method3(v2) │
00:01:57 #3313 [verbose] > │ let v5 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #3314 [verbose] > │ method4(v0, v3, v4) │
00:01:57 #3315 [verbose] > │ let v6 : num_complex_Complex<float> = method24(v0, v2) │
00:01:57 #3316 [verbose] > │ let v7 : string = "v5.ok()" │
00:01:57 #3317 [verbose] > │ let v8 : num_complex_Complex<float> option = │
00:01:57 #3318 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #3319 [verbose] > │ let v9 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #3320 [verbose] > │ let v10 : US0 = US0_1 │
00:01:57 #3321 [verbose] > │ let v11 : US0 = v8 |> Option.map v9 |> Option.defaultValue v10 │
00:01:57 #3322 [verbose] > │ let v12 : string = "f64::NAN" │
00:01:57 #3323 [verbose] > │ let v13 : float = Fable.Core.RustInterop.emitRustExpr () v12 │
00:01:57 #3324 [verbose] > │ let v14 : string = "f64::NAN" │
00:01:57 #3325 [verbose] > │ let v15 : float = Fable.Core.RustInterop.emitRustExpr () v14 │
00:01:57 #3326 [verbose] > │ let v16 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3327 [verbose] > │ let v17 : num_complex_Complex<float> = │
00:01:57 #3328 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v13, v15) v16 │
00:01:57 #3329 [verbose] > │ let v20 : num_complex_Complex<float> = │
00:01:57 #3330 [verbose] > │ match v11 with │
00:01:57 #3331 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #3332 [verbose] > │ v17 │
00:01:57 #3333 [verbose] > │ | US0_0(v18) -> (* Some *) │
00:01:57 #3334 [verbose] > │ v18 │
00:01:57 #3335 [verbose] > │ let v21 : num_complex_Complex<float> = method7(v2) │
00:01:57 #3336 [verbose] > │ let v22 : string = "v21.re" │
00:01:57 #3337 [verbose] > │ let v23 : float = Fable.Core.RustInterop.emitRustExpr () v22 │
00:01:57 #3338 [verbose] > │ let v24 : num_complex_Complex<float> = method8(v2) │
00:01:57 #3339 [verbose] > │ let v25 : string = "v24.im" │
00:01:57 #3340 [verbose] > │ let v26 : float = Fable.Core.RustInterop.emitRustExpr () v25 │
00:01:57 #3341 [verbose] > │ let v27 : float = -v26 │
00:01:57 #3342 [verbose] > │ let v28 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3343 [verbose] > │ let v29 : num_complex_Complex<float> = │
00:01:57 #3344 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v23, v27) v28 │
00:01:57 #3345 [verbose] > │ let v30 : string = $" s = mpmath.zeta(s)" │
00:01:57 #3346 [verbose] > │ let v31 : num_complex_Complex<float> = method3(v29) │
00:01:57 #3347 [verbose] > │ let v32 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #3348 [verbose] > │ method4(v0, v30, v31) │
00:01:57 #3349 [verbose] > │ let v33 : num_complex_Complex<float> = method24(v0, v29) │
00:01:57 #3350 [verbose] > │ let v34 : string = "v32.ok()" │
00:01:57 #3351 [verbose] > │ let v35 : num_complex_Complex<float> option = │
00:01:57 #3352 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v34 │
00:01:57 #3353 [verbose] > │ let v36 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #3354 [verbose] > │ let v37 : US0 = US0_1 │
00:01:57 #3355 [verbose] > │ let v38 : US0 = v35 |> Option.map v36 |> Option.defaultValue v37 │
00:01:57 #3356 [verbose] > │ let v39 : string = "f64::NAN" │
00:01:57 #3357 [verbose] > │ let v40 : float = Fable.Core.RustInterop.emitRustExpr () v39 │
00:01:57 #3358 [verbose] > │ let v41 : string = "f64::NAN" │
00:01:57 #3359 [verbose] > │ let v42 : float = Fable.Core.RustInterop.emitRustExpr () v41 │
00:01:57 #3360 [verbose] > │ let v43 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3361 [verbose] > │ let v44 : num_complex_Complex<float> = │
00:01:57 #3362 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v40, v42) v43 │
00:01:57 #3363 [verbose] > │ let v47 : num_complex_Complex<float> = │
00:01:57 #3364 [verbose] > │ match v38 with │
00:01:57 #3365 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #3366 [verbose] > │ v44 │
00:01:57 #3367 [verbose] > │ | US0_0(v45) -> (* Some *) │
00:01:57 #3368 [verbose] > │ v45 │
00:01:57 #3369 [verbose] > │ let v48 : string = "v47.conj()" │
00:01:57 #3370 [verbose] > │ let v49 : num_complex_Complex<float> = │
00:01:57 #3371 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v48 │
00:01:57 #3372 [verbose] > │ let v50 : num_complex_Complex<float> = method7(v20) │
00:01:57 #3373 [verbose] > │ let v51 : string = "v50.re" │
00:01:57 #3374 [verbose] > │ let v52 : float = Fable.Core.RustInterop.emitRustExpr () v51 │
00:01:57 #3375 [verbose] > │ let v53 : num_complex_Complex<float> = method7(v49) │
00:01:57 #3376 [verbose] > │ let v54 : string = "v53.re" │
00:01:57 #3377 [verbose] > │ let v55 : float = Fable.Core.RustInterop.emitRustExpr () v54 │
00:01:57 #3378 [verbose] > │ let v56 : string = $"%A{v52}" │
00:01:57 #3379 [verbose] > │ System.Console.WriteLine v56 │
00:01:57 #3380 [verbose] > │ let v57 : bool = v52 = v55 │
00:01:57 #3381 [verbose] > │ let v59 : bool = │
00:01:57 #3382 [verbose] > │ if v57 then │
00:01:57 #3383 [verbose] > │ true │
00:01:57 #3384 [verbose] > │ else │
00:01:57 #3385 [verbose] > │ method31(v57) │
00:01:57 #3386 [verbose] > │ let v60 : string = $"__expect / actual: %A{v52} / expected: %A{v55}" │
00:01:57 #3387 [verbose] > │ let v61 : bool = v59 = false │
00:01:57 #3388 [verbose] > │ if v61 then │
00:01:57 #3389 [verbose] > │ failwith<unit> v60 │
00:01:57 #3390 [verbose] > │ let v62 : num_complex_Complex<float> = method8(v20) │
00:01:57 #3391 [verbose] > │ let v63 : string = "v62.im" │
00:01:57 #3392 [verbose] > │ let v64 : float = Fable.Core.RustInterop.emitRustExpr () v63 │
00:01:57 #3393 [verbose] > │ let v65 : num_complex_Complex<float> = method8(v49) │
00:01:57 #3394 [verbose] > │ let v66 : string = "v65.im" │
00:01:57 #3395 [verbose] > │ let v67 : float = Fable.Core.RustInterop.emitRustExpr () v66 │
00:01:57 #3396 [verbose] > │ let v68 : string = $"%A{v64}" │
00:01:57 #3397 [verbose] > │ System.Console.WriteLine v68 │
00:01:57 #3398 [verbose] > │ let v69 : bool = v64 = v67 │
00:01:57 #3399 [verbose] > │ let v71 : bool = │
00:01:57 #3400 [verbose] > │ if v69 then │
00:01:57 #3401 [verbose] > │ true │
00:01:57 #3402 [verbose] > │ else │
00:01:57 #3403 [verbose] > │ method31(v69) │
00:01:57 #3404 [verbose] > │ let v72 : string = $"__expect / actual: %A{v64} / expected: %A{v67}" │
00:01:57 #3405 [verbose] > │ let v73 : bool = v71 = false │
00:01:57 #3406 [verbose] > │ if v73 then │
00:01:57 #3407 [verbose] > │ failwith<unit> v72 │
00:01:57 #3408 [verbose] > │ and method46 () : unit = │
00:01:57 #3409 [verbose] > │ let v0 : string = "pyo3::prepare_freethreaded_python()" │
00:01:57 #3410 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:57 #3411 [verbose] > │ let v1 : string = "let __result = pyo3::Python::with_gil(|py| -> │
00:01:57 #3412 [verbose] > │ pyo3::PyResult<()> { //" │
00:01:57 #3413 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:57 #3414 [verbose] > │ let v2 : string = "py" │
00:01:57 #3415 [verbose] > │ let v3 : pyo3_Python = Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:57 #3416 [verbose] > │ method47(v3) │
00:01:57 #3417 [verbose] > │ let v4 : Result<unit, pyo3_PyErr> = Ok () │
00:01:57 #3418 [verbose] > │ let v5 : Result<unit, pyo3_PyErr> = method32(v4) │
00:01:57 #3419 [verbose] > │ let v6 : string = "v5 }})" │
00:01:57 #3420 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:57 #3421 [verbose] > │ let v7 : string = "{ //" │
00:01:57 #3422 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #3423 [verbose] > │ let v8 : string = "__result" │
00:01:57 #3424 [verbose] > │ let v9 : Result<unit, pyo3_PyErr> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #3425 [verbose] > │ () v8 │
00:01:57 #3426 [verbose] > │ let v10 : Result<unit, pyo3_PyErr> = method33(v9) │
00:01:57 #3427 [verbose] > │ let v11 : string = "v10.unwrap()" │
00:01:57 #3428 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:57 #3429 [verbose] > │ () │
00:01:57 #3430 [verbose] > │ and method49 (v0 : pyo3_Python) : unit = │
00:01:57 #3431 [verbose] > │ let v1 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3432 [verbose] > │ let v2 : num_complex_Complex<float> = │
00:01:57 #3433 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.01, 0.01) v1 │
00:01:57 #3434 [verbose] > │ let v3 : string = $" s = mpmath.zeta(s)" │
00:01:57 #3435 [verbose] > │ let v4 : num_complex_Complex<float> = method3(v2) │
00:01:57 #3436 [verbose] > │ let v5 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #3437 [verbose] > │ method4(v0, v3, v4) │
00:01:57 #3438 [verbose] > │ let v6 : num_complex_Complex<float> = method24(v0, v2) │
00:01:57 #3439 [verbose] > │ let v7 : string = "v5.ok()" │
00:01:57 #3440 [verbose] > │ let v8 : num_complex_Complex<float> option = │
00:01:57 #3441 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #3442 [verbose] > │ let v9 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #3443 [verbose] > │ let v10 : US0 = US0_1 │
00:01:57 #3444 [verbose] > │ let v11 : US0 = v8 |> Option.map v9 |> Option.defaultValue v10 │
00:01:57 #3445 [verbose] > │ let v12 : string = "f64::NAN" │
00:01:57 #3446 [verbose] > │ let v13 : float = Fable.Core.RustInterop.emitRustExpr () v12 │
00:01:57 #3447 [verbose] > │ let v14 : string = "f64::NAN" │
00:01:57 #3448 [verbose] > │ let v15 : float = Fable.Core.RustInterop.emitRustExpr () v14 │
00:01:57 #3449 [verbose] > │ let v16 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3450 [verbose] > │ let v17 : num_complex_Complex<float> = │
00:01:57 #3451 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v13, v15) v16 │
00:01:57 #3452 [verbose] > │ let v20 : num_complex_Complex<float> = │
00:01:57 #3453 [verbose] > │ match v11 with │
00:01:57 #3454 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #3455 [verbose] > │ v17 │
00:01:57 #3456 [verbose] > │ | US0_0(v18) -> (* Some *) │
00:01:57 #3457 [verbose] > │ v18 │
00:01:57 #3458 [verbose] > │ let v21 : num_complex_Complex<float> = method7(v20) │
00:01:57 #3459 [verbose] > │ let v22 : string = "v21.re" │
00:01:57 #3460 [verbose] > │ let v23 : float = Fable.Core.RustInterop.emitRustExpr () v22 │
00:01:57 #3461 [verbose] > │ let v24 : string = $"%A{v23}" │
00:01:57 #3462 [verbose] > │ System.Console.WriteLine v24 │
00:01:57 #3463 [verbose] > │ let v25 : bool = v23 < infinity │
00:01:57 #3464 [verbose] > │ let v27 : bool = │
00:01:57 #3465 [verbose] > │ if v25 then │
00:01:57 #3466 [verbose] > │ true │
00:01:57 #3467 [verbose] > │ else │
00:01:57 #3468 [verbose] > │ method31(v25) │
00:01:57 #3469 [verbose] > │ let v28 : string = $"__expect / actual: %A{v23} / expected: │
00:01:57 #3470 [verbose] > │ %A{infinity}" │
00:01:57 #3471 [verbose] > │ let v29 : bool = v27 = false │
00:01:57 #3472 [verbose] > │ if v29 then │
00:01:57 #3473 [verbose] > │ failwith<unit> v28 │
00:01:57 #3474 [verbose] > │ let v30 : num_complex_Complex<float> = method8(v20) │
00:01:57 #3475 [verbose] > │ let v31 : string = "v30.im" │
00:01:57 #3476 [verbose] > │ let v32 : float = Fable.Core.RustInterop.emitRustExpr () v31 │
00:01:57 #3477 [verbose] > │ let v33 : string = $"%A{v32}" │
00:01:57 #3478 [verbose] > │ System.Console.WriteLine v33 │
00:01:57 #3479 [verbose] > │ let v34 : bool = v32 < infinity │
00:01:57 #3480 [verbose] > │ let v36 : bool = │
00:01:57 #3481 [verbose] > │ if v34 then │
00:01:57 #3482 [verbose] > │ true │
00:01:57 #3483 [verbose] > │ else │
00:01:57 #3484 [verbose] > │ method31(v34) │
00:01:57 #3485 [verbose] > │ let v37 : string = $"__expect / actual: %A{v32} / expected: │
00:01:57 #3486 [verbose] > │ %A{infinity}" │
00:01:57 #3487 [verbose] > │ let v38 : bool = v36 = false │
00:01:57 #3488 [verbose] > │ if v38 then │
00:01:57 #3489 [verbose] > │ failwith<unit> v37 │
00:01:57 #3490 [verbose] > │ and method48 () : unit = │
00:01:57 #3491 [verbose] > │ let v0 : string = "pyo3::prepare_freethreaded_python()" │
00:01:57 #3492 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:57 #3493 [verbose] > │ let v1 : string = "let __result = pyo3::Python::with_gil(|py| -> │
00:01:57 #3494 [verbose] > │ pyo3::PyResult<()> { //" │
00:01:57 #3495 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:57 #3496 [verbose] > │ let v2 : string = "py" │
00:01:57 #3497 [verbose] > │ let v3 : pyo3_Python = Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:57 #3498 [verbose] > │ method49(v3) │
00:01:57 #3499 [verbose] > │ let v4 : Result<unit, pyo3_PyErr> = Ok () │
00:01:57 #3500 [verbose] > │ let v5 : Result<unit, pyo3_PyErr> = method32(v4) │
00:01:57 #3501 [verbose] > │ let v6 : string = "v5 }})" │
00:01:57 #3502 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:57 #3503 [verbose] > │ let v7 : string = "{ //" │
00:01:57 #3504 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #3505 [verbose] > │ let v8 : string = "__result" │
00:01:57 #3506 [verbose] > │ let v9 : Result<unit, pyo3_PyErr> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #3507 [verbose] > │ () v8 │
00:01:57 #3508 [verbose] > │ let v10 : Result<unit, pyo3_PyErr> = method33(v9) │
00:01:57 #3509 [verbose] > │ let v11 : string = "v10.unwrap()" │
00:01:57 #3510 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:57 #3511 [verbose] > │ () │
00:01:57 #3512 [verbose] > │ and method52 () : (float []) = │
00:01:57 #3513 [verbose] > │ let v0 : (float []) = [|10.0; 20.0; 30.0; 40.0; 50.0; 60.0; 70.0; 80.0; │
00:01:57 #3514 [verbose] > │ 90.0; 100.0|] │
00:01:57 #3515 [verbose] > │ v0 │
00:01:57 #3516 [verbose] > │ and method53 (v0 : bool) : bool = │
00:01:57 #3517 [verbose] > │ let v1 : bool = v0 = false │
00:01:57 #3518 [verbose] > │ v1 │
00:01:57 #3519 [verbose] > │ and method51 (v0 : pyo3_Python) : unit = │
00:01:57 #3520 [verbose] > │ let v1 : (float []) = method52() │
00:01:57 #3521 [verbose] > │ let v2 : int32 = v1.Length │
00:01:57 #3522 [verbose] > │ let v3 : Mut0 = {l0 = 0} : Mut0 │
00:01:57 #3523 [verbose] > │ while method2(v2, v3) do │
00:01:57 #3524 [verbose] > │ let v5 : int32 = v3.l0 │
00:01:57 #3525 [verbose] > │ let v6 : float = v1.[int v5] │
00:01:57 #3526 [verbose] > │ let v7 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3527 [verbose] > │ let v8 : num_complex_Complex<float> = │
00:01:57 #3528 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.0, v6) v7 │
00:01:57 #3529 [verbose] > │ let v9 : string = $" s = mpmath.zeta(s)" │
00:01:57 #3530 [verbose] > │ let v10 : num_complex_Complex<float> = method3(v8) │
00:01:57 #3531 [verbose] > │ let v11 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #3532 [verbose] > │ method4(v0, v9, v10) │
00:01:57 #3533 [verbose] > │ let v12 : num_complex_Complex<float> = method24(v0, v8) │
00:01:57 #3534 [verbose] > │ let v13 : string = "v11.ok()" │
00:01:57 #3535 [verbose] > │ let v14 : num_complex_Complex<float> option = │
00:01:57 #3536 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v13 │
00:01:57 #3537 [verbose] > │ let v15 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #3538 [verbose] > │ let v16 : US0 = US0_1 │
00:01:57 #3539 [verbose] > │ let v17 : US0 = v14 |> Option.map v15 |> Option.defaultValue v16 │
00:01:57 #3540 [verbose] > │ let v18 : string = "f64::NAN" │
00:01:57 #3541 [verbose] > │ let v19 : float = Fable.Core.RustInterop.emitRustExpr () v18 │
00:01:57 #3542 [verbose] > │ let v20 : string = "f64::NAN" │
00:01:57 #3543 [verbose] > │ let v21 : float = Fable.Core.RustInterop.emitRustExpr () v20 │
00:01:57 #3544 [verbose] > │ let v22 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3545 [verbose] > │ let v23 : num_complex_Complex<float> = │
00:01:57 #3546 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v19, v21) v22 │
00:01:57 #3547 [verbose] > │ let v26 : num_complex_Complex<float> = │
00:01:57 #3548 [verbose] > │ match v17 with │
00:01:57 #3549 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #3550 [verbose] > │ v23 │
00:01:57 #3551 [verbose] > │ | US0_0(v24) -> (* Some *) │
00:01:57 #3552 [verbose] > │ v24 │
00:01:57 #3553 [verbose] > │ let v27 : num_complex_Complex<float> = method7(v26) │
00:01:57 #3554 [verbose] > │ let v28 : string = "v27.re" │
00:01:57 #3555 [verbose] > │ let v29 : float = Fable.Core.RustInterop.emitRustExpr () v28 │
00:01:57 #3556 [verbose] > │ let v30 : string = $"%A{v29}" │
00:01:57 #3557 [verbose] > │ System.Console.WriteLine v30 │
00:01:57 #3558 [verbose] > │ let v31 : bool = v29 = 0.0 │
00:01:57 #3559 [verbose] > │ let v32 : bool = method53(v31) │
00:01:57 #3560 [verbose] > │ let v34 : bool = │
00:01:57 #3561 [verbose] > │ if v32 then │
00:01:57 #3562 [verbose] > │ true │
00:01:57 #3563 [verbose] > │ else │
00:01:57 #3564 [verbose] > │ method31(v32) │
00:01:57 #3565 [verbose] > │ let v35 : string = $"__expect / actual: %A{v29} / expected: %A{0.0}" │
00:01:57 #3566 [verbose] > │ let v36 : bool = v34 = false │
00:01:57 #3567 [verbose] > │ if v36 then │
00:01:57 #3568 [verbose] > │ failwith<unit> v35 │
00:01:57 #3569 [verbose] > │ let v37 : num_complex_Complex<float> = method8(v26) │
00:01:57 #3570 [verbose] > │ let v38 : string = "v37.im" │
00:01:57 #3571 [verbose] > │ let v39 : float = Fable.Core.RustInterop.emitRustExpr () v38 │
00:01:57 #3572 [verbose] > │ let v40 : string = $"%A{v39}" │
00:01:57 #3573 [verbose] > │ System.Console.WriteLine v40 │
00:01:57 #3574 [verbose] > │ let v41 : bool = v39 = 0.0 │
00:01:57 #3575 [verbose] > │ let v42 : bool = method53(v41) │
00:01:57 #3576 [verbose] > │ let v44 : bool = │
00:01:57 #3577 [verbose] > │ if v42 then │
00:01:57 #3578 [verbose] > │ true │
00:01:57 #3579 [verbose] > │ else │
00:01:57 #3580 [verbose] > │ method31(v42) │
00:01:57 #3581 [verbose] > │ let v45 : string = $"__expect / actual: %A{v39} / expected: %A{0.0}" │
00:01:57 #3582 [verbose] > │ let v46 : bool = v44 = false │
00:01:57 #3583 [verbose] > │ if v46 then │
00:01:57 #3584 [verbose] > │ failwith<unit> v45 │
00:01:57 #3585 [verbose] > │ let v47 : int32 = v5 + 1 │
00:01:57 #3586 [verbose] > │ v3.l0 <- v47 │
00:01:57 #3587 [verbose] > │ () │
00:01:57 #3588 [verbose] > │ () │
00:01:57 #3589 [verbose] > │ and method50 () : unit = │
00:01:57 #3590 [verbose] > │ let v0 : string = "pyo3::prepare_freethreaded_python()" │
00:01:57 #3591 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:57 #3592 [verbose] > │ let v1 : string = "let __result = pyo3::Python::with_gil(|py| -> │
00:01:57 #3593 [verbose] > │ pyo3::PyResult<()> { //" │
00:01:57 #3594 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:57 #3595 [verbose] > │ let v2 : string = "py" │
00:01:57 #3596 [verbose] > │ let v3 : pyo3_Python = Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:57 #3597 [verbose] > │ method51(v3) │
00:01:57 #3598 [verbose] > │ let v4 : Result<unit, pyo3_PyErr> = Ok () │
00:01:57 #3599 [verbose] > │ let v5 : Result<unit, pyo3_PyErr> = method32(v4) │
00:01:57 #3600 [verbose] > │ let v6 : string = "v5 }})" │
00:01:57 #3601 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:57 #3602 [verbose] > │ let v7 : string = "{ //" │
00:01:57 #3603 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #3604 [verbose] > │ let v8 : string = "__result" │
00:01:57 #3605 [verbose] > │ let v9 : Result<unit, pyo3_PyErr> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #3606 [verbose] > │ () v8 │
00:01:57 #3607 [verbose] > │ let v10 : Result<unit, pyo3_PyErr> = method33(v9) │
00:01:57 #3608 [verbose] > │ let v11 : string = "v10.unwrap()" │
00:01:57 #3609 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:57 #3610 [verbose] > │ () │
00:01:57 #3611 [verbose] > │ and method55 (v0 : pyo3_Python) : unit = │
00:01:57 #3612 [verbose] > │ let v1 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3613 [verbose] > │ let v2 : num_complex_Complex<float> = │
00:01:57 #3614 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.5, 14.134725) v1 │
00:01:57 #3615 [verbose] > │ let v3 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3616 [verbose] > │ let v4 : num_complex_Complex<float> = │
00:01:57 #3617 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.75, 20.5) v3 │
00:01:57 #3618 [verbose] > │ let v5 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3619 [verbose] > │ let v6 : num_complex_Complex<float> = │
00:01:57 #3620 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (1.25, 30.1) v5 │
00:01:57 #3621 [verbose] > │ let v7 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3622 [verbose] > │ let v8 : num_complex_Complex<float> = │
00:01:57 #3623 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.25, 40.0) v7 │
00:01:57 #3624 [verbose] > │ let v9 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3625 [verbose] > │ let v10 : num_complex_Complex<float> = │
00:01:57 #3626 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (1.0, 50.0) v9 │
00:01:57 #3627 [verbose] > │ let v11 : (num_complex_Complex<float> []) = [|v2; v4; v6; v8; v10|] │
00:01:57 #3628 [verbose] > │ let v12 : int32 = v11.Length │
00:01:57 #3629 [verbose] > │ let v13 : Mut0 = {l0 = 0} : Mut0 │
00:01:57 #3630 [verbose] > │ while method2(v12, v13) do │
00:01:57 #3631 [verbose] > │ let v15 : int32 = v13.l0 │
00:01:57 #3632 [verbose] > │ let v16 : num_complex_Complex<float> = v11.[int v15] │
00:01:57 #3633 [verbose] > │ let v17 : string = $" s = mpmath.zeta(s)" │
00:01:57 #3634 [verbose] > │ let v18 : num_complex_Complex<float> = method3(v16) │
00:01:57 #3635 [verbose] > │ let v19 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #3636 [verbose] > │ method4(v0, v17, v18) │
00:01:57 #3637 [verbose] > │ let v20 : num_complex_Complex<float> = method24(v0, v16) │
00:01:57 #3638 [verbose] > │ let v21 : string = "v19.ok()" │
00:01:57 #3639 [verbose] > │ let v22 : num_complex_Complex<float> option = │
00:01:57 #3640 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v21 │
00:01:57 #3641 [verbose] > │ let v23 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #3642 [verbose] > │ let v24 : US0 = US0_1 │
00:01:57 #3643 [verbose] > │ let v25 : US0 = v22 |> Option.map v23 |> Option.defaultValue v24 │
00:01:57 #3644 [verbose] > │ let v26 : string = "f64::NAN" │
00:01:57 #3645 [verbose] > │ let v27 : float = Fable.Core.RustInterop.emitRustExpr () v26 │
00:01:57 #3646 [verbose] > │ let v28 : string = "f64::NAN" │
00:01:57 #3647 [verbose] > │ let v29 : float = Fable.Core.RustInterop.emitRustExpr () v28 │
00:01:57 #3648 [verbose] > │ let v30 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3649 [verbose] > │ let v31 : num_complex_Complex<float> = │
00:01:57 #3650 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v27, v29) v30 │
00:01:57 #3651 [verbose] > │ let v34 : num_complex_Complex<float> = │
00:01:57 #3652 [verbose] > │ match v25 with │
00:01:57 #3653 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #3654 [verbose] > │ v31 │
00:01:57 #3655 [verbose] > │ | US0_0(v32) -> (* Some *) │
00:01:57 #3656 [verbose] > │ v32 │
00:01:57 #3657 [verbose] > │ let v35 : num_complex_Complex<float> = method7(v34) │
00:01:57 #3658 [verbose] > │ let v36 : string = "v35.re" │
00:01:57 #3659 [verbose] > │ let v37 : float = Fable.Core.RustInterop.emitRustExpr () v36 │
00:01:57 #3660 [verbose] > │ let v38 : string = $"%A{v37}" │
00:01:57 #3661 [verbose] > │ System.Console.WriteLine v38 │
00:01:57 #3662 [verbose] > │ let v39 : bool = v37 = 0.0 │
00:01:57 #3663 [verbose] > │ let v40 : bool = method53(v39) │
00:01:57 #3664 [verbose] > │ let v42 : bool = │
00:01:57 #3665 [verbose] > │ if v40 then │
00:01:57 #3666 [verbose] > │ true │
00:01:57 #3667 [verbose] > │ else │
00:01:57 #3668 [verbose] > │ method31(v40) │
00:01:57 #3669 [verbose] > │ let v43 : string = $"__expect / actual: %A{v37} / expected: %A{0.0}" │
00:01:57 #3670 [verbose] > │ let v44 : bool = v42 = false │
00:01:57 #3671 [verbose] > │ if v44 then │
00:01:57 #3672 [verbose] > │ failwith<unit> v43 │
00:01:57 #3673 [verbose] > │ let v45 : num_complex_Complex<float> = method8(v34) │
00:01:57 #3674 [verbose] > │ let v46 : string = "v45.im" │
00:01:57 #3675 [verbose] > │ let v47 : float = Fable.Core.RustInterop.emitRustExpr () v46 │
00:01:57 #3676 [verbose] > │ let v48 : string = $"%A{v47}" │
00:01:57 #3677 [verbose] > │ System.Console.WriteLine v48 │
00:01:57 #3678 [verbose] > │ let v49 : bool = v47 = 0.0 │
00:01:57 #3679 [verbose] > │ let v50 : bool = method53(v49) │
00:01:57 #3680 [verbose] > │ let v52 : bool = │
00:01:57 #3681 [verbose] > │ if v50 then │
00:01:57 #3682 [verbose] > │ true │
00:01:57 #3683 [verbose] > │ else │
00:01:57 #3684 [verbose] > │ method31(v50) │
00:01:57 #3685 [verbose] > │ let v53 : string = $"__expect / actual: %A{v47} / expected: %A{0.0}" │
00:01:57 #3686 [verbose] > │ let v54 : bool = v52 = false │
00:01:57 #3687 [verbose] > │ if v54 then │
00:01:57 #3688 [verbose] > │ failwith<unit> v53 │
00:01:57 #3689 [verbose] > │ let v55 : int32 = v15 + 1 │
00:01:57 #3690 [verbose] > │ v13.l0 <- v55 │
00:01:57 #3691 [verbose] > │ () │
00:01:57 #3692 [verbose] > │ () │
00:01:57 #3693 [verbose] > │ and method54 () : unit = │
00:01:57 #3694 [verbose] > │ let v0 : string = "pyo3::prepare_freethreaded_python()" │
00:01:57 #3695 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:57 #3696 [verbose] > │ let v1 : string = "let __result = pyo3::Python::with_gil(|py| -> │
00:01:57 #3697 [verbose] > │ pyo3::PyResult<()> { //" │
00:01:57 #3698 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:57 #3699 [verbose] > │ let v2 : string = "py" │
00:01:57 #3700 [verbose] > │ let v3 : pyo3_Python = Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:57 #3701 [verbose] > │ method55(v3) │
00:01:57 #3702 [verbose] > │ let v4 : Result<unit, pyo3_PyErr> = Ok () │
00:01:57 #3703 [verbose] > │ let v5 : Result<unit, pyo3_PyErr> = method32(v4) │
00:01:57 #3704 [verbose] > │ let v6 : string = "v5 }})" │
00:01:57 #3705 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:57 #3706 [verbose] > │ let v7 : string = "{ //" │
00:01:57 #3707 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:57 #3708 [verbose] > │ let v8 : string = "__result" │
00:01:57 #3709 [verbose] > │ let v9 : Result<unit, pyo3_PyErr> = Fable.Core.RustInterop.emitRustExpr │
00:01:57 #3710 [verbose] > │ () v8 │
00:01:57 #3711 [verbose] > │ let v10 : Result<unit, pyo3_PyErr> = method33(v9) │
00:01:57 #3712 [verbose] > │ let v11 : string = "v10.unwrap()" │
00:01:57 #3713 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:57 #3714 [verbose] > │ () │
00:01:57 #3715 [verbose] > │ and method57 (v0 : pyo3_Python) : unit = │
00:01:57 #3716 [verbose] > │ let v1 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3717 [verbose] > │ let v2 : num_complex_Complex<float> = │
00:01:57 #3718 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (3.0, 4.0) v1 │
00:01:57 #3719 [verbose] > │ let v3 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3720 [verbose] > │ let v4 : num_complex_Complex<float> = │
00:01:57 #3721 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (2.5, -3.5) v3 │
00:01:57 #3722 [verbose] > │ let v5 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3723 [verbose] > │ let v6 : num_complex_Complex<float> = │
00:01:57 #3724 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (1.5, 2.5) v5 │
00:01:57 #3725 [verbose] > │ let v7 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3726 [verbose] > │ let v8 : num_complex_Complex<float> = │
00:01:57 #3727 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (0.5, 14.134725) v7 │
00:01:57 #3728 [verbose] > │ let v9 : (num_complex_Complex<float> []) = [|v2; v4; v6; v8|] │
00:01:57 #3729 [verbose] > │ let v10 : int32 = v9.Length │
00:01:57 #3730 [verbose] > │ let v11 : Mut0 = {l0 = 0} : Mut0 │
00:01:57 #3731 [verbose] > │ while method2(v10, v11) do │
00:01:57 #3732 [verbose] > │ let v13 : int32 = v11.l0 │
00:01:57 #3733 [verbose] > │ let v14 : num_complex_Complex<float> = v9.[int v13] │
00:01:57 #3734 [verbose] > │ let v15 : string = $" s = mpmath.zeta(s)" │
00:01:57 #3735 [verbose] > │ let v16 : num_complex_Complex<float> = method3(v14) │
00:01:57 #3736 [verbose] > │ let v17 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #3737 [verbose] > │ method4(v0, v15, v16) │
00:01:57 #3738 [verbose] > │ let v18 : num_complex_Complex<float> = method24(v0, v14) │
00:01:57 #3739 [verbose] > │ let v19 : string = "v17.ok()" │
00:01:57 #3740 [verbose] > │ let v20 : num_complex_Complex<float> option = │
00:01:57 #3741 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v19 │
00:01:57 #3742 [verbose] > │ let v21 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #3743 [verbose] > │ let v22 : US0 = US0_1 │
00:01:57 #3744 [verbose] > │ let v23 : US0 = v20 |> Option.map v21 |> Option.defaultValue v22 │
00:01:57 #3745 [verbose] > │ let v24 : string = "f64::NAN" │
00:01:57 #3746 [verbose] > │ let v25 : float = Fable.Core.RustInterop.emitRustExpr () v24 │
00:01:57 #3747 [verbose] > │ let v26 : string = "f64::NAN" │
00:01:57 #3748 [verbose] > │ let v27 : float = Fable.Core.RustInterop.emitRustExpr () v26 │
00:01:57 #3749 [verbose] > │ let v28 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3750 [verbose] > │ let v29 : num_complex_Complex<float> = │
00:01:57 #3751 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v25, v27) v28 │
00:01:57 #3752 [verbose] > │ let v32 : num_complex_Complex<float> = │
00:01:57 #3753 [verbose] > │ match v23 with │
00:01:57 #3754 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #3755 [verbose] > │ v29 │
00:01:57 #3756 [verbose] > │ | US0_0(v30) -> (* Some *) │
00:01:57 #3757 [verbose] > │ v30 │
00:01:57 #3758 [verbose] > │ let v33 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3759 [verbose] > │ let v34 : num_complex_Complex<float> = │
00:01:57 #3760 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (2.0, 0.0) v33 │
00:01:57 #3761 [verbose] > │ let v35 : num_complex_Complex<float> = method27(v34) │
00:01:57 #3762 [verbose] > │ let v36 : num_complex_Complex<float> = method28(v14) │
00:01:57 #3763 [verbose] > │ let v37 : string = "num_complex::Complex::powc(v35, v36)" │
00:01:57 #3764 [verbose] > │ let v38 : num_complex_Complex<float> = │
00:01:57 #3765 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v37 │
00:01:57 #3766 [verbose] > │ let v39 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3767 [verbose] > │ let v40 : num_complex_Complex<float> = │
00:01:57 #3768 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (3.141592653589793, 0.0) v39 │
00:01:57 #3769 [verbose] > │ let v41 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3770 [verbose] > │ let v42 : num_complex_Complex<float> = │
00:01:57 #3771 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (1.0, 0.0) v41 │
00:01:57 #3772 [verbose] > │ let v43 : string = "$0 - $1" │
00:01:57 #3773 [verbose] > │ let v44 : num_complex_Complex<float> = │
00:01:57 #3774 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v14, v42) v43 │
00:01:57 #3775 [verbose] > │ let v45 : num_complex_Complex<float> = method27(v40) │
00:01:57 #3776 [verbose] > │ let v46 : num_complex_Complex<float> = method28(v44) │
00:01:57 #3777 [verbose] > │ let v47 : string = "num_complex::Complex::powc(v45, v46)" │
00:01:57 #3778 [verbose] > │ let v48 : num_complex_Complex<float> = │
00:01:57 #3779 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v47 │
00:01:57 #3780 [verbose] > │ let v49 : string = "$0 * $1" │
00:01:57 #3781 [verbose] > │ let v50 : num_complex_Complex<float> = │
00:01:57 #3782 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v38, v48) v49 │
00:01:57 #3783 [verbose] > │ let v51 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3784 [verbose] > │ let v52 : num_complex_Complex<float> = │
00:01:57 #3785 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (3.141592653589793, 0.0) v51 │
00:01:57 #3786 [verbose] > │ let v53 : string = "$0 * $1" │
00:01:57 #3787 [verbose] > │ let v54 : num_complex_Complex<float> = │
00:01:57 #3788 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v52, v14) v53 │
00:01:57 #3789 [verbose] > │ let v55 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3790 [verbose] > │ let v56 : num_complex_Complex<float> = │
00:01:57 #3791 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (2.0, 0.0) v55 │
00:01:57 #3792 [verbose] > │ let v57 : string = "v54 / v56" │
00:01:57 #3793 [verbose] > │ let v58 : num_complex_Complex<float> = │
00:01:57 #3794 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v57 │
00:01:57 #3795 [verbose] > │ let v59 : string = "v58.sin()" │
00:01:57 #3796 [verbose] > │ let v60 : num_complex_Complex<float> = │
00:01:57 #3797 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v59 │
00:01:57 #3798 [verbose] > │ let v61 : string = "$0 * $1" │
00:01:57 #3799 [verbose] > │ let v62 : num_complex_Complex<float> = │
00:01:57 #3800 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v50, v60) v61 │
00:01:57 #3801 [verbose] > │ let v63 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3802 [verbose] > │ let v64 : num_complex_Complex<float> = │
00:01:57 #3803 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (1.0, 0.0) v63 │
00:01:57 #3804 [verbose] > │ let v65 : string = "$0 - $1" │
00:01:57 #3805 [verbose] > │ let v66 : num_complex_Complex<float> = │
00:01:57 #3806 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v64, v14) v65 │
00:01:57 #3807 [verbose] > │ let v67 : string = $" s = mpmath.gamma(s)" │
00:01:57 #3808 [verbose] > │ let v68 : num_complex_Complex<float> = method3(v66) │
00:01:57 #3809 [verbose] > │ let v69 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #3810 [verbose] > │ method29(v0, v67, v68) │
00:01:57 #3811 [verbose] > │ let v70 : string = "v69.ok()" │
00:01:57 #3812 [verbose] > │ let v71 : num_complex_Complex<float> option = │
00:01:57 #3813 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v70 │
00:01:57 #3814 [verbose] > │ let v72 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #3815 [verbose] > │ let v73 : US0 = US0_1 │
00:01:57 #3816 [verbose] > │ let v74 : US0 = v71 |> Option.map v72 |> Option.defaultValue v73 │
00:01:57 #3817 [verbose] > │ let v75 : string = "f64::NAN" │
00:01:57 #3818 [verbose] > │ let v76 : float = Fable.Core.RustInterop.emitRustExpr () v75 │
00:01:57 #3819 [verbose] > │ let v77 : string = "f64::NAN" │
00:01:57 #3820 [verbose] > │ let v78 : float = Fable.Core.RustInterop.emitRustExpr () v77 │
00:01:57 #3821 [verbose] > │ let v79 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3822 [verbose] > │ let v80 : num_complex_Complex<float> = │
00:01:57 #3823 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v76, v78) v79 │
00:01:57 #3824 [verbose] > │ let v83 : num_complex_Complex<float> = │
00:01:57 #3825 [verbose] > │ match v74 with │
00:01:57 #3826 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #3827 [verbose] > │ v80 │
00:01:57 #3828 [verbose] > │ | US0_0(v81) -> (* Some *) │
00:01:57 #3829 [verbose] > │ v81 │
00:01:57 #3830 [verbose] > │ let v84 : string = "$0 * $1" │
00:01:57 #3831 [verbose] > │ let v85 : num_complex_Complex<float> = │
00:01:57 #3832 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v62, v83) v84 │
00:01:57 #3833 [verbose] > │ let v86 : num_complex_Complex<float> = method7(v14) │
00:01:57 #3834 [verbose] > │ let v87 : string = "v86.re" │
00:01:57 #3835 [verbose] > │ let v88 : float = Fable.Core.RustInterop.emitRustExpr () v87 │
00:01:57 #3836 [verbose] > │ let v89 : float = 1.0 - v88 │
00:01:57 #3837 [verbose] > │ let v90 : num_complex_Complex<float> = method8(v14) │
00:01:57 #3838 [verbose] > │ let v91 : string = "v90.im" │
00:01:57 #3839 [verbose] > │ let v92 : float = Fable.Core.RustInterop.emitRustExpr () v91 │
00:01:57 #3840 [verbose] > │ let v93 : float = -v92 │
00:01:57 #3841 [verbose] > │ let v94 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3842 [verbose] > │ let v95 : num_complex_Complex<float> = │
00:01:57 #3843 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v89, v93) v94 │
00:01:57 #3844 [verbose] > │ let v96 : string = $" s = mpmath.zeta(s)" │
00:01:57 #3845 [verbose] > │ let v97 : num_complex_Complex<float> = method3(v95) │
00:01:57 #3846 [verbose] > │ let v98 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:57 #3847 [verbose] > │ method4(v0, v96, v97) │
00:01:57 #3848 [verbose] > │ let v99 : num_complex_Complex<float> = method24(v0, v95) │
00:01:57 #3849 [verbose] > │ let v100 : string = "v98.ok()" │
00:01:57 #3850 [verbose] > │ let v101 : num_complex_Complex<float> option = │
00:01:57 #3851 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v100 │
00:01:57 #3852 [verbose] > │ let v102 : (num_complex_Complex<float> -> US0) = method30() │
00:01:57 #3853 [verbose] > │ let v103 : US0 = US0_1 │
00:01:57 #3854 [verbose] > │ let v104 : US0 = v101 |> Option.map v102 |> Option.defaultValue v103 │
00:01:57 #3855 [verbose] > │ let v105 : string = "f64::NAN" │
00:01:57 #3856 [verbose] > │ let v106 : float = Fable.Core.RustInterop.emitRustExpr () v105 │
00:01:57 #3857 [verbose] > │ let v107 : string = "f64::NAN" │
00:01:57 #3858 [verbose] > │ let v108 : float = Fable.Core.RustInterop.emitRustExpr () v107 │
00:01:57 #3859 [verbose] > │ let v109 : string = "num_complex::Complex::new($0, $1)" │
00:01:57 #3860 [verbose] > │ let v110 : num_complex_Complex<float> = │
00:01:57 #3861 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v106, v108) v109 │
00:01:57 #3862 [verbose] > │ let v113 : num_complex_Complex<float> = │
00:01:57 #3863 [verbose] > │ match v104 with │
00:01:57 #3864 [verbose] > │ | US0_1 -> (* None *) │
00:01:57 #3865 [verbose] > │ v110 │
00:01:57 #3866 [verbose] > │ | US0_0(v111) -> (* Some *) │
00:01:57 #3867 [verbose] > │ v111 │
00:01:57 #3868 [verbose] > │ let v114 : string = "$0 * $1" │
00:01:57 #3869 [verbose] > │ let v115 : num_complex_Complex<float> = │
00:01:57 #3870 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v85, v113) v114 │
00:01:57 #3871 [verbose] > │ let v116 : num_complex_Complex<float> = method7(v32) │
00:01:57 #3872 [verbose] > │ let v117 : string = "v116.re" │
00:01:57 #3873 [verbose] > │ let v118 : float = Fable.Core.RustInterop.emitRustExpr () v117 │
00:01:57 #3874 [verbose] > │ let v119 : num_complex_Complex<float> = method7(v115) │
00:01:57 #3875 [verbose] > │ let v120 : string = "v119.re" │
00:01:57 #3876 [verbose] > │ let v121 : float = Fable.Core.RustInterop.emitRustExpr () v120 │
00:01:57 #3877 [verbose] > │ let v122 : float = v118 - v121 │
00:01:57 #3878 [verbose] > │ let v123 : float = -v122 │
00:01:57 #3879 [verbose] > │ let v124 : bool = v122 >= v123 │
00:01:57 #3880 [verbose] > │ let v125 : float = │
00:01:57 #3881 [verbose] > │ if v124 then │
00:01:57 #3882 [verbose] > │ v122 │
00:01:57 #3883 [verbose] > │ else │
00:01:57 #3884 [verbose] > │ v123 │
00:01:57 #3885 [verbose] > │ let v126 : string = $"%A{v125}" │
00:01:57 #3886 [verbose] > │ System.Console.WriteLine v126 │
00:01:57 #3887 [verbose] > │ let v127 : bool = v125 < 0.0001 │
00:01:57 #3888 [verbose] > │ let v129 : bool = │
00:01:57 #3889 [verbose] > │ if v127 then │
00:01:57 #3890 [verbose] > │ true │
00:01:57 #3891 [verbose] > │ else │
00:01:57 #3892 [verbose] > │ method31(v127) │
00:01:57 #3893 [verbose] > │ let v130 : string = $"__expect / actual: %A{v125} / expected: │
00:01:57 #3894 [verbose] > │ %A{0.0001}" │
00:01:57 #3895 [verbose] > │ let v131 : bool = v129 = false │
00:01:57 #3896 [verbose] > │ if v131 then │
00:01:57 #3897 [verbose] > │ failwith<unit> v130 │
00:01:57 #3898 [verbose] > │ let v132 : num_complex_Complex<float> = method8(v32) │
00:01:57 #3899 [verbose] > │ let v133 : string = "v132.im" │
00:01:57 #3900 [verbose] > │ let v134 : float = Fable.Core.RustInterop.emitRustExpr () v133 │
00:01:57 #3901 [verbose] > │ let v135 : num_complex_Complex<float> = method8(v115) │
00:01:57 #3902 [verbose] > │ let v136 : string = "v135.im" │
00:01:57 #3903 [verbose] > │ let v137 : float = Fable.Core.RustInterop.emitRustExpr () v136 │
00:01:57 #3904 [verbose] > │ let v138 : float = v134 - v137 │
00:01:57 #3905 [verbose] > │ let v139 : float = -v138 │
00:01:57 #3906 [verbose] > │ let v140 : bool = v138 >= v139 │
00:01:57 #3907 [verbose] > │ let v141 : float = │
00:01:57 #3908 [verbose] > │ if v140 then │
00:01:57 #3909 [verbose] > │ v138 │
00:01:57 #3910 [verbose] > │ else │
00:01:57 #3911 [verbose] > │ v139 │
00:01:57 #3912 [verbose] > │ let v142 : string = $"%A{v141}" │
00:01:57 #3913 [verbose] > │ System.Console.WriteLine v142 │
00:01:57 #3914 [verbose] > │ let v143 : bool = v141 < 0.0001 │
00:01:57 #3915 [verbose] > │ let v145 : bool = │
00:01:57 #3916 [verbose] > │ if v143 then │
00:01:57 #3917 [verbose] > │ true │
00:01:57 #3918 [verbose] > │ else │
00:01:57 #3919 [verbose] > │ method31(v143) │
00:01:57 #3920 [verbose] > │ let v146 : string = $"__expect / actual: %A{v141} / expected: │
00:01:58 #3921 [verbose] > │ %A{0.0001}" │
00:01:58 #3922 [verbose] > │ let v147 : bool = v145 = false │
00:01:58 #3923 [verbose] > │ if v147 then │
00:01:58 #3924 [verbose] > │ failwith<unit> v146 │
00:01:58 #3925 [verbose] > │ let v148 : int32 = v13 + 1 │
00:01:58 #3926 [verbose] > │ v11.l0 <- v148 │
00:01:58 #3927 [verbose] > │ () │
00:01:58 #3928 [verbose] > │ () │
00:01:58 #3929 [verbose] > │ and method56 () : unit = │
00:01:58 #3930 [verbose] > │ let v0 : string = "pyo3::prepare_freethreaded_python()" │
00:01:58 #3931 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:58 #3932 [verbose] > │ let v1 : string = "let __result = pyo3::Python::with_gil(|py| -> │
00:01:58 #3933 [verbose] > │ pyo3::PyResult<()> { //" │
00:01:58 #3934 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:58 #3935 [verbose] > │ let v2 : string = "py" │
00:01:58 #3936 [verbose] > │ let v3 : pyo3_Python = Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:58 #3937 [verbose] > │ method57(v3) │
00:01:58 #3938 [verbose] > │ let v4 : Result<unit, pyo3_PyErr> = Ok () │
00:01:58 #3939 [verbose] > │ let v5 : Result<unit, pyo3_PyErr> = method32(v4) │
00:01:58 #3940 [verbose] > │ let v6 : string = "v5 }})" │
00:01:58 #3941 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:58 #3942 [verbose] > │ let v7 : string = "{ //" │
00:01:58 #3943 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:58 #3944 [verbose] > │ let v8 : string = "__result" │
00:01:58 #3945 [verbose] > │ let v9 : Result<unit, pyo3_PyErr> = Fable.Core.RustInterop.emitRustExpr │
00:01:58 #3946 [verbose] > │ () v8 │
00:01:58 #3947 [verbose] > │ let v10 : Result<unit, pyo3_PyErr> = method33(v9) │
00:01:58 #3948 [verbose] > │ let v11 : string = "v10.unwrap()" │
00:01:58 #3949 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:58 #3950 [verbose] > │ () │
00:01:58 #3951 [verbose] > │ and method60 (v0 : int32, v1 : Mut3) : bool = │
00:01:58 #3952 [verbose] > │ let v2 : int32 = v1.l0 │
00:01:58 #3953 [verbose] > │ let v3 : bool = v2 < v0 │
00:01:58 #3954 [verbose] > │ v3 │
00:01:58 #3955 [verbose] > │ and method59 (v0 : pyo3_Python) : unit = │
00:01:58 #3956 [verbose] > │ let v1 : (float []) = [|2.0; 2.5; 3.0; 3.5; 4.0; 4.5; 5.0|] │
00:01:58 #3957 [verbose] > │ let v2 : (float []) = [|2.0; 3.0; 5.0; 7.0; 11.0; 13.0; 17.0; 19.0; │
00:01:58 #3958 [verbose] > │ 23.0; 29.0; 31.0; 37.0; 41.0; 43.0; 47.0; 53.0; 59.0; 61.0; 67.0; 71.0|] │
00:01:58 #3959 [verbose] > │ let v3 : int32 = v1.Length │
00:01:58 #3960 [verbose] > │ let v4 : Mut0 = {l0 = 0} : Mut0 │
00:01:58 #3961 [verbose] > │ while method2(v3, v4) do │
00:01:58 #3962 [verbose] > │ let v6 : int32 = v4.l0 │
00:01:58 #3963 [verbose] > │ let v7 : float = v1.[int v6] │
00:01:58 #3964 [verbose] > │ let v8 : string = "num_complex::Complex::new($0, $1)" │
00:01:58 #3965 [verbose] > │ let v9 : num_complex_Complex<float> = │
00:01:58 #3966 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v7, 0.0) v8 │
00:01:58 #3967 [verbose] > │ let v10 : int32 = v2.Length │
00:01:58 #3968 [verbose] > │ let v11 : Mut3 = {l0 = 0; l1 = 1.0} : Mut3 │
00:01:58 #3969 [verbose] > │ while method60(v10, v11) do │
00:01:58 #3970 [verbose] > │ let v13 : int32 = v11.l0 │
00:01:58 #3971 [verbose] > │ let v14 : float = v11.l1 │
00:01:58 #3972 [verbose] > │ let v15 : float = v2.[int v13] │
00:01:58 #3973 [verbose] > │ let v16 : float = -v7 │
00:01:58 #3974 [verbose] > │ let v17 : float = v15 ** v16 │
00:01:58 #3975 [verbose] > │ let v18 : float = 1.0 - v17 │
00:01:58 #3976 [verbose] > │ let v19 : float = v14 / v18 │
00:01:58 #3977 [verbose] > │ let v20 : int32 = v13 + 1 │
00:01:58 #3978 [verbose] > │ v11.l0 <- v20 │
00:01:58 #3979 [verbose] > │ v11.l1 <- v19 │
00:01:58 #3980 [verbose] > │ () │
00:01:58 #3981 [verbose] > │ let v21 : float = v11.l1 │
00:01:58 #3982 [verbose] > │ let v22 : string = $" s = mpmath.zeta(s)" │
00:01:58 #3983 [verbose] > │ let v23 : num_complex_Complex<float> = method3(v9) │
00:01:58 #3984 [verbose] > │ let v24 : Result<num_complex_Complex<float>, std_string_String> = │
00:01:58 #3985 [verbose] > │ method4(v0, v22, v23) │
00:01:58 #3986 [verbose] > │ let v25 : num_complex_Complex<float> = method24(v0, v9) │
00:01:58 #3987 [verbose] > │ let v26 : string = "v24.ok()" │
00:01:58 #3988 [verbose] > │ let v27 : num_complex_Complex<float> option = │
00:01:58 #3989 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v26 │
00:01:58 #3990 [verbose] > │ let v28 : (num_complex_Complex<float> -> US0) = method30() │
00:01:58 #3991 [verbose] > │ let v29 : US0 = US0_1 │
00:01:58 #3992 [verbose] > │ let v30 : US0 = v27 |> Option.map v28 |> Option.defaultValue v29 │
00:01:58 #3993 [verbose] > │ let v31 : string = "f64::NAN" │
00:01:58 #3994 [verbose] > │ let v32 : float = Fable.Core.RustInterop.emitRustExpr () v31 │
00:01:58 #3995 [verbose] > │ let v33 : string = "f64::NAN" │
00:01:58 #3996 [verbose] > │ let v34 : float = Fable.Core.RustInterop.emitRustExpr () v33 │
00:01:58 #3997 [verbose] > │ let v35 : string = "num_complex::Complex::new($0, $1)" │
00:01:58 #3998 [verbose] > │ let v36 : num_complex_Complex<float> = │
00:01:58 #3999 [verbose] > │ Fable.Core.RustInterop.emitRustExpr struct (v32, v34) v35 │
00:01:58 #4000 [verbose] > │ let v39 : num_complex_Complex<float> = │
00:01:58 #4001 [verbose] > │ match v30 with │
00:01:58 #4002 [verbose] > │ | US0_1 -> (* None *) │
00:01:58 #4003 [verbose] > │ v36 │
00:01:58 #4004 [verbose] > │ | US0_0(v37) -> (* Some *) │
00:01:58 #4005 [verbose] > │ v37 │
00:01:58 #4006 [verbose] > │ let v40 : num_complex_Complex<float> = method7(v39) │
00:01:58 #4007 [verbose] > │ let v41 : string = "v40.re" │
00:01:58 #4008 [verbose] > │ let v42 : float = Fable.Core.RustInterop.emitRustExpr () v41 │
00:01:58 #4009 [verbose] > │ let v43 : float = v42 - v21 │
00:01:58 #4010 [verbose] > │ let v44 : float = -v43 │
00:01:58 #4011 [verbose] > │ let v45 : bool = v43 >= v44 │
00:01:58 #4012 [verbose] > │ let v46 : float = │
00:01:58 #4013 [verbose] > │ if v45 then │
00:01:58 #4014 [verbose] > │ v43 │
00:01:58 #4015 [verbose] > │ else │
00:01:58 #4016 [verbose] > │ v44 │
00:01:58 #4017 [verbose] > │ let v47 : string = $"%A{v46}" │
00:01:58 #4018 [verbose] > │ System.Console.WriteLine v47 │
00:01:58 #4019 [verbose] > │ let v48 : bool = v46 < 0.01 │
00:01:58 #4020 [verbose] > │ let v50 : bool = │
00:01:58 #4021 [verbose] > │ if v48 then │
00:01:58 #4022 [verbose] > │ true │
00:01:58 #4023 [verbose] > │ else │
00:01:58 #4024 [verbose] > │ method31(v48) │
00:01:58 #4025 [verbose] > │ let v51 : string = $"__expect / actual: %A{v46} / expected: │
00:01:58 #4026 [verbose] > │ %A{0.01}" │
00:01:58 #4027 [verbose] > │ let v52 : bool = v50 = false │
00:01:58 #4028 [verbose] > │ if v52 then │
00:01:58 #4029 [verbose] > │ failwith<unit> v51 │
00:01:58 #4030 [verbose] > │ let v53 : num_complex_Complex<float> = method8(v39) │
00:01:58 #4031 [verbose] > │ let v54 : string = "v53.im" │
00:01:58 #4032 [verbose] > │ let v55 : float = Fable.Core.RustInterop.emitRustExpr () v54 │
00:01:58 #4033 [verbose] > │ let v56 : string = $"%A{v55}" │
00:01:58 #4034 [verbose] > │ System.Console.WriteLine v56 │
00:01:58 #4035 [verbose] > │ let v57 : bool = v55 < 0.01 │
00:01:58 #4036 [verbose] > │ let v59 : bool = │
00:01:58 #4037 [verbose] > │ if v57 then │
00:01:58 #4038 [verbose] > │ true │
00:01:58 #4039 [verbose] > │ else │
00:01:58 #4040 [verbose] > │ method31(v57) │
00:01:58 #4041 [verbose] > │ let v60 : string = $"__expect / actual: %A{v55} / expected: │
00:01:58 #4042 [verbose] > │ %A{0.01}" │
00:01:58 #4043 [verbose] > │ let v61 : bool = v59 = false │
00:01:58 #4044 [verbose] > │ if v61 then │
00:01:58 #4045 [verbose] > │ failwith<unit> v60 │
00:01:58 #4046 [verbose] > │ let v62 : int32 = v6 + 1 │
00:01:58 #4047 [verbose] > │ v4.l0 <- v62 │
00:01:58 #4048 [verbose] > │ () │
00:01:58 #4049 [verbose] > │ () │
00:01:58 #4050 [verbose] > │ and method58 () : unit = │
00:01:58 #4051 [verbose] > │ let v0 : string = "pyo3::prepare_freethreaded_python()" │
00:01:58 #4052 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:58 #4053 [verbose] > │ let v1 : string = "let __result = pyo3::Python::with_gil(|py| -> │
00:01:58 #4054 [verbose] > │ pyo3::PyResult<()> { //" │
00:01:58 #4055 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:58 #4056 [verbose] > │ let v2 : string = "py" │
00:01:58 #4057 [verbose] > │ let v3 : pyo3_Python = Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:58 #4058 [verbose] > │ method59(v3) │
00:01:58 #4059 [verbose] > │ let v4 : Result<unit, pyo3_PyErr> = Ok () │
00:01:58 #4060 [verbose] > │ let v5 : Result<unit, pyo3_PyErr> = method32(v4) │
00:01:58 #4061 [verbose] > │ let v6 : string = "v5 }})" │
00:01:58 #4062 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:58 #4063 [verbose] > │ let v7 : string = "{ //" │
00:01:58 #4064 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:58 #4065 [verbose] > │ let v8 : string = "__result" │
00:01:58 #4066 [verbose] > │ let v9 : Result<unit, pyo3_PyErr> = Fable.Core.RustInterop.emitRustExpr │
00:01:58 #4067 [verbose] > │ () v8 │
00:01:58 #4068 [verbose] > │ let v10 : Result<unit, pyo3_PyErr> = method33(v9) │
00:01:58 #4069 [verbose] > │ let v11 : string = "v10.unwrap()" │
00:01:58 #4070 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:58 #4071 [verbose] > │ () │
00:01:58 #4072 [verbose] > │ and closure0 () () : unit = │
00:01:58 #4073 [verbose] > │ let v0 : string = "}//" │
00:01:58 #4074 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v0 │
00:01:58 #4075 [verbose] > │ let v1 : string = "#[test] fn test_zeta_at_known_values_() { //" │
00:01:58 #4076 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v1 │
00:01:58 #4077 [verbose] > │ method0() │
00:01:58 #4078 [verbose] > │ let v2 : string = "} #[test] fn test_zeta_at_2_minus2() { //" │
00:01:58 #4079 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v2 │
00:01:58 #4080 [verbose] > │ method34() │
00:01:58 #4081 [verbose] > │ let v3 : string = "} #[test] fn test_trivial_zero_at_negative_even___() │
00:01:58 #4082 [verbose] > │ { //" │
00:01:58 #4083 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v3 │
00:01:58 #4084 [verbose] > │ method36() │
00:01:58 #4085 [verbose] > │ let v4 : string = "} #[test] fn test_non_trivial_zero___() { //" │
00:01:58 #4086 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v4 │
00:01:58 #4087 [verbose] > │ method40() │
00:01:58 #4088 [verbose] > │ let v5 : string = "} #[test] fn test_real_part_greater_than_one___() { │
00:01:58 #4089 [verbose] > │ //" │
00:01:58 #4090 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v5 │
00:01:58 #4091 [verbose] > │ method42() │
00:01:58 #4092 [verbose] > │ let v6 : string = "} #[test] fn test_zeta_at_1___() { //" │
00:01:58 #4093 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v6 │
00:01:58 #4094 [verbose] > │ method44() │
00:01:58 #4095 [verbose] > │ let v7 : string = "} #[test] fn test_symmetry_across_real_axis___() { │
00:01:58 #4096 [verbose] > │ //" │
00:01:58 #4097 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v7 │
00:01:58 #4098 [verbose] > │ method46() │
00:01:58 #4099 [verbose] > │ let v8 : string = "} #[test] fn test_behavior_near_origin___() { //" │
00:01:58 #4100 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v8 │
00:01:58 #4101 [verbose] > │ method48() │
00:01:58 #4102 [verbose] > │ let v9 : string = "} #[test] fn test_imaginary_axis() { //" │
00:01:58 #4103 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v9 │
00:01:58 #4104 [verbose] > │ method50() │
00:01:58 #4105 [verbose] > │ let v10 : string = "} #[test] fn test_critical_strip() { //" │
00:01:58 #4106 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v10 │
00:01:58 #4107 [verbose] > │ method54() │
00:01:58 #4108 [verbose] > │ let v11 : string = "} #[test] fn │
00:01:58 #4109 [verbose] > │ test_reflection_formula_for_specific_value() { //" │
00:01:58 #4110 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v11 │
00:01:58 #4111 [verbose] > │ method56() │
00:01:58 #4112 [verbose] > │ let v12 : string = "} #[test] fn test_euler_product_formula() { //" │
00:01:58 #4113 [verbose] > │ Fable.Core.RustInterop.emitRustExpr () v12 │
00:01:58 #4114 [verbose] > │ method58() │
00:01:58 #4115 [verbose] > │ and closure6 () (v0 : (string [])) : int32 = │
00:01:58 #4116 [verbose] > │ let v1 : string = $"value: {1}" │
00:01:58 #4117 [verbose] > │ System.Console.WriteLine v1 │
00:01:58 #4118 [verbose] > │ 0 │
00:01:58 #4119 [verbose] > │ let v0 : (unit -> unit) = closure0() │
00:01:58 #4120 [verbose] > │ let tests () = v0 () │
00:01:58 #4121 [verbose] > │ let v1 : ((string []) -> int32) = closure6() │
00:01:58 #4122 [verbose] > │ let main args = v1 args │
00:01:58 #4123 [verbose] > │ () │
00:01:58 #4124 [verbose] > │ │
00:01:58 #4125 [verbose] > │ │
00:01:58 #4126 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:02:00 #4127 [verbose] > [NbConvertApp] Converting notebook math.dib.ipynb to html
00:02:00 #4128 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:02:00 #4129 [verbose] > validate(nb)
00:02:01 #4130 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:02:01 #4131 [verbose] > return _pygments_highlight(
00:02:02 #4132 [verbose] > [NbConvertApp] Writing 7420588 bytes to math.dib.html
00:02:03 #4133 [debug] executeAsync / exitCode: 0 / output.Length: 297960
00:02:03 #4134 [debug] main / executeCommand / exitCode: 0
00:02:05 #4135 [debug] runWithTimeoutChildAsync / timeout: 2000
00:00:00 #1 [debug] writeDibCode / output: Spi / path: math.dib
00:00:00 #2 [debug] parseDibCode / output: Spi / file: math.dib
00:00:00 #1 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:00 #2 [debug] executeAsync / options: { Command =
"dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" --port 13805 --default-int i32 --default-float f64"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = Some <fun:main@441-47> }
00:00:00 #3 [verbose] > pwd: C:\home\git\polyglot\lib\math
00:00:00 #4 [verbose] > dllPath: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release
00:00:00 #5 [verbose] > targetDir: C:\home\git\polyglot\target/polyglot/spiral_eval
00:00:00 #6 [verbose] > Starting the Spiral Server. It is bound to: http://localhost:13805
00:00:00 #7 [debug] runWithTimeoutChildAsync / timeout: 500
00:00:00 #8 [verbose] waitForPortAccess / port: 13805 / retry: 0
00:00:01 #9 [debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:
00:00:01 #10 [verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0
00:00:01 #11 [verbose] > Server bound to: http://localhost:13805
00:00:01 #12 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:01 #13 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:01 #14 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:01 #15 [debug] sendJson / port: 13805 / json: {"FileOpen":{"spiText":"// // # math\n\nopen testing\nopen rust_operators\n\ninl types () =\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022num_complex::Complex\u003C$0\u003E\\\u0022)\u003E] type num_complex_Complex\u003C\u0027T\u003E = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022pyo3::types::PyModule\\\u0022)\u003E] type pyo3_types_PyModule = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022pyo3::Bound\u003C$0\u003E\\\u0022)\u003E] type pyo3_Bound\u003C\u0027T\u003E = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022pyo3::Python\\\u0022)\u003E] type pyo3_Python = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022pyo3::PyAny\\\u0022)\u003E] type pyo3_PyAny = class end\u0022\n global \u0022[\u003CFable.Core.Erase; Fable.Core.Emit(\\\u0022pyo3::PyErr\\\u0022)\u003E] type pyo3_PyErr = class end\u0022\n\ninl types () =\n rust.types ()\n sm\u0027.types ()\n types ()\n\n// // ## complex\n\nnominal complex t = $\u0022num_complex_Complex\u003C\u0060t\u003E\u0022\nnominal bound t = $\u0022pyo3_Bound\u003C\u0060t\u003E\u0022\nnominal python = $\u0022pyo3_Python\u0022\nnominal pymodule = $\u0022pyo3_types_PyModule\u0022\nnominal pyany = $\u0022pyo3_PyAny\u0022\nnominal pyerr = $\u0022pyo3_PyErr\u0022\n\ninl complex forall t. ((re : t), (im : t)) : complex t =\n !\\\\((re, im), $\u0027\u0022num_complex::Complex::new($0, $1)\u0022\u0027)\n\n// // ## complex_sin\n\ninl re forall t. (c : complex t) : t =\n inl c = join c\n !\\($\u0027\u0022!c.re\u0022\u0027)\n\ninl im forall t. (c : complex t) : t =\n inl c = join c\n !\\($\u0027\u0022!c.im\u0022\u0027)\n\ninl complex_unbox forall t. (c : complex t) =\n re c, im c\n\ninl (~.^) c = complex c\n\ninl complex_eq forall t. (a : complex t) (b : complex t) : bool =\n !\\($\u0027\u0022!a == !b\u0022\u0027)\n\ninl (.=) a b = complex_eq a b\n\ninstance equable complex t = complex_eq\n\ninl complex_add forall t. (a : complex t) (b : complex t) : complex t =\n !\\($\u0027\u0022!a \u002B !b\u0022\u0027)\n\ninl (.\u002B) a b = complex_add a b\n\ninl complex_sub forall t. (a : complex t) (b : complex t) : complex t =\n !\\\\((a, b), $\u0027\u0022$0 - $1\u0022\u0027)\n\ninl (.-) a b = complex_sub a b\n\ninl complex_mult forall t. (a : complex t) (b : complex t) : complex t =\n !\\\\((a, b), $\u0027\u0022$0 * $1\u0022\u0027)\n\ninl (.*) a b = complex_mult a b\n\ninl complex_div forall t. (a : complex t) (b : complex t) : complex t =\n !\\($\u0027\u0022!a / !b\u0022\u0027)\n\ninl (./) a b = complex_div a b\n\ninl powc forall t. (s : complex t) (c : complex t) : complex t =\n inl c = join c\n inl s = join s\n !\\($\u0027\u0022num_complex::Complex::powc(!c, !s)\u0022\u0027)\n\ninl (.**) a b = powc b a\n\ninl complex_sin forall t. (c : complex t) : complex t =\n !\\($\u0027\u0022!c.sin()\u0022\u0027)\n\ninl conj forall t. (c : complex t) : complex t =\n !\\($\u0027\u0022!c.conj()\u0022\u0027)\n\n// // ## zeta\n\ninl zeta log (gamma : complex f64 -\u003E complex f64) (s : complex f64) : complex f64 =\n inl rec zeta count gamma s =\n if log then\n !\\\\(s, $\u0027\u0022println\\!(\\\\\\\u0022zeta / count: {:?} / s: {:?}\\\\\\\u0022, !count, $0)\u0022\u0027)\n if re s \u003E 1 then\n (.^(0, 0), (am.init 10000i32 id : a i32 _))\n ||\u003E am.fold fun acc n =\u003E\n acc .\u002B (.^(1, 0) ./ (.^(f64 n, 0) .** s))\n else\n inl gamma_term = gamma (.^(1, 0) .- s)\n inl sin_term = .^(pi, 0) .* s ./ .^(2, 0) |\u003E complex_sin\n inl one_minus_s = .^(1 - re s, -(im s))\n inl mirror_term =\n if re one_minus_s \u003C= 1\n then .^(0, 0)\n else\n if count \u003C= 3\n then zeta (count \u002B 1) gamma one_minus_s\n else one_minus_s\n inl reflection_formula =\n .^(2, 0) .* (.^(pi, 0) .** s) .* sin_term .* gamma_term .* mirror_term\n reflection_formula\n join zeta 0i32 gamma s\n\n// // ## eval\n\ninl module_from_code (py : python) (code : string) : _ (bound pymodule) _ =\n inl py = join py\n inl code = code |\u003E sm\u0027.as_str\n !\\($\u0027\u0022pyo3::types::PyModule::from_code_bound(!py, !code, \\\\\u0022\\\\\u0022, \\\\\u0022\\\\\u0022)\u0022\u0027)\n |\u003E resultm.map_error\u0027 fun (x : pyerr) =\u003E x |\u003E sm\u0027.format\u0027\n\ninl use_pyanymethods () =\n global \u0022Fable.Core.RustInterop.emitRustExpr () \\\u0022);\\nuse pyo3::prelude::PyAnyMethods;\\n//\\\u0022\u0022\n\ninl getattr (attr : string) (module : bound pymodule) : _ (bound pyany) _ =\n inl attr = join attr\n inl attr = attr |\u003E sm\u0027.as_str\n inl module = join module\n use_pyanymethods ()\n !\\($\u0027\u0022!module.getattr(!attr)\u0022\u0027)\n |\u003E resultm.map_error\u0027 fun (x : pyerr) =\u003E x |\u003E sm\u0027.format\u0027\n\ninl call forall t. (args : t) (module : bound pyany) : _ (bound pyany) _ =\n inl args = join args\n inl module = join module\n !\\($\u0027\u0022pyo3::prelude::PyAnyMethods::call(\u0026!module, ((*!args).0, *(*!args).1), None)\u0022\u0027)\n |\u003E resultm.map_error\u0027 fun (x : pyerr) =\u003E x |\u003E sm\u0027.format\u0027\n\ninl extract forall t. (result : bound pyany) : _ t _ =\n inl result = join result\n use_pyanymethods ()\n !\\($\u0027\u0022!result.extract()\u0022\u0027)\n |\u003E resultm.map_error\u0027 fun (x : pyerr) =\u003E x |\u003E sm\u0027.format\u0027\n\ninl eval py code (args : pair bool (pair f64 f64)) : _ (_ f64) sm\u0027.std_string =\n inl code =\n code\n |\u003E module_from_code py\n |\u003E resultm.unwrap\u0027\n inl fn =\n code\n |\u003E getattr \u0022fn\u0022\n |\u003E resultm.unwrap\u0027\n\n fn\n |\u003E call args\n |\u003E resultm.try\u0027\n |\u003E extract\n |\u003E resultm.try\u0027\n |\u003E complex\n |\u003E Ok\n |\u003E resultm.box\n\ninl call1_ log py s code =\n inl code = join (a code : _ i32 _) |\u003E sm\u0027.concat_array_trailing \u0022\\n\u0022\n \n inl s = new_pair (re s) (im s)\n inl args = new_pair log s\n\n eval py code args\n\ninl call1_ log name py s line =\n inl s = join s\n join\n ;[\n $\u0027$\u0022import sys\u0022\u0027\n $\u0027$\u0022import traceback\u0022\u0027\n $\u0027$\u0022import re\u0022\u0027\n $\u0027$\u0022count = 0\u0022\u0027\n $\u0027$\u0022memory_address_pattern = re.compile(r\\\u0027 at 0x[0-9a-fA-F]\u002B\\\u0027)\u0022\u0027\n $\u0027$\u0022def trace_calls(frame, event, arg):\u0022\u0027\n $\u0027$\u0022 global count\u0022\u0027\n $\u0027$\u0022 count \u002B= 1\u0022\u0027\n $\u0027$\u0022 if count \u003C 200:\u0022\u0027\n $\u0027$\u0022 try:\u0022\u0027\n $\u0027$\u0022 args = {{ k: v for k, v in frame.f_locals.items() if frame.f_code.co_name \\!= \\\u0027make_mpc\\\u0027 and k not in [\\\u0027ctx\\\u0027] and not callable(v) }}\u0022\u0027\n $\u0027$\u0022 args_str = \\\u0027, \\\u0027.join([ f\\\\\\\u0022{{k}}={{re.sub(memory_address_pattern, \\\u0027 at 0x\u003C?\u003E\\\u0027, repr(v))}}\\\\\\\u0022 for k, v in args.items() ])\u0022\u0027\n $\u0027$\u0022 print(f\\\\\\\u0022{{event}}({!name}) / f_code.co_name: {{frame.f_code.co_name}} / f_locals: {{args_str}} / f_lineno: {{frame.f_lineno}} / f_code.co_filename: {{frame.f_code.co_filename.split(\\\u0027site-packages\\\u0027)[-1]}} / f_back.f_lineno: {{ \\\u0027\\\u0027 if frame.f_back is None else frame.f_back.f_lineno }} / f_back.f_code.co_filename: {{ \\\u0027\\\u0027 if frame.f_back is None else frame.f_back.f_code.co_filename.split(\\\u0027site-packages\\\u0027)[-1] }} / arg: {{re.sub(memory_address_pattern, \\\u0027 at 0x\u003C?\u003E\\\u0027, repr(arg))}}\\\\\\\u0022, flush=True)\u0022\u0027\n $\u0027$\u0022 except ValueError as e:\u0022\u0027\n $\u0027$\u0022 print(f\\\u0027{!name} / e: {{e}}\\\u0027, flush=True)\u0022\u0027\n $\u0027$\u0022 return trace_calls\u0022\u0027\n $\u0027$\u0022import mpmath\u0022\u0027\n $\u0027$\u0022def fn(log, s):\u0022\u0027\n $\u0027$\u0022 global count\u0022\u0027\n $\u0027$\u0022 if log:\u0022\u0027\n $\u0027$\u0022 print(f\\\u0027{!name} / s: {{s}} / count: {{count}}\\\u0027, flush=True)\u0022\u0027\n $\u0027$\u0022 s = complex(*s)\u0022\u0027\n $\u0027$\u0022 try:\u0022\u0027\n $\u0027$\u0022 if log: sys.settrace(trace_calls)\u0022\u0027\n line\n $\u0027$\u0022 if log:\u0022\u0027\n $\u0027$\u0022 sys.settrace(None)\u0022\u0027\n $\u0027$\u0022 print(f\\\u0027{!name} / result: {{s}} / count: {{count}}\\\u0027, flush=True)\u0022\u0027\n $\u0027$\u0022 except ValueError as e:\u0022\u0027\n $\u0027$\u0022 if s.real == 1:\u0022\u0027\n $\u0027$\u0022 s = complex(float(\\\u0027inf\\\u0027), 0)\u0022\u0027\n $\u0027$\u0022 return (s.real, s.imag)\u0022\u0027\n ]\n |\u003E call1_ log py s\n\ninl gamma_ log py s =\n call1_ log \u0022gamma_\u0022 py s $\u0027$\u0022 s = mpmath.gamma(s)\u0022\u0027\n\ninl zeta_ log py s =\n call1_ log \u0022zeta_\u0022 py s $\u0027$\u0022 s = mpmath.zeta(s)\u0022\u0027\n\n// // ## run_test\n\ninl run_test log closure_fix (fn : (complex f64 -\u003E complex f64) * (complex f64 -\u003E complex f64) -\u003E ()) =\n inl fn_ (py : python) : resultm.result\u0027 () pyerr =\n inl nan () =\n !\\($\u0027\u0022f64::NAN\u0022\u0027)\n inl gamma__ = fun (s : complex f64) =\u003E\n inl result = gamma_ log py s\n if log then\n inl s = join s\n !\\($\u0027\u0022println\\!(\\\\\\\u0022gamma__ / s: {:?} / result: {:?}\\\\\\\u0022, !s, !result)\u0022\u0027)\n result |\u003E resultm.ok\u0027 |\u003E optionm\u0027.unbox |\u003E optionm\u0027.default_value .^(nan (), nan ())\n inl zeta__ = fun (s : complex f64) =\u003E\n inl result = zeta_ log py s\n\n inl z = zeta true gamma__ s\n\n if log then\n inl s = join s\n !\\($\u0027\u0022println\\!(\\\\\\\u0022zeta__ / s: {:?} / result: {:?} / z: {:?}\\\\\\\u0022, !s, !result, !z)\u0022\u0027)\n\n // re result - re x |\u003E abs\n // |\u003E _assert_lt 0.001\n\n // im result - im x |\u003E abs\n // |\u003E _assert_lt 0.001\n\n result |\u003E resultm.ok\u0027 |\u003E optionm\u0027.unbox |\u003E optionm\u0027.default_value .^(nan (), nan ())\n join fn (zeta__, gamma__)\n\n Ok ()\n |\u003E resultm.box\n \n join\n !\\($\u0027\u0022pyo3::prepare_freethreaded_python()\u0022\u0027) : ()\n\n !\\($\u0027\u0022let __result = pyo3::Python::with_gil(|py| -\u003E pyo3::PyResult\u003C()\u003E { //\u0022\u0027)\n\n let x\u0027 = fn_ (!\\($\u0027\u0022py\u0022\u0027) : python)\n inl x\u0027 = join x\u0027\n \n inl closure_fix = 2u8, 1u8\n x\u0027 |\u003E rust.fix_closure closure_fix\n\n (!\\($\u0027\u0022__result\u0022\u0027) : _ () pyerr)\n |\u003E resultm.unwrap\u0027\n\n// // ## test_zeta_at_known_values_\n\ninl test_zeta_at_known_values_ log = run_test log (3u8, 2u8) fun zeta, gamma =\u003E\n ;[\n .^(2, 0), pi ** 2 / 6\n .^(-1, 0), -1 / 12\n ]\n |\u003E fun x =\u003E a x : _ i32 _\n |\u003E am.iter fun s, e =\u003E\n inl result = zeta s\n\n result |\u003E im |\u003E _assert_eq 0\n re result - e |\u003E abs |\u003E _assert_lt 0.0001\n\n// // ## test_zeta_at_2_minus2\n\ninl test_zeta_at_2_minus2 log = run_test log (6u8, 5u8) fun zeta, gamma =\u003E\n inl s = .^(2, -2)\n inl result = zeta s\n\n (re result - 0.8673) |\u003E abs |\u003E _assert_lt 0.001\n (im result - 0.2750) |\u003E abs |\u003E _assert_lt 0.001\n\n// // ## test_trivial_zero_at_negative_even___\n\ninl test_trivial_zero_at_negative_even___ log = run_test log (2u8, 1u8) fun zeta, gamma =\u003E\n (join listm\u0027.init_series -2f64 -40 -2)\n |\u003E listm.iter fun n =\u003E\n inl s = .^(n, 0)\n inl result = zeta s\n\n result |\u003E re |\u003E _assert_eq 0\n result |\u003E im |\u003E _assert_eq 0\n\n// // ## test_non_trivial_zero___\n\ninl test_non_trivial_zero___ log = run_test log (3u8, 2u8) fun zeta, gamma =\u003E\n ;[\n .^(0.5, 14.134725)\n .^(0.5, 21.022040)\n .^(0.5, 25.010857)\n .^(0.5, 30.424876)\n .^(0.5, 32.935062)\n .^(0.5, 37.586178)\n ]\n |\u003E fun x =\u003E a x : _ i32 _\n |\u003E am.iter fun x =\u003E\n inl result = zeta x\n result |\u003E re |\u003E abs |\u003E _assert_lt 0.0001\n result |\u003E im |\u003E abs |\u003E _assert_lt 0.0001\n\n// // ## test_real_part_greater_than_one___\n\ninl test_real_part_greater_than_one___ log = run_test log (3u8, 2u8) fun zeta, gamma =\u003E\n inl points = ;[2; 3; 4; 5; 10; 20; 50]\n (a points : _ i32 _)\n |\u003E am.iter fun point =\u003E\n inl s = .^(point, 0)\n inl result = zeta s\n result |\u003E re |\u003E _assert_gt 0\n result |\u003E im |\u003E _assert_eq 0\n\n// // ## test_zeta_at_1___\n\ninl test_zeta_at_1___ log = run_test log (6u8, 5u8) fun zeta, gamma =\u003E\n inl s = .^(1, 0)\n inl result = zeta s\n result |\u003E re |\u003E _assert_eq limit.max\n result |\u003E im |\u003E _assert_eq 0\n\n// // ## test_symmetry_across_real_axis___\n\ninl test_symmetry_across_real_axis___ log = run_test log (8u8, 7u8) fun zeta, gamma =\u003E\n inl s = .^(2, 10)\n inl result_positive_im = zeta s\n inl result_negative_im = zeta .^(re s, -(im s))\n inl conj = result_negative_im |\u003E conj\n result_positive_im |\u003E re |\u003E _assert_eq (conj |\u003E re)\n result_positive_im |\u003E im |\u003E _assert_eq (conj |\u003E im)\n\n// // ## test_behavior_near_origin___\n\ninl test_behavior_near_origin___ log = run_test log (6u8, 5u8) fun zeta, gamma =\u003E\n inl s = .^(0.01, 0.01)\n inl result = zeta s\n result |\u003E re |\u003E _assert_lt limit.max\n result |\u003E im |\u003E _assert_lt limit.max\n\n// // ## test_imaginary_axis\n\ninl test_imaginary_axis log = run_test log (3u8, 2u8) fun zeta, gamma =\u003E\n (join a ;[10; 20; 30; 40; 50; 60; 70; 80; 90; 100] : _ i32 _)\n |\u003E am.iter fun s =\u003E\n inl s = .^(0, s)\n inl result = zeta s\n result |\u003E re |\u003E _assert_ne 0\n result |\u003E im |\u003E _assert_ne 0\n\n// // ## test_critical_strip\n\ninl test_critical_strip log = run_test log (3u8, 2u8) fun zeta, gamma =\u003E\n ;[\n .^(0.5, 14.134725)\n .^(0.75, 20.5)\n .^(1.25, 30.1)\n .^(0.25, 40.0)\n .^(1.0, 50.0)\n ]\n |\u003E fun x =\u003E a x : _ i32 _\n |\u003E am.iter fun s =\u003E\n inl result = zeta s\n result |\u003E re |\u003E _assert_ne 0\n result |\u003E im |\u003E _assert_ne 0\n\n// // ## test_reflection_formula_for_specific_value\n\ninl test_reflection_formula_for_specific_value log = run_test log (3u8, 2u8) fun zeta, gamma =\u003E\n ;[\n .^(3, 4)\n .^(2.5, -3.5)\n .^(1.5, 2.5)\n .^(0.5, 14.134725)\n ]\n |\u003E fun x =\u003E a x : _ i32 _\n |\u003E am.iter fun s =\u003E\n inl lhs = zeta s\n inl reflection_coefficient =\n (.^(2, 0) .** s)\n .* (.^(pi, 0) .** (s .- .^(1, 0)))\n .* (.^(pi, 0) .* s ./ .^(2, 0) |\u003E complex_sin)\n .* gamma (.^(1, 0) .- s)\n\n inl one_minus_s = .^(1 - re s, -(im s))\n inl rhs = reflection_coefficient .* zeta one_minus_s\n\n re lhs - re rhs |\u003E abs |\u003E _assert_lt 0.0001\n im lhs - im rhs |\u003E abs |\u003E _assert_lt 0.0001\n\n// // ## test_euler_product_formula\n\ninl test_euler_product_formula log = run_test log (3u8, 2u8) fun zeta, gamma =\u003E\n inl s_values = ;[2; 2.5; 3; 3.5; 4; 4.5; 5]\n inl primes = ;[2; 3; 5; 7; 11; 13; 17; 19; 23; 29; 31; 37; 41; 43; 47; 53; 59; 61; 67; 71]\n (a s_values : _ i32 _)\n |\u003E am.iter fun s_re =\u003E\n inl s = .^(s_re, 0)\n inl product =\n (1, (a primes : _ i32 _))\n ||\u003E am.fold fun acc x =\u003E\n acc * 1 / (1 - x ** -s_re)\n\n inl result = zeta s\n re result - product |\u003E abs |\u003E _assert_lt 0.01\n result |\u003E im |\u003E _assert_lt 0.01\n\n// // ## graph\n\n// // ## tests\n\ninl tests () =\n !\\($\u0027\u0022}//\u0022\u0027) : ()\n\n !\\($\u0027\u0022#[test] fn test_zeta_at_known_values_() { //\u0022\u0027) : ()\n test_zeta_at_known_values_ false\n !\\($\u0027\u0022} #[test] fn test_zeta_at_2_minus2() { //\u0022\u0027) : ()\n test_zeta_at_2_minus2 false\n !\\($\u0027\u0022} #[test] fn test_trivial_zero_at_negative_even___() { //\u0022\u0027) : ()\n test_trivial_zero_at_negative_even___ false\n !\\($\u0027\u0022} #[test] fn test_non_trivial_zero___() { //\u0022\u0027) : ()\n test_non_trivial_zero___ false\n !\\($\u0027\u0022} #[test] fn test_real_part_greater_than_one___() { //\u0022\u0027) : ()\n test_real_part_greater_than_one___ false\n !\\($\u0027\u0022} #[test] fn test_zeta_at_1___() { //\u0022\u0027) : ()\n test_zeta_at_1___ false\n !\\($\u0027\u0022} #[test] fn test_symmetry_across_real_axis___() { //\u0022\u0027) : ()\n test_symmetry_across_real_axis___ false\n !\\($\u0027\u0022} #[test] fn test_behavior_near_origin___() { //\u0022\u0027) : ()\n test_behavior_near_origin___ false\n !\\($\u0027\u0022} #[test] fn test_imaginary_axis() { //\u0022\u0027) : ()\n test_imaginary_axis false\n !\\($\u0027\u0022} #[test] fn test_critical_strip() { //\u0022\u0027) : ()\n test_critical_strip false\n !\\($\u0027\u0022} #[test] fn test_reflection_formula_for_specific_value() { //\u0022\u0027) : ()\n test_reflection_formula_for_specific_value false\n !\\($\u0027\u0022} #[test] fn test_euler_product_formula() { //\u0022\u0027) : ()\n test_euler_product_formula false\n\n// // rust=\n\ninl main (_args : array_base string) =\n inl value = 1i32\n console.write_line ($\u0022$\\\u0022value: {!value}\\\u0022\u0022 : string)\n 0i32\n\ninl main () =\n types ()\n $\u0022let tests () = !tests ()\u0022 : ()\n $\u0022let main args = !main args\u0022 : ()\n","uri":"file:///c:/home/git/polyglot/lib/math/math.spi"}} / result.Length:
00:00:01 #16 [debug] sendJson / port: 13805 / json: {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/lib/math/math.spi"}} / result.Length:
00:00:01 #17 [verbose] > Building c:\home\git\polyglot\lib\math\math.spi
00:00:02 #18 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:03 #19 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: [] / typeErrorCount: 0
00:00:04 #20 [debug] buildFile / takeWhileInclusive / fsxContent: [<Fable.Core.Erase; Fable.Core.Emit("Func0<$0>")>] type Func0<'T> = class end
[<Fable.Core.Erase; Fable.Core.Emit("Func1<$0, $1>")>] type Func0<'T, 'U> = class end
[<Fable.Core.Erase; Fable.Core.Emit("Box<$0>")>] type Box<'T> = class end
[<Fable.Core.Erase; Fable.Core.Emit("dyn $0")>] type Dyn<'T> = class end
[<Fable.Core.Erase; Fable.Core.Emit("Fn() -> $0")>] type Fn<'T> = class end
[<Fable.Core.Erase; Fable.Core.Emit("Fn()")>] type FnUnit = class end
[<Fable.Core.Erase; Fable.Core.Emit("FnOnce() -> $0")>] type FnOnce<'T> = class end
[<Fable.Core.Erase; Fable.Core.Emit("Fn($0, $1)")>] type ActionFn2<'T, 'U> = class end
[<Fable.Core.Erase; Fable.Core.Emit("impl $0")>] type Impl<'T> = class end
[<Fable.Core.Erase; Fable.Core.Emit("mut $0")>]... / errors: [] / typeErrorCount: 0
00:00:04 #21 [debug] watchWithFilter / Disposing watch stream / filter: FileName, LastWrite
00:00:06 #22 [debug] runWithTimeoutChildAsync / timeout: 2000
00:00:00 #1 [debug] persistCodeProject / packages: [Fable.Core] / modules: [lib/spiral/common.fsx; lib/spiral/sm.fsx; lib/spiral/date_time.fsx; ... ] / name: math / code.Length: 125510
00:00:00 #2 [debug] buildProject / fullPath: C:\home\git\polyglot\target\polyglot\builder\math\math.fsproj
00:00:00 #3 [debug] executeAsync / options: { Command =
"dotnet publish "C:\home\git\polyglot\target/polyglot/builder\math\math.fsproj" --configuration Release --output "C:\home\git\polyglot\lib\math\dist" --runtime linux-x64"
WorkingDirectory = Some "C:\home\git\polyglot\target\polyglot\builder\math"
CancellationToken = None
OnLine = None }
00:00:00 #4 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f for .NET
00:00:01 #5 [verbose] > Determining projects to restore...
00:00:03 #6 [verbose] > Restored C:\home\git\polyglot\target\polyglot\builder\math\math.fsproj (in 1.26 sec).
00:00:03 #7 [verbose] > C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.24101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(313,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\target\polyglot\builder\math\math.fsproj]
00:00:11 #8 [verbose] > math -> C:\home\git\polyglot\target\polyglot\builder\math\bin\Release\net9.0\linux-x64\math.dll
00:00:12 #9 [verbose] > math -> C:\home\git\polyglot\lib\math\dist\
00:00:12 #10 [debug] executeAsync / exitCode: 0 / output.Length: 666
00:00:12 #11 [debug] executeAsync / options: { Command =
"dotnet publish "C:\home\git\polyglot\target/polyglot/builder\math\math.fsproj" --configuration Release --output "C:\home\git\polyglot\lib\math\dist" --runtime win-x64"
WorkingDirectory = Some "C:\home\git\polyglot\target\polyglot\builder\math"
CancellationToken = None
OnLine = None }
00:00:13 #12 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f for .NET
00:00:13 #13 [verbose] > Determining projects to restore...
00:00:14 #14 [verbose] > Restored C:\home\git\polyglot\target\polyglot\builder\math\math.fsproj (in 390 ms).
00:00:14 #15 [verbose] > C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.24101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(313,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\target\polyglot\builder\math\math.fsproj]
00:00:21 #16 [verbose] > math -> C:\home\git\polyglot\target\polyglot\builder\math\bin\Release\net9.0\win-x64\math.dll
00:00:24 #17 [verbose] > math -> C:\home\git\polyglot\lib\math\dist\
00:00:25 #18 [debug] executeAsync / exitCode: 0 / output.Length: 662
Fable 4.14.0: F# to Rust compiler (status: alpha)
Thanks to the contributor! @worldbeater
Stand with Ukraine! https://standwithukraine.com.ua/
Parsing ..\..\target\polyglot\builder\math\math.fsproj...
Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.
Project and references (8 source files) parsed in 181ms
Started Fable compilation...
Fable compilation finished in 4670ms
.\..\spiral\common.fsx(98,0): (98,2) warning FABLE: For Rust, support for F# static and module do bindings is disabled by default. It can be enabled with the 'static_do_bindings' feature. Use at your own risk!
.\..\spiral\date_time.fsx(106,0): (106,2) warning FABLE: For Rust, support for F# static and module do bindings is disabled by default. It can be enabled with the 'static_do_bindings' feature. Use at your own risk!
.\..\spiral\sm.fsx(285,0): (285,2) warning FABLE: For Rust, support for F# static and module do bindings is disabled by default. It can be enabled with the 'static_do_bindings' feature. Use at your own risk!
.\..\spiral\trace.fsx(264,0): (264,2) warning FABLE: For Rust, support for F# static and module do bindings is disabled by default. It can be enabled with the 'static_do_bindings' feature. Use at your own risk!
.\..\spiral\file_system.fsx(3362,12): (3362,25) warning FABLE: For Rust, support for F# static and module do bindings is disabled by default. It can be enabled with the 'static_do_bindings' feature. Use at your own risk!
.\..\spiral\file_system.fsx(3363,0): (3363,9) warning FABLE: For Rust, support for F# static and module do bindings is disabled by default. It can be enabled with the 'static_do_bindings' feature. Use at your own risk!
.\..\spiral\file_system.fsx(3374,0): (3374,2) warning FABLE: For Rust, support for F# static and module do bindings is disabled by default. It can be enabled with the 'static_do_bindings' feature. Use at your own risk!
.\..\..\target\polyglot\builder\math\math.fs(37,0): (39,3) warning FABLE: For Rust, support for F# static and module do bindings is disabled by default. It can be enabled with the 'static_do_bindings' feature. Use at your own risk!
Compiling math v0.0.1 (C:\home\git\polyglot\lib\math)
Finished `release` profile [optimized] target(s) in 15.05s
Running unittests math.rs (C:\home\git\polyglot\target\release\deps\math-d4dbef61f0dacdd5.exe)
running 12 tests
test module_b7a9935b::Math::test_euler_product_formula ... ok
test module_b7a9935b::Math::test_real_part_greater_than_one___ ... ok
test module_b7a9935b::Math::test_zeta_at_1___ ... ok
test module_b7a9935b::Math::test_critical_strip ... ok
test module_b7a9935b::Math::test_reflection_formula_for_specific_value ... ok
test module_b7a9935b::Math::test_zeta_at_2_minus2 ... ok
test module_b7a9935b::Math::test_zeta_at_known_values_ ... ok
test module_b7a9935b::Math::test_symmetry_across_real_axis___ ... ok
test module_b7a9935b::Math::test_non_trivial_zero___ ... ok
test module_b7a9935b::Math::test_trivial_zero_at_negative_even___ ... ok
test module_b7a9935b::Math::test_imaginary_axis ... ok
test module_b7a9935b::Math::test_behavior_near_origin___ ... ok
test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.47s
In [ ]:
{ . "$ScriptDir/../apps/scheduler/build.ps1" } | Invoke-Block
00:00:00 #1 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:00 #2 [debug] executeAsync / options: { Command =
"dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" --port 13805 --default-int i32 --default-float f64"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = Some <fun:main@441-47> }
00:00:00 #3 [verbose] > pwd: C:\home\git\polyglot\apps\scheduler
00:00:00 #4 [verbose] > dllPath: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release
00:00:00 #5 [verbose] > targetDir: C:\home\git\polyglot\target/polyglot/spiral_eval
00:00:00 #6 [verbose] > Starting the Spiral Server. It is bound to: http://localhost:13805
00:00:00 #7 [debug] runWithTimeoutChildAsync / timeout: 500
00:00:00 #8 [verbose] waitForPortAccess / port: 13805 / retry: 0
00:00:01 #9 [debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:
00:00:01 #10 [verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0
00:00:01 #11 [verbose] > Server bound to: http://localhost:13805
00:00:01 #12 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 Tasks.dib -Retries 3""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:00:05 #13 [verbose] >
00:00:05 #14 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:05 #15 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:05 #16 [verbose] > │ ## Tasks (Polyglot) │
00:00:05 #17 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:05 #18 [verbose] >
00:00:05 #19 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:05 #20 [verbose] > // // test
00:00:05 #21 [verbose] >
00:00:05 #22 [verbose] > open testing
00:00:09 #23 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef4271045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi
00:00:11 #24 [verbose] >
00:00:11 #25 [verbose] > ╭─[ 5.74s - stdout ]───────────────────────────────────────────────────────────╮
00:00:11 #26 [verbose] > │ () │
00:00:11 #27 [verbose] > │ │
00:00:11 #28 [verbose] > │ │
00:00:11 #29 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:11 #30 [verbose] >
00:00:11 #31 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:11 #32 [verbose] > inl types () =
00:00:11 #33 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::string::String\")>]]
00:00:11 #34 [verbose] > type std_string_String = class end"
00:00:11 #35 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"&$0\")>]] type Ref<'T> =
00:00:11 #36 [verbose] > class end"
00:00:11 #37 [verbose] > global "[[<Fable.Core.Erase; Fable.Core.Emit(\"str\")>]] type Str = class
00:00:11 #38 [verbose] > end"
00:00:11 #39 [verbose] >
00:00:11 #40 [verbose] > inl emit_expr forall a t. (args : a) (code : string) : t =
00:00:11 #41 [verbose] > real
00:00:11 #42 [verbose] > $"Fable.Core.RustInterop.emitRustExpr !args !code" : t
00:00:11 #43 [verbose] >
00:00:11 #44 [verbose] >
00:00:11 #45 [verbose] > nominal std_string = $"std_string_String"
00:00:11 #46 [verbose] > nominal ref' t = $"Ref<`t>"
00:00:11 #47 [verbose] > nominal str = $"Str"
00:00:11 #48 [verbose] >
00:00:11 #49 [verbose] > inl format_debug forall t. (x : t) : std_string =
00:00:11 #50 [verbose] > real
00:00:11 #51 [verbose] > emit_expr `t `std_string x "format!(\"{:?}\", $0)"
00:00:11 #52 [verbose] >
00:00:11 #53 [verbose] > inl format_pretty forall t. (x : t) : std_string =
00:00:11 #54 [verbose] > real
00:00:11 #55 [verbose] > emit_expr `t `std_string x "format!(\"{:#?}\", $0)"
00:00:11 #56 [verbose] >
00:00:11 #57 [verbose] > inl to_std_string (str : ref' str) : std_string =
00:00:11 #58 [verbose] > // inl str = join str
00:00:11 #59 [verbose] > // // emit_expr () $"\"!str.to_string()\""
00:00:11 #60 [verbose] > // // emit_expr () $"\"alloc::string::to_string(!str)\""
00:00:11 #61 [verbose] > // emit_expr str "($0).to_string()"
00:00:11 #62 [verbose] > emit_expr str $"\"String::from(core::ops::Deref::deref($0))\""
00:00:11 #63 [verbose] > // emit_expr str $"\"String::from(*$0)\""
00:00:11 #64 [verbose] > // emit_expr () $"\"String::from(!str)\""
00:00:11 #65 [verbose] >
00:00:11 #66 [verbose] > inl format forall t. (x : t) : std_string =
00:00:11 #67 [verbose] > real
00:00:11 #68 [verbose] > inl result : std_string =
00:00:11 #69 [verbose] > typecase t with
00:00:11 #70 [verbose] > | string => to_std_string x
00:00:11 #71 [verbose] > | std_string => x
00:00:11 #72 [verbose] > | _ => format_pretty `t x
00:00:11 #73 [verbose] > result
00:00:11 #74 [verbose] >
00:00:11 #75 [verbose] > inl raw_string_literal (s : string) : ref' str =
00:00:11 #76 [verbose] > emit_expr () $"\"r#\\\"\" + !s + \"\\\"#\""
00:00:11 #77 [verbose] >
00:00:11 #78 [verbose] > inl (~#) (s : string) : ref' str =
00:00:11 #79 [verbose] > raw_string_literal s
00:00:11 #80 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8bf0f8026c5d7e32fa037e9ac5cced9dbb98baefd90344b5b074a817cfaa5fc3\main.spi
00:00:11 #81 [verbose] >
00:00:11 #82 [verbose] > ╭─[ 268.67ms - stdout ]────────────────────────────────────────────────────────╮
00:00:11 #83 [verbose] > │ () │
00:00:11 #84 [verbose] > │ │
00:00:11 #85 [verbose] > │ │
00:00:11 #86 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:11 #87 [verbose] >
00:00:11 #88 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:11 #89 [verbose] > nominal task_name = string
00:00:11 #90 [verbose] >
00:00:11 #91 [verbose] > union manual_scheduling =
00:00:11 #92 [verbose] > | WithSuggestion
00:00:11 #93 [verbose] > | WithoutSuggestion
00:00:11 #94 [verbose] >
00:00:11 #95 [verbose] > union recurrency_offset =
00:00:11 #96 [verbose] > | Days : i32
00:00:11 #97 [verbose] > | Weeks : i32
00:00:11 #98 [verbose] > | Months : i32
00:00:11 #99 [verbose] >
00:00:11 #100 [verbose] > union day_of_week =
00:00:11 #101 [verbose] > | Sunday
00:00:11 #102 [verbose] > | Monday
00:00:11 #103 [verbose] > | Tuesday
00:00:11 #104 [verbose] > | Wednesday
00:00:11 #105 [verbose] > | Thursday
00:00:11 #106 [verbose] > | Friday
00:00:11 #107 [verbose] > | Saturday
00:00:11 #108 [verbose] >
00:00:11 #109 [verbose] > union month =
00:00:11 #110 [verbose] > | January
00:00:11 #111 [verbose] > | February
00:00:11 #112 [verbose] > | March
00:00:11 #113 [verbose] > | April
00:00:11 #114 [verbose] > | May
00:00:11 #115 [verbose] > | June
00:00:11 #116 [verbose] > | July
00:00:11 #117 [verbose] > | August
00:00:11 #118 [verbose] > | September
00:00:11 #119 [verbose] > | October
00:00:11 #120 [verbose] > | November
00:00:11 #121 [verbose] > | December
00:00:11 #122 [verbose] >
00:00:11 #123 [verbose] > nominal day = i32
00:00:11 #124 [verbose] > nominal year = i32
00:00:11 #125 [verbose] >
00:00:11 #126 [verbose] > union fixed_recurrency =
00:00:11 #127 [verbose] > | Weekly : day_of_week
00:00:11 #128 [verbose] > | Monthly : day
00:00:11 #129 [verbose] > | Yearly : day * month
00:00:11 #130 [verbose] >
00:00:11 #131 [verbose] > union recurrency =
00:00:11 #132 [verbose] > | Offset : recurrency_offset
00:00:11 #133 [verbose] > | Fixed : list fixed_recurrency
00:00:11 #134 [verbose] >
00:00:11 #135 [verbose] > union scheduling =
00:00:11 #136 [verbose] > | Manual : manual_scheduling
00:00:11 #137 [verbose] > | Recurrent : recurrency
00:00:11 #138 [verbose] >
00:00:11 #139 [verbose] > type task =
00:00:11 #140 [verbose] > {
00:00:11 #141 [verbose] > name : task_name
00:00:11 #142 [verbose] > scheduling : scheduling
00:00:11 #143 [verbose] > }
00:00:11 #144 [verbose] >
00:00:11 #145 [verbose] > type date =
00:00:11 #146 [verbose] > {
00:00:11 #147 [verbose] > year : year
00:00:11 #148 [verbose] > month : month
00:00:11 #149 [verbose] > day : day
00:00:11 #150 [verbose] > }
00:00:11 #151 [verbose] >
00:00:11 #152 [verbose] > union status =
00:00:11 #153 [verbose] > | Postponed : option ()
00:00:11 #154 [verbose] >
00:00:11 #155 [verbose] > type event =
00:00:11 #156 [verbose] > {
00:00:11 #157 [verbose] > date : date
00:00:11 #158 [verbose] > status : status
00:00:11 #159 [verbose] > }
00:00:11 #160 [verbose] >
00:00:11 #161 [verbose] > type task_template =
00:00:11 #162 [verbose] > {
00:00:11 #163 [verbose] > task : task
00:00:11 #164 [verbose] > events : list event
00:00:11 #165 [verbose] > }
00:00:12 #166 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\db5464a5d32680df08405bcc73aadabcbb2eb4a9dbe487c2bd58aeff5a28979e\main.spi
00:00:12 #167 [verbose] >
00:00:12 #168 [verbose] > ╭─[ 302.08ms - stdout ]────────────────────────────────────────────────────────╮
00:00:12 #169 [verbose] > │ () │
00:00:12 #170 [verbose] > │ │
00:00:12 #171 [verbose] > │ │
00:00:12 #172 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:12 #173 [verbose] >
00:00:12 #174 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:12 #175 [verbose] > // // test
00:00:12 #176 [verbose] > // // rust=
00:00:12 #177 [verbose] >
00:00:12 #178 [verbose] > types ()
00:00:12 #179 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\e0997170dcce3f6c7af64ca8658ea11a6d42ba115c8224f449dc4dc5e6768d3b\main.spi
00:00:17 #180 [verbose] >
00:00:17 #181 [verbose] > ╭─[ 5.05s - return value ]─────────────────────────────────────────────────────╮
00:00:17 #182 [verbose] > │ .rs output: │
00:00:17 #183 [verbose] > │ │
00:00:17 #184 [verbose] > │ │
00:00:17 #185 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #186 [verbose] >
00:00:17 #187 [verbose] > ╭─[ 5.06s - stdout ]───────────────────────────────────────────────────────────╮
00:00:17 #188 [verbose] > │ │
00:00:17 #189 [verbose] > │ .fsx: │
00:00:17 #190 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::string::String")>] type │
00:00:17 #191 [verbose] > │ std_string_String = class end │
00:00:17 #192 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("&$0")>] type Ref<'T> = class end │
00:00:17 #193 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("str")>] type Str = class end │
00:00:17 #194 [verbose] > │ let rec method0 () : unit = │
00:00:17 #195 [verbose] > │ () │
00:00:17 #196 [verbose] > │ method0() │
00:00:17 #197 [verbose] > │ │
00:00:17 #198 [verbose] > │ │
00:00:17 #199 [verbose] > │ .rs: │
00:00:17 #200 [verbose] > │ #![allow(dead_code,)] │
00:00:17 #201 [verbose] > │ #![allow(non_camel_case_types,)] │
00:00:17 #202 [verbose] > │ #![allow(non_snake_case,)] │
00:00:17 #203 [verbose] > │ #![allow(non_upper_case_globals,)] │
00:00:17 #204 [verbose] > │ #![allow(unreachable_code,)] │
00:00:17 #205 [verbose] > │ #![allow(unused_attributes,)] │
00:00:17 #206 [verbose] > │ #![allow(unused_imports,)] │
00:00:17 #207 [verbose] > │ #![allow(unused_macros,)] │
00:00:17 #208 [verbose] > │ #![allow(unused_parens,)] │
00:00:17 #209 [verbose] > │ #![allow(unused_variables,)] │
00:00:17 #210 [verbose] > │ mod module_ccfa04bf { │
00:00:17 #211 [verbose] > │ pub mod Spiral_eval { │
00:00:17 #212 [verbose] > │ use super::*; │
00:00:17 #213 [verbose] > │ use fable_library_rust::Native_::on_startup; │
00:00:17 #214 [verbose] > │ pub fn method0() { (); } │
00:00:17 #215 [verbose] > │ on_startup!(Spiral_eval::method0()); │
00:00:17 #216 [verbose] > │ } │
00:00:17 #217 [verbose] > │ } │
00:00:17 #218 [verbose] > │ pub use module_ccfa04bf::*; │
00:00:17 #219 [verbose] > │ │
00:00:17 #220 [verbose] > │ │
00:00:17 #221 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #222 [verbose] >
00:00:17 #223 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:17 #224 [verbose] > // // test
00:00:17 #225 [verbose] > // // rust=
00:00:17 #226 [verbose] >
00:00:17 #227 [verbose] > inl get_tasks () : list task_template =
00:00:17 #228 [verbose] > [[
00:00:17 #229 [verbose] > {
00:00:17 #230 [verbose] > task =
00:00:17 #231 [verbose] > {
00:00:17 #232 [verbose] > name = task_name "01"
00:00:17 #233 [verbose] > scheduling = Manual WithSuggestion
00:00:17 #234 [verbose] > }
00:00:17 #235 [verbose] > events = [[]]
00:00:17 #236 [verbose] > }
00:00:17 #237 [verbose] > {
00:00:17 #238 [verbose] > task =
00:00:17 #239 [verbose] > {
00:00:17 #240 [verbose] > name = task_name "02"
00:00:17 #241 [verbose] > scheduling = Manual WithSuggestion
00:00:17 #242 [verbose] > }
00:00:17 #243 [verbose] > events = [[]]
00:00:17 #244 [verbose] > }
00:00:17 #245 [verbose] > {
00:00:17 #246 [verbose] > task =
00:00:17 #247 [verbose] > {
00:00:17 #248 [verbose] > name = task_name "03"
00:00:17 #249 [verbose] > scheduling = Manual WithSuggestion
00:00:17 #250 [verbose] > }
00:00:17 #251 [verbose] > events = [[]]
00:00:17 #252 [verbose] > }
00:00:17 #253 [verbose] > ]]
00:00:17 #254 [verbose] >
00:00:17 #255 [verbose] > types ()
00:00:17 #256 [verbose] > get_tasks () |> format_pretty |> console.write_line
00:00:17 #257 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c9f164cde8cf1cb54bb977085dd61aef45a038e2074bdf34269aab375a3cd662\main.spi
00:00:22 #258 [verbose] >
00:00:22 #259 [verbose] > ╭─[ 5.24s - return value ]─────────────────────────────────────────────────────╮
00:00:22 #260 [verbose] > │ .rs output: │
00:00:22 #261 [verbose] > │ UH2_1( │
00:00:22 #262 [verbose] > │ UH0_0, │
00:00:22 #263 [verbose] > │ "01", │
00:00:22 #264 [verbose] > │ US4_0( │
00:00:22 #265 [verbose] > │ US3_0, │
00:00:22 #266 [verbose] > │ ), │
00:00:22 #267 [verbose] > │ UH2_1( │
00:00:22 #268 [verbose] > │ UH0_0, │
00:00:22 #269 [verbose] > │ "02", │
00:00:22 #270 [verbose] > │ US4_0( │
00:00:22 #271 [verbose] > │ US3_0, │
00:00:22 #272 [verbose] > │ ), │
00:00:22 #273 [verbose] > │ UH2_1( │
00:00:22 #274 [verbose] > │ UH0_0, │
00:00:22 #275 [verbose] > │ "03", │
00:00:22 #276 [verbose] > │ US4_0( │
00:00:22 #277 [verbose] > │ US3_0, │
00:00:22 #278 [verbose] > │ ), │
00:00:22 #279 [verbose] > │ UH2_0, │
00:00:22 #280 [verbose] > │ ), │
00:00:22 #281 [verbose] > │ ), │
00:00:22 #282 [verbose] > │ ) │
00:00:22 #283 [verbose] > │ │
00:00:22 #284 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:22 #285 [verbose] >
00:00:22 #286 [verbose] > ╭─[ 5.25s - stdout ]───────────────────────────────────────────────────────────╮
00:00:22 #287 [verbose] > │ │
00:00:22 #288 [verbose] > │ .fsx: │
00:00:22 #289 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::string::String")>] type │
00:00:22 #290 [verbose] > │ std_string_String = class end │
00:00:22 #291 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("&$0")>] type Ref<'T> = class end │
00:00:22 #292 [verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("str")>] type Str = class end │
00:00:22 #293 [verbose] > │ type [<Struct>] US0 = │
00:00:22 #294 [verbose] > │ | US0_0 │
00:00:22 #295 [verbose] > │ | US0_1 │
00:00:22 #296 [verbose] > │ | US0_2 │
00:00:22 #297 [verbose] > │ | US0_3 │
00:00:22 #298 [verbose] > │ | US0_4 │
00:00:22 #299 [verbose] > │ | US0_5 │
00:00:22 #300 [verbose] > │ | US0_6 │
00:00:22 #301 [verbose] > │ | US0_7 │
00:00:22 #302 [verbose] > │ | US0_8 │
00:00:22 #303 [verbose] > │ | US0_9 │
00:00:22 #304 [verbose] > │ | US0_10 │
00:00:22 #305 [verbose] > │ | US0_11 │
00:00:22 #306 [verbose] > │ and [<Struct>] US2 = │
00:00:22 #307 [verbose] > │ | US2_0 │
00:00:22 #308 [verbose] > │ | US2_1 │
00:00:22 #309 [verbose] > │ and [<Struct>] US1 = │
00:00:22 #310 [verbose] > │ | US1_0 of f0_0 : US2 │
00:00:22 #311 [verbose] > │ and UH0 = │
00:00:22 #312 [verbose] > │ | UH0_0 │
00:00:22 #313 [verbose] > │ | UH0_1 of int32 * US0 * int32 * US1 * UH0 │
00:00:22 #314 [verbose] > │ and [<Struct>] US3 = │
00:00:22 #315 [verbose] > │ | US3_0 │
00:00:22 #316 [verbose] > │ | US3_1 │
00:00:22 #317 [verbose] > │ and [<Struct>] US6 = │
00:00:22 #318 [verbose] > │ | US6_0 of f0_0 : int32 │
00:00:22 #319 [verbose] > │ | US6_1 of f1_0 : int32 │
00:00:22 #320 [verbose] > │ | US6_2 of f2_0 : int32 │
00:00:22 #321 [verbose] > │ and [<Struct>] US8 = │
00:00:22 #322 [verbose] > │ | US8_0 │
00:00:22 #323 [verbose] > │ | US8_1 │
00:00:22 #324 [verbose] > │ | US8_2 │
00:00:22 #325 [verbose] > │ | US8_3 │
00:00:22 #326 [verbose] > │ | US8_4 │
00:00:22 #327 [verbose] > │ | US8_5 │
00:00:22 #328 [verbose] > │ | US8_6 │
00:00:22 #329 [verbose] > │ and [<Struct>] US7 = │
00:00:22 #330 [verbose] > │ | US7_0 of f0_0 : US8 │
00:00:22 #331 [verbose] > │ | US7_1 of f1_0 : int32 │
00:00:22 #332 [verbose] > │ | US7_2 of f2_0 : int32 * f2_1 : US0 │
00:00:22 #333 [verbose] > │ and UH1 = │
00:00:22 #334 [verbose] > │ | UH1_0 │
00:00:22 #335 [verbose] > │ | UH1_1 of US7 * UH1 │
00:00:22 #336 [verbose] > │ and [<Struct>] US5 = │
00:00:22 #337 [verbose] > │ | US5_0 of f0_0 : US6 │
00:00:22 #338 [verbose] > │ | US5_1 of f1_0 : UH1 │
00:00:22 #339 [verbose] > │ and [<Struct>] US4 = │
00:00:22 #340 [verbose] > │ | US4_0 of f0_0 : US3 │
00:00:22 #341 [verbose] > │ | US4_1 of f1_0 : US5 │
00:00:22 #342 [verbose] > │ and UH2 = │
00:00:22 #343 [verbose] > │ | UH2_0 │
00:00:22 #344 [verbose] > │ | UH2_1 of UH0 * string * US4 * UH2 │
00:00:22 #345 [verbose] > │ let rec method0 () : unit = │
00:00:22 #346 [verbose] > │ let v0 : UH0 = UH0_0 │
00:00:22 #347 [verbose] > │ let v1 : string = "01" │
00:00:22 #348 [verbose] > │ let v2 : US3 = US3_0 │
00:00:22 #349 [verbose] > │ let v3 : US4 = US4_0(v2) │
00:00:22 #350 [verbose] > │ let v4 : UH0 = UH0_0 │
00:00:22 #351 [verbose] > │ let v5 : string = "02" │
00:00:22 #352 [verbose] > │ let v6 : US3 = US3_0 │
00:00:22 #353 [verbose] > │ let v7 : US4 = US4_0(v6) │
00:00:22 #354 [verbose] > │ let v8 : UH0 = UH0_0 │
00:00:22 #355 [verbose] > │ let v9 : string = "03" │
00:00:22 #356 [verbose] > │ let v10 : US3 = US3_0 │
00:00:22 #357 [verbose] > │ let v11 : US4 = US4_0(v10) │
00:00:22 #358 [verbose] > │ let v12 : UH2 = UH2_0 │
00:00:22 #359 [verbose] > │ let v13 : UH2 = UH2_1(v8, v9, v11, v12) │
00:00:22 #360 [verbose] > │ let v14 : UH2 = UH2_1(v4, v5, v7, v13) │
00:00:22 #361 [verbose] > │ let v15 : UH2 = UH2_1(v0, v1, v3, v14) │
00:00:22 #362 [verbose] > │ let v16 : string = "format!(\"{:#?}\", $0)" │
00:00:22 #363 [verbose] > │ let v17 : std_string_String = Fable.Core.RustInterop.emitRustExpr v15 │
00:00:22 #364 [verbose] > │ v16 │
00:00:22 #365 [verbose] > │ System.Console.WriteLine v17 │
00:00:22 #366 [verbose] > │ () │
00:00:22 #367 [verbose] > │ method0() │
00:00:22 #368 [verbose] > │ │
00:00:22 #369 [verbose] > │ │
00:00:22 #370 [verbose] > │ .rs: │
00:00:22 #371 [verbose] > │ #![allow(dead_code,)] │
00:00:22 #372 [verbose] > │ #![allow(non_camel_case_types,)] │
00:00:22 #373 [verbose] > │ #![allow(non_snake_case,)] │
00:00:22 #374 [verbose] > │ #![allow(non_upper_case_globals,)] │
00:00:22 #375 [verbose] > │ #![allow(unreachable_code,)] │
00:00:22 #376 [verbose] > │ #![allow(unused_attributes,)] │
00:00:22 #377 [verbose] > │ #![allow(unused_imports,)] │
00:00:22 #378 [verbose] > │ #![allow(unused_macros,)] │
00:00:22 #379 [verbose] > │ #![allow(unused_parens,)] │
00:00:22 #380 [verbose] > │ #![allow(unused_variables,)] │
00:00:22 #381 [verbose] > │ mod module_ccfa04bf { │
00:00:22 #382 [verbose] > │ pub mod Spiral_eval { │
00:00:22 #383 [verbose] > │ use super::*; │
00:00:22 #384 [verbose] > │ use fable_library_rust::Native_::LrcPtr; │
00:00:22 #385 [verbose] > │ use fable_library_rust::Native_::MutCell; │
00:00:22 #386 [verbose] > │ use fable_library_rust::Native_::on_startup; │
00:00:22 #387 [verbose] > │ use fable_library_rust::String_::printfn; │
00:00:22 #388 [verbose] > │ use fable_library_rust::String_::string; │
00:00:22 #389 [verbose] > │ #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq,)] │
00:00:22 #390 [verbose] > │ pub enum US0 { │
00:00:22 #391 [verbose] > │ US0_0, │
00:00:22 #392 [verbose] > │ US0_1, │
00:00:22 #393 [verbose] > │ US0_2, │
00:00:22 #394 [verbose] > │ US0_3, │
00:00:22 #395 [verbose] > │ US0_4, │
00:00:22 #396 [verbose] > │ US0_5, │
00:00:22 #397 [verbose] > │ US0_6, │
00:00:22 #398 [verbose] > │ US0_7, │
00:00:22 #399 [verbose] > │ US0_8, │
00:00:22 #400 [verbose] > │ US0_9, │
00:00:22 #401 [verbose] > │ US0_10, │
00:00:22 #402 [verbose] > │ US0_11, │
00:00:22 #403 [verbose] > │ } │
00:00:22 #404 [verbose] > │ impl Spiral_eval::US0 { │
00:00:22 #405 [verbose] > │ pub fn get_IsUS0_0(this_: &MutCell<Spiral_eval::US0>, unitArg: │
00:00:22 #406 [verbose] > │ ()) │
00:00:22 #407 [verbose] > │ -> bool { │
00:00:22 #408 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #409 [verbose] > │ } │
00:00:22 #410 [verbose] > │ pub fn get_IsUS0_1(this_: &MutCell<Spiral_eval::US0>, unitArg: │
00:00:22 #411 [verbose] > │ ()) │
00:00:22 #412 [verbose] > │ -> bool { │
00:00:22 #413 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #414 [verbose] > │ } │
00:00:22 #415 [verbose] > │ pub fn get_IsUS0_2(this_: &MutCell<Spiral_eval::US0>, unitArg: │
00:00:22 #416 [verbose] > │ ()) │
00:00:22 #417 [verbose] > │ -> bool { │
00:00:22 #418 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #419 [verbose] > │ } │
00:00:22 #420 [verbose] > │ pub fn get_IsUS0_3(this_: &MutCell<Spiral_eval::US0>, unitArg: │
00:00:22 #421 [verbose] > │ ()) │
00:00:22 #422 [verbose] > │ -> bool { │
00:00:22 #423 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #424 [verbose] > │ } │
00:00:22 #425 [verbose] > │ pub fn get_IsUS0_4(this_: &MutCell<Spiral_eval::US0>, unitArg: │
00:00:22 #426 [verbose] > │ ()) │
00:00:22 #427 [verbose] > │ -> bool { │
00:00:22 #428 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #429 [verbose] > │ } │
00:00:22 #430 [verbose] > │ pub fn get_IsUS0_5(this_: &MutCell<Spiral_eval::US0>, unitArg: │
00:00:22 #431 [verbose] > │ ()) │
00:00:22 #432 [verbose] > │ -> bool { │
00:00:22 #433 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #434 [verbose] > │ } │
00:00:22 #435 [verbose] > │ pub fn get_IsUS0_6(this_: &MutCell<Spiral_eval::US0>, unitArg: │
00:00:22 #436 [verbose] > │ ()) │
00:00:22 #437 [verbose] > │ -> bool { │
00:00:22 #438 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #439 [verbose] > │ } │
00:00:22 #440 [verbose] > │ pub fn get_IsUS0_7(this_: &MutCell<Spiral_eval::US0>, unitArg: │
00:00:22 #441 [verbose] > │ ()) │
00:00:22 #442 [verbose] > │ -> bool { │
00:00:22 #443 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #444 [verbose] > │ } │
00:00:22 #445 [verbose] > │ pub fn get_IsUS0_8(this_: &MutCell<Spiral_eval::US0>, unitArg: │
00:00:22 #446 [verbose] > │ ()) │
00:00:22 #447 [verbose] > │ -> bool { │
00:00:22 #448 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #449 [verbose] > │ } │
00:00:22 #450 [verbose] > │ pub fn get_IsUS0_9(this_: &MutCell<Spiral_eval::US0>, unitArg: │
00:00:22 #451 [verbose] > │ ()) │
00:00:22 #452 [verbose] > │ -> bool { │
00:00:22 #453 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #454 [verbose] > │ } │
00:00:22 #455 [verbose] > │ pub fn get_IsUS0_10(this_: &MutCell<Spiral_eval::US0>, │
00:00:22 #456 [verbose] > │ unitArg: ()) -> bool { │
00:00:22 #457 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #458 [verbose] > │ } │
00:00:22 #459 [verbose] > │ pub fn get_IsUS0_11(this_: &MutCell<Spiral_eval::US0>, │
00:00:22 #460 [verbose] > │ unitArg: ()) -> bool { │
00:00:22 #461 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #462 [verbose] > │ } │
00:00:22 #463 [verbose] > │ } │
00:00:22 #464 [verbose] > │ impl core::fmt::Display for Spiral_eval::US0 { │
00:00:22 #465 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:00:22 #466 [verbose] > │ { │
00:00:22 #467 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:00:22 #468 [verbose] > │ } │
00:00:22 #469 [verbose] > │ } │
00:00:22 #470 [verbose] > │ #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq,)] │
00:00:22 #471 [verbose] > │ pub enum US2 { US2_0, US2_1, } │
00:00:22 #472 [verbose] > │ impl Spiral_eval::US2 { │
00:00:22 #473 [verbose] > │ pub fn get_IsUS2_0(this_: &MutCell<Spiral_eval::US2>, unitArg: │
00:00:22 #474 [verbose] > │ ()) │
00:00:22 #475 [verbose] > │ -> bool { │
00:00:22 #476 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #477 [verbose] > │ } │
00:00:22 #478 [verbose] > │ pub fn get_IsUS2_1(this_: &MutCell<Spiral_eval::US2>, unitArg: │
00:00:22 #479 [verbose] > │ ()) │
00:00:22 #480 [verbose] > │ -> bool { │
00:00:22 #481 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #482 [verbose] > │ } │
00:00:22 #483 [verbose] > │ } │
00:00:22 #484 [verbose] > │ impl core::fmt::Display for Spiral_eval::US2 { │
00:00:22 #485 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:00:22 #486 [verbose] > │ { │
00:00:22 #487 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:00:22 #488 [verbose] > │ } │
00:00:22 #489 [verbose] > │ } │
00:00:22 #490 [verbose] > │ #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq,)] │
00:00:22 #491 [verbose] > │ pub enum US1 { US1_0(Spiral_eval::US2), } │
00:00:22 #492 [verbose] > │ impl Spiral_eval::US1 { │
00:00:22 #493 [verbose] > │ pub fn get_IsUS1_0(this_: &MutCell<Spiral_eval::US1>, unitArg: │
00:00:22 #494 [verbose] > │ ()) │
00:00:22 #495 [verbose] > │ -> bool { │
00:00:22 #496 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #497 [verbose] > │ } │
00:00:22 #498 [verbose] > │ } │
00:00:22 #499 [verbose] > │ impl core::fmt::Display for Spiral_eval::US1 { │
00:00:22 #500 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:00:22 #501 [verbose] > │ { │
00:00:22 #502 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:00:22 #503 [verbose] > │ } │
00:00:22 #504 [verbose] > │ } │
00:00:22 #505 [verbose] > │ #[derive(Clone, Debug, PartialEq, PartialOrd, Hash, Eq,)] │
00:00:22 #506 [verbose] > │ pub enum UH0 { │
00:00:22 #507 [verbose] > │ UH0_0, │
00:00:22 #508 [verbose] > │ UH0_1(i32, Spiral_eval::US0, i32, Spiral_eval::US1, │
00:00:22 #509 [verbose] > │ LrcPtr<Spiral_eval::UH0>), │
00:00:22 #510 [verbose] > │ } │
00:00:22 #511 [verbose] > │ impl Spiral_eval::UH0 { │
00:00:22 #512 [verbose] > │ pub fn get_IsUH0_0(this_: LrcPtr<Spiral_eval::UH0>, unitArg: ()) │
00:00:22 #513 [verbose] > │ -> bool { │
00:00:22 #514 [verbose] > │ if let Spiral_eval::UH0::UH0_0 = this_.as_ref() { │
00:00:22 #515 [verbose] > │ true │
00:00:22 #516 [verbose] > │ } else { false } │
00:00:22 #517 [verbose] > │ } │
00:00:22 #518 [verbose] > │ pub fn get_IsUH0_1(this_: LrcPtr<Spiral_eval::UH0>, unitArg: ()) │
00:00:22 #519 [verbose] > │ -> bool { │
00:00:22 #520 [verbose] > │ if let Spiral_eval::UH0::UH0_1(this__1_0, this__1_1, │
00:00:22 #521 [verbose] > │ this__1_2, this__1_3, │
00:00:22 #522 [verbose] > │ this__1_4) = this_.as_ref() { │
00:00:22 #523 [verbose] > │ true │
00:00:22 #524 [verbose] > │ } else { false } │
00:00:22 #525 [verbose] > │ } │
00:00:22 #526 [verbose] > │ } │
00:00:22 #527 [verbose] > │ impl core::fmt::Display for Spiral_eval::UH0 { │
00:00:22 #528 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:00:22 #529 [verbose] > │ { │
00:00:22 #530 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:00:22 #531 [verbose] > │ } │
00:00:22 #532 [verbose] > │ } │
00:00:22 #533 [verbose] > │ #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq,)] │
00:00:22 #534 [verbose] > │ pub enum US3 { US3_0, US3_1, } │
00:00:22 #535 [verbose] > │ impl Spiral_eval::US3 { │
00:00:22 #536 [verbose] > │ pub fn get_IsUS3_0(this_: &MutCell<Spiral_eval::US3>, unitArg: │
00:00:22 #537 [verbose] > │ ()) │
00:00:22 #538 [verbose] > │ -> bool { │
00:00:22 #539 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #540 [verbose] > │ } │
00:00:22 #541 [verbose] > │ pub fn get_IsUS3_1(this_: &MutCell<Spiral_eval::US3>, unitArg: │
00:00:22 #542 [verbose] > │ ()) │
00:00:22 #543 [verbose] > │ -> bool { │
00:00:22 #544 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #545 [verbose] > │ } │
00:00:22 #546 [verbose] > │ } │
00:00:22 #547 [verbose] > │ impl core::fmt::Display for Spiral_eval::US3 { │
00:00:22 #548 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:00:22 #549 [verbose] > │ { │
00:00:22 #550 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:00:22 #551 [verbose] > │ } │
00:00:22 #552 [verbose] > │ } │
00:00:22 #553 [verbose] > │ #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq,)] │
00:00:22 #554 [verbose] > │ pub enum US6 { US6_0(i32), US6_1(i32), US6_2(i32), } │
00:00:22 #555 [verbose] > │ impl Spiral_eval::US6 { │
00:00:22 #556 [verbose] > │ pub fn get_IsUS6_0(this_: &MutCell<Spiral_eval::US6>, unitArg: │
00:00:22 #557 [verbose] > │ ()) │
00:00:22 #558 [verbose] > │ -> bool { │
00:00:22 #559 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #560 [verbose] > │ } │
00:00:22 #561 [verbose] > │ pub fn get_IsUS6_1(this_: &MutCell<Spiral_eval::US6>, unitArg: │
00:00:22 #562 [verbose] > │ ()) │
00:00:22 #563 [verbose] > │ -> bool { │
00:00:22 #564 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #565 [verbose] > │ } │
00:00:22 #566 [verbose] > │ pub fn get_IsUS6_2(this_: &MutCell<Spiral_eval::US6>, unitArg: │
00:00:22 #567 [verbose] > │ ()) │
00:00:22 #568 [verbose] > │ -> bool { │
00:00:22 #569 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #570 [verbose] > │ } │
00:00:22 #571 [verbose] > │ } │
00:00:22 #572 [verbose] > │ impl core::fmt::Display for Spiral_eval::US6 { │
00:00:22 #573 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:00:22 #574 [verbose] > │ { │
00:00:22 #575 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:00:22 #576 [verbose] > │ } │
00:00:22 #577 [verbose] > │ } │
00:00:22 #578 [verbose] > │ #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq,)] │
00:00:22 #579 [verbose] > │ pub enum US8 { US8_0, US8_1, US8_2, US8_3, US8_4, US8_5, US8_6, } │
00:00:22 #580 [verbose] > │ impl Spiral_eval::US8 { │
00:00:22 #581 [verbose] > │ pub fn get_IsUS8_0(this_: &MutCell<Spiral_eval::US8>, unitArg: │
00:00:22 #582 [verbose] > │ ()) │
00:00:22 #583 [verbose] > │ -> bool { │
00:00:22 #584 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #585 [verbose] > │ } │
00:00:22 #586 [verbose] > │ pub fn get_IsUS8_1(this_: &MutCell<Spiral_eval::US8>, unitArg: │
00:00:22 #587 [verbose] > │ ()) │
00:00:22 #588 [verbose] > │ -> bool { │
00:00:22 #589 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #590 [verbose] > │ } │
00:00:22 #591 [verbose] > │ pub fn get_IsUS8_2(this_: &MutCell<Spiral_eval::US8>, unitArg: │
00:00:22 #592 [verbose] > │ ()) │
00:00:22 #593 [verbose] > │ -> bool { │
00:00:22 #594 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #595 [verbose] > │ } │
00:00:22 #596 [verbose] > │ pub fn get_IsUS8_3(this_: &MutCell<Spiral_eval::US8>, unitArg: │
00:00:22 #597 [verbose] > │ ()) │
00:00:22 #598 [verbose] > │ -> bool { │
00:00:22 #599 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #600 [verbose] > │ } │
00:00:22 #601 [verbose] > │ pub fn get_IsUS8_4(this_: &MutCell<Spiral_eval::US8>, unitArg: │
00:00:22 #602 [verbose] > │ ()) │
00:00:22 #603 [verbose] > │ -> bool { │
00:00:22 #604 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #605 [verbose] > │ } │
00:00:22 #606 [verbose] > │ pub fn get_IsUS8_5(this_: &MutCell<Spiral_eval::US8>, unitArg: │
00:00:22 #607 [verbose] > │ ()) │
00:00:22 #608 [verbose] > │ -> bool { │
00:00:22 #609 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #610 [verbose] > │ } │
00:00:22 #611 [verbose] > │ pub fn get_IsUS8_6(this_: &MutCell<Spiral_eval::US8>, unitArg: │
00:00:22 #612 [verbose] > │ ()) │
00:00:22 #613 [verbose] > │ -> bool { │
00:00:22 #614 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #615 [verbose] > │ } │
00:00:22 #616 [verbose] > │ } │
00:00:22 #617 [verbose] > │ impl core::fmt::Display for Spiral_eval::US8 { │
00:00:22 #618 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:00:22 #619 [verbose] > │ { │
00:00:22 #620 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:00:22 #621 [verbose] > │ } │
00:00:22 #622 [verbose] > │ } │
00:00:22 #623 [verbose] > │ #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq,)] │
00:00:22 #624 [verbose] > │ pub enum US7 { │
00:00:22 #625 [verbose] > │ US7_0(Spiral_eval::US8), │
00:00:22 #626 [verbose] > │ US7_1(i32), │
00:00:22 #627 [verbose] > │ US7_2(i32, Spiral_eval::US0), │
00:00:22 #628 [verbose] > │ } │
00:00:22 #629 [verbose] > │ impl Spiral_eval::US7 { │
00:00:22 #630 [verbose] > │ pub fn get_IsUS7_0(this_: &MutCell<Spiral_eval::US7>, unitArg: │
00:00:22 #631 [verbose] > │ ()) │
00:00:22 #632 [verbose] > │ -> bool { │
00:00:22 #633 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #634 [verbose] > │ } │
00:00:22 #635 [verbose] > │ pub fn get_IsUS7_1(this_: &MutCell<Spiral_eval::US7>, unitArg: │
00:00:22 #636 [verbose] > │ ()) │
00:00:22 #637 [verbose] > │ -> bool { │
00:00:22 #638 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #639 [verbose] > │ } │
00:00:22 #640 [verbose] > │ pub fn get_IsUS7_2(this_: &MutCell<Spiral_eval::US7>, unitArg: │
00:00:22 #641 [verbose] > │ ()) │
00:00:22 #642 [verbose] > │ -> bool { │
00:00:22 #643 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #644 [verbose] > │ } │
00:00:22 #645 [verbose] > │ } │
00:00:22 #646 [verbose] > │ impl core::fmt::Display for Spiral_eval::US7 { │
00:00:22 #647 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:00:22 #648 [verbose] > │ { │
00:00:22 #649 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:00:22 #650 [verbose] > │ } │
00:00:22 #651 [verbose] > │ } │
00:00:22 #652 [verbose] > │ #[derive(Clone, Debug, PartialEq, PartialOrd, Hash, Eq,)] │
00:00:22 #653 [verbose] > │ pub enum UH1 { │
00:00:22 #654 [verbose] > │ UH1_0, │
00:00:22 #655 [verbose] > │ UH1_1(Spiral_eval::US7, LrcPtr<Spiral_eval::UH1>), │
00:00:22 #656 [verbose] > │ } │
00:00:22 #657 [verbose] > │ impl Spiral_eval::UH1 { │
00:00:22 #658 [verbose] > │ pub fn get_IsUH1_0(this_: LrcPtr<Spiral_eval::UH1>, unitArg: ()) │
00:00:22 #659 [verbose] > │ -> bool { │
00:00:22 #660 [verbose] > │ if let Spiral_eval::UH1::UH1_0 = this_.as_ref() { │
00:00:22 #661 [verbose] > │ true │
00:00:22 #662 [verbose] > │ } else { false } │
00:00:22 #663 [verbose] > │ } │
00:00:22 #664 [verbose] > │ pub fn get_IsUH1_1(this_: LrcPtr<Spiral_eval::UH1>, unitArg: ()) │
00:00:22 #665 [verbose] > │ -> bool { │
00:00:22 #666 [verbose] > │ if let Spiral_eval::UH1::UH1_1(this__1_0, this__1_1) = │
00:00:22 #667 [verbose] > │ this_.as_ref() { │
00:00:22 #668 [verbose] > │ true │
00:00:22 #669 [verbose] > │ } else { false } │
00:00:22 #670 [verbose] > │ } │
00:00:22 #671 [verbose] > │ } │
00:00:22 #672 [verbose] > │ impl core::fmt::Display for Spiral_eval::UH1 { │
00:00:22 #673 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:00:22 #674 [verbose] > │ { │
00:00:22 #675 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:00:22 #676 [verbose] > │ } │
00:00:22 #677 [verbose] > │ } │
00:00:22 #678 [verbose] > │ #[derive(Clone, Debug, PartialEq, PartialOrd, Hash, Eq,)] │
00:00:22 #679 [verbose] > │ pub enum US5 { │
00:00:22 #680 [verbose] > │ US5_0(Spiral_eval::US6), │
00:00:22 #681 [verbose] > │ US5_1(LrcPtr<Spiral_eval::UH1>), │
00:00:22 #682 [verbose] > │ } │
00:00:22 #683 [verbose] > │ impl Spiral_eval::US5 { │
00:00:22 #684 [verbose] > │ pub fn get_IsUS5_0(this_: &MutCell<Spiral_eval::US5>, unitArg: │
00:00:22 #685 [verbose] > │ ()) │
00:00:22 #686 [verbose] > │ -> bool { │
00:00:22 #687 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #688 [verbose] > │ } │
00:00:22 #689 [verbose] > │ pub fn get_IsUS5_1(this_: &MutCell<Spiral_eval::US5>, unitArg: │
00:00:22 #690 [verbose] > │ ()) │
00:00:22 #691 [verbose] > │ -> bool { │
00:00:22 #692 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #693 [verbose] > │ } │
00:00:22 #694 [verbose] > │ } │
00:00:22 #695 [verbose] > │ impl core::fmt::Display for Spiral_eval::US5 { │
00:00:22 #696 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:00:22 #697 [verbose] > │ { │
00:00:22 #698 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:00:22 #699 [verbose] > │ } │
00:00:22 #700 [verbose] > │ } │
00:00:22 #701 [verbose] > │ #[derive(Clone, Debug, PartialEq, PartialOrd, Hash, Eq,)] │
00:00:22 #702 [verbose] > │ pub enum US4 { US4_0(Spiral_eval::US3), US4_1(Spiral_eval::US5), } │
00:00:22 #703 [verbose] > │ impl Spiral_eval::US4 { │
00:00:22 #704 [verbose] > │ pub fn get_IsUS4_0(this_: &MutCell<Spiral_eval::US4>, unitArg: │
00:00:22 #705 [verbose] > │ ()) │
00:00:22 #706 [verbose] > │ -> bool { │
00:00:22 #707 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #708 [verbose] > │ } │
00:00:22 #709 [verbose] > │ pub fn get_IsUS4_1(this_: &MutCell<Spiral_eval::US4>, unitArg: │
00:00:22 #710 [verbose] > │ ()) │
00:00:22 #711 [verbose] > │ -> bool { │
00:00:22 #712 [verbose] > │ if unreachable!() { true } else { false } │
00:00:22 #713 [verbose] > │ } │
00:00:22 #714 [verbose] > │ } │
00:00:22 #715 [verbose] > │ impl core::fmt::Display for Spiral_eval::US4 { │
00:00:22 #716 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:00:22 #717 [verbose] > │ { │
00:00:22 #718 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:00:22 #719 [verbose] > │ } │
00:00:22 #720 [verbose] > │ } │
00:00:22 #721 [verbose] > │ #[derive(Clone, Debug, PartialEq, PartialOrd, Hash, Eq,)] │
00:00:22 #722 [verbose] > │ pub enum UH2 { │
00:00:22 #723 [verbose] > │ UH2_0, │
00:00:22 #724 [verbose] > │ UH2_1(LrcPtr<Spiral_eval::UH0>, string, Spiral_eval::US4, │
00:00:22 #725 [verbose] > │ LrcPtr<Spiral_eval::UH2>), │
00:00:22 #726 [verbose] > │ } │
00:00:22 #727 [verbose] > │ impl Spiral_eval::UH2 { │
00:00:22 #728 [verbose] > │ pub fn get_IsUH2_0(this_: LrcPtr<Spiral_eval::UH2>, unitArg: ()) │
00:00:22 #729 [verbose] > │ -> bool { │
00:00:22 #730 [verbose] > │ if let Spiral_eval::UH2::UH2_0 = this_.as_ref() { │
00:00:22 #731 [verbose] > │ true │
00:00:22 #732 [verbose] > │ } else { false } │
00:00:22 #733 [verbose] > │ } │
00:00:22 #734 [verbose] > │ pub fn get_IsUH2_1(this_: LrcPtr<Spiral_eval::UH2>, unitArg: ()) │
00:00:22 #735 [verbose] > │ -> bool { │
00:00:22 #736 [verbose] > │ if let Spiral_eval::UH2::UH2_1(this__1_0, this__1_1, │
00:00:22 #737 [verbose] > │ this__1_2, this__1_3) = │
00:00:22 #738 [verbose] > │ this_.as_ref() { │
00:00:22 #739 [verbose] > │ true │
00:00:22 #740 [verbose] > │ } else { false } │
00:00:22 #741 [verbose] > │ } │
00:00:22 #742 [verbose] > │ } │
00:00:22 #743 [verbose] > │ impl core::fmt::Display for Spiral_eval::UH2 { │
00:00:22 #744 [verbose] > │ fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result │
00:00:22 #745 [verbose] > │ { │
00:00:22 #746 [verbose] > │ write!(f, "{}", core::any::type_name::<Self>()) │
00:00:22 #747 [verbose] > │ } │
00:00:22 #748 [verbose] > │ } │
00:00:22 #749 [verbose] > │ pub fn method0() { │
00:00:22 #750 [verbose] > │ let v17: std::string::String = │
00:00:22 #751 [verbose] > │ format!("{:#?}", │
00:00:22 #752 [verbose] > │ LrcPtr::new(Spiral_eval::UH2::UH2_1(LrcPtr::new(Spiral_eval::UH0::UH0_0), │
00:00:22 #753 [verbose] > │ │
00:00:22 #754 [verbose] > │ string("01"), │
00:00:22 #755 [verbose] > │ │
00:00:22 #756 [verbose] > │ Spiral_eval::US4::US4_0(Spiral_eval::US3::US3_0), │
00:00:22 #757 [verbose] > │ │
00:00:22 #758 [verbose] > │ LrcPtr::new(Spiral_eval::UH2::UH2_1(LrcPtr::new(Spiral_eval::UH0::UH0_0), │
00:00:22 #759 [verbose] > │ │
00:00:22 #760 [verbose] > │ string("02"), │
00:00:22 #761 [verbose] > │ │
00:00:22 #762 [verbose] > │ Spiral_eval::US4::US4_0(Spiral_eval::US3::US3_0), │
00:00:22 #763 [verbose] > │ │
00:00:22 #764 [verbose] > │ LrcPtr::new(Spiral_eval::UH2::UH2_1(LrcPtr::new(Spiral_eval::UH0::UH0_0), │
00:00:22 #765 [verbose] > │ │
00:00:22 #766 [verbose] > │ string("03"), │
00:00:22 #767 [verbose] > │ │
00:00:22 #768 [verbose] > │ Spiral_eval::US4::US4_0(Spiral_eval::US3::US3_0), │
00:00:22 #769 [verbose] > │ │
00:00:22 #770 [verbose] > │ LrcPtr::new(Spiral_eval::UH2::UH2_0)))))))); │
00:00:22 #771 [verbose] > │ printfn!("{0}", v17); │
00:00:22 #772 [verbose] > │ () │
00:00:22 #773 [verbose] > │ } │
00:00:22 #774 [verbose] > │ on_startup!(Spiral_eval::method0()); │
00:00:22 #775 [verbose] > │ } │
00:00:22 #776 [verbose] > │ } │
00:00:22 #777 [verbose] > │ pub use module_ccfa04bf::*; │
00:00:22 #778 [verbose] > │ │
00:00:22 #779 [verbose] > │ │
00:00:22 #780 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:22 #781 [verbose] >
00:00:22 #782 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:22 #783 [verbose] > // // test
00:00:22 #784 [verbose] > // // rust=
00:00:22 #785 [verbose] >
00:00:22 #786 [verbose] > get_tasks ()
00:00:22 #787 [verbose] > |> listm'.try_item 0i32
00:00:22 #788 [verbose] > |> fun (Some task) => task.task.name
00:00:22 #789 [verbose] > |> _assert_eq (task_name "01")
00:00:22 #790 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\fa99748b91ba258228d294de19a9333ebc1f94ecadfe39e11a75e012e43c8bdf\main.spi
00:00:27 #791 [verbose] >
00:00:27 #792 [verbose] > ╭─[ 4.51s - return value ]─────────────────────────────────────────────────────╮
00:00:27 #793 [verbose] > │ .rs output: │
00:00:27 #794 [verbose] > │ "01" │
00:00:27 #795 [verbose] > │ │
00:00:27 #796 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:27 #797 [verbose] >
00:00:27 #798 [verbose] > ╭─[ 4.51s - stdout ]───────────────────────────────────────────────────────────╮
00:00:27 #799 [verbose] > │ │
00:00:27 #800 [verbose] > │ .fsx: │
00:00:27 #801 [verbose] > │ let rec method0 () : unit = │
00:00:27 #802 [verbose] > │ let v0 : string = "01" │
00:00:27 #803 [verbose] > │ let v1 : string = $"%A{v0}" │
00:00:27 #804 [verbose] > │ System.Console.WriteLine v1 │
00:00:27 #805 [verbose] > │ let v2 : string = $"__expect / actual: %A{v0} / expected: %A{v0}" │
00:00:27 #806 [verbose] > │ () │
00:00:27 #807 [verbose] > │ method0() │
00:00:27 #808 [verbose] > │ │
00:00:27 #809 [verbose] > │ │
00:00:27 #810 [verbose] > │ .rs: │
00:00:27 #811 [verbose] > │ #![allow(dead_code,)] │
00:00:27 #812 [verbose] > │ #![allow(non_camel_case_types,)] │
00:00:27 #813 [verbose] > │ #![allow(non_snake_case,)] │
00:00:27 #814 [verbose] > │ #![allow(non_upper_case_globals,)] │
00:00:27 #815 [verbose] > │ #![allow(unreachable_code,)] │
00:00:27 #816 [verbose] > │ #![allow(unused_attributes,)] │
00:00:27 #817 [verbose] > │ #![allow(unused_imports,)] │
00:00:27 #818 [verbose] > │ #![allow(unused_macros,)] │
00:00:27 #819 [verbose] > │ #![allow(unused_parens,)] │
00:00:27 #820 [verbose] > │ #![allow(unused_variables,)] │
00:00:27 #821 [verbose] > │ mod module_ccfa04bf { │
00:00:27 #822 [verbose] > │ pub mod Spiral_eval { │
00:00:27 #823 [verbose] > │ use super::*; │
00:00:27 #824 [verbose] > │ use fable_library_rust::Native_::on_startup; │
00:00:27 #825 [verbose] > │ use fable_library_rust::String_::printfn; │
00:00:27 #826 [verbose] > │ use fable_library_rust::String_::sprintf; │
00:00:27 #827 [verbose] > │ use fable_library_rust::String_::string; │
00:00:27 #828 [verbose] > │ pub fn method0() { │
00:00:27 #829 [verbose] > │ let v1: string = sprintf!("{:?}", string("01")); │
00:00:27 #830 [verbose] > │ printfn!("{0}", v1); │
00:00:27 #831 [verbose] > │ { │
00:00:27 #832 [verbose] > │ let v2: string = │
00:00:27 #833 [verbose] > │ sprintf!("__expect / actual: {:?} / expected: {:?}", │
00:00:27 #834 [verbose] > │ string("01"), string("01")); │
00:00:27 #835 [verbose] > │ () │
00:00:27 #836 [verbose] > │ } │
00:00:27 #837 [verbose] > │ } │
00:00:27 #838 [verbose] > │ on_startup!(Spiral_eval::method0()); │
00:00:27 #839 [verbose] > │ } │
00:00:27 #840 [verbose] > │ } │
00:00:27 #841 [verbose] > │ pub use module_ccfa04bf::*; │
00:00:27 #842 [verbose] > │ │
00:00:27 #843 [verbose] > │ │
00:00:27 #844 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:27 #845 [verbose] >
00:00:27 #846 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:27 #847 [verbose] > // // test
00:00:27 #848 [verbose] >
00:00:27 #849 [verbose] > ()
00:00:27 #850 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c4fe50933042f3965823e7cd77411a990c23f38768e5bbe400b5e849103d94b9\main.spi
00:00:27 #851 [verbose] >
00:00:27 #852 [verbose] > ╭─[ 473.48ms - stdout ]────────────────────────────────────────────────────────╮
00:00:27 #853 [verbose] > │ let rec method0 () : unit = │
00:00:27 #854 [verbose] > │ () │
00:00:27 #855 [verbose] > │ method0() │
00:00:27 #856 [verbose] > │ │
00:00:27 #857 [verbose] > │ │
00:00:27 #858 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:29 #859 [verbose] > [NbConvertApp] Converting notebook Tasks.dib.ipynb to html
00:00:29 #860 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:00:29 #861 [verbose] > validate(nb)
00:00:30 #862 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:00:30 #863 [verbose] > return _pygments_highlight(
00:00:30 #864 [verbose] > [NbConvertApp] Writing 313974 bytes to Tasks.dib.html
00:00:31 #865 [debug] executeAsync / exitCode: 0 / output.Length: 56712
00:00:31 #866 [debug] main / executeCommand / exitCode: 0
00:00:33 #867 [debug] runWithTimeoutChildAsync / timeout: 2000
00:00:00 #1 [debug] writeDibCode / output: Spi / path: Tasks.dib
00:00:00 #2 [debug] parseDibCode / output: Spi / file: Tasks.dib
In [ ]:
{ . "$ScriptDir/../apps/chat/build.ps1" } | Invoke-Block
Finished `release` profile [optimized] target(s) in 1.83s Finished `release` profile [optimized] target(s) in 26.97s Running `/mnt/c/home/git/polyglot/target/release/chat_contract_tests` Updated the logging layer according to `log_config.json` new: ExecutionFinalResult { total_gas_burnt: NearGas { inner: 5283524958066, }, transaction: ExecutionOutcome { transaction_hash: CyhAFgyetHN5ieMPV8pMY5ffNXqjDXTeJkYVuKgdHzsd, block_hash: DWQA8yXtX6Sm9ifDhdh8fQFmVFkpiWVUamsAhDbHr4Hn, logs: [], receipt_ids: [ 9hoEvxiZAKsZCNfi5FyPws4Gn6KpUAVTWmygVeUpgkNh, ], gas_burnt: NearGas { inner: 2427927707802, }, tokens_burnt: NearToken { inner: 242792770780200000000, }, executor_id: AccountId( "dev-20240410232107-84994296070115", ), status: SuccessReceiptId(9hoEvxiZAKsZCNfi5FyPws4Gn6KpUAVTWmygVeUpgkNh), }, receipts: [ ExecutionOutcome { transaction_hash: 9hoEvxiZAKsZCNfi5FyPws4Gn6KpUAVTWmygVeUpgkNh, block_hash: DWQA8yXtX6Sm9ifDhdh8fQFmVFkpiWVUamsAhDbHr4Hn, logs: [], receipt_ids: [ BXg1VVzqYZQfshHtsXmUJiMi4WhxfpekZv5uuaLVVtub, ], gas_burnt: NearGas { inner: 2632414687764, }, tokens_burnt: NearToken { inner: 263241468776400000000, }, executor_id: AccountId( "dev-20240410232107-84994296070115", ), status: SuccessValue(''), }, ExecutionOutcome { transaction_hash: BXg1VVzqYZQfshHtsXmUJiMi4WhxfpekZv5uuaLVVtub, block_hash: E3jJpNriEXnbEDb8fdgwgDNsDUYQ55pu8Z7c9ewQdZmZ, logs: [], receipt_ids: [], gas_burnt: NearGas { inner: 223182562500, }, tokens_burnt: NearToken { inner: 0, }, executor_id: AccountId( "dev-20240410232107-84994296070115", ), status: SuccessValue(''), }, ], status: SuccessValue(''), } total_gas_burnt_usd: 0.003529394671988088 outcome (success: true): outcome_gas_burnt_usd: 0.001621855708811736 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.0017584530114263522 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.00014908595175 outcome_tokens_burnt_usd: 0.0 claim_alias(contract, ''): ExecutionFinalResult { total_gas_burnt: NearGas { inner: 5288528837296, }, transaction: ExecutionOutcome { transaction_hash: EuAuEVmsSGvs19Fa1cpBCANkbLYvHAiQ2HzMHnonTAWC, block_hash: 9mQP1LLXm1Ws9o98gAwvCD6Ufwkk32twVcBXzHR1cDpo, logs: [], receipt_ids: [ 6duxhcZbEpeX3RseTqQBemtfVEFrNzFBPM1Gj4YbiV1G, ], gas_burnt: NearGas { inner: 2427972426482, }, tokens_burnt: NearToken { inner: 242797242648200000000, }, executor_id: AccountId( "dev-20240410232107-84994296070115", ), status: SuccessReceiptId(6duxhcZbEpeX3RseTqQBemtfVEFrNzFBPM1Gj4YbiV1G), }, receipts: [ ExecutionOutcome { transaction_hash: 6duxhcZbEpeX3RseTqQBemtfVEFrNzFBPM1Gj4YbiV1G, block_hash: 9mQP1LLXm1Ws9o98gAwvCD6Ufwkk32twVcBXzHR1cDpo, logs: [ "claim_alias / alias: \"\" / account_id: AccountId(\n \"dev-20240410232107-84994296070115\",\n) / timestamp: 1712791270202011626", ], receipt_ids: [ 4XNmpMKrgVeJAqVU1qu2BGB9WLhXmv4tRfeLT4WfRVCs, ], gas_burnt: NearGas { inner: 2637373848314, }, tokens_burnt: NearToken { inner: 263737384831400000000, }, executor_id: AccountId( "dev-20240410232107-84994296070115", ), status: Failure(ActionError(ActionError { index: Some(0), kind: FunctionCallError(ExecutionError("Smart contract panicked: Invalid alias")) })), }, ExecutionOutcome { transaction_hash: 4XNmpMKrgVeJAqVU1qu2BGB9WLhXmv4tRfeLT4WfRVCs, block_hash: 8ERasxUUD3WhLgMxn7bGsTdFYZzBTj3XBqpVZTpRMons, logs: [], receipt_ids: [], gas_burnt: NearGas { inner: 223182562500, }, tokens_burnt: NearToken { inner: 0, }, executor_id: AccountId( "dev-20240410232107-84994296070115", ), status: SuccessValue(''), }, ], status: Failure(ActionError(ActionError { index: Some(0), kind: FunctionCallError(ExecutionError("Smart contract panicked: Invalid alias")) })), } total_gas_burnt_usd: 0.0035327372633137282 outcome (success: true): outcome_gas_burnt_usd: 0.001621885580889976 outcome_tokens_burnt_usd: 0.0 outcome (success: false): outcome_gas_burnt_usd: 0.0017617657306737517 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.00014908595175 outcome_tokens_burnt_usd: 0.0 dev_create_account(account1): Account { id: AccountId( "dev-20240410232110-53697418506271", ), } generate_cid_borsh(account1): ViewResultDetails { result: [ 59, 0, 0, 0, 98, 97, 102, 107, 114, 101, 105, 104, 100, 119, 100, 99, 101, 102, 103, 104, 52, 100, 113, 107, 106, 118, 54, 55, 117, 122, 99, 109, 119, 55, 111, 106, 101, 101, 54, 120, 101, 100, 122, 100, 101, 116, 111, 106, 117, 122, 106, 101, 118, 116, 101, 110, 120, 113, 117, 118, 121, 107, 117, ], logs: [], } claim_alias(account1, alias1): ExecutionFinalResult { total_gas_burnt: NearGas { inner: 5710392058645, }, transaction: ExecutionOutcome { transaction_hash: Cwgwf3XEBxSG3rbSfG4WctV3MrijUpuoZL1tauh97zTJ, block_hash: 8Bay8JsQZQsGryakaVTnwv6w9rUbVKiUutTjKMw2SuXb, logs: [], receipt_ids: [ 97VbnMM7dtqUtgF2ebVBNDyNMsHT8SXvSKAWZR9oGAKU, ], gas_burnt: NearGas { inner: 2427985842086, }, tokens_burnt: NearToken { inner: 242798584208600000000, }, executor_id: AccountId( "dev-20240410232110-53697418506271", ), status: SuccessReceiptId(97VbnMM7dtqUtgF2ebVBNDyNMsHT8SXvSKAWZR9oGAKU), }, receipts: [ ExecutionOutcome { transaction_hash: 97VbnMM7dtqUtgF2ebVBNDyNMsHT8SXvSKAWZR9oGAKU, block_hash: 8Yq1snhKzeyhbzqawtysmB7N6m94QiR8Utdrt3isRhBS, logs: [ "claim_alias / alias: \"alias1\" / account_id: AccountId(\n \"dev-20240410232110-53697418506271\",\n) / timestamp: 1712791272428150346", ], receipt_ids: [ 4KpKtxosubczxj5cD6wEUYZcmuAZMYUqxaxqEdia2qnY, ], gas_burnt: NearGas { inner: 3059223654059, }, tokens_burnt: NearToken { inner: 305922365405900000000, }, executor_id: AccountId( "dev-20240410232107-84994296070115", ), status: SuccessValue(''), }, ExecutionOutcome { transaction_hash: 4KpKtxosubczxj5cD6wEUYZcmuAZMYUqxaxqEdia2qnY, block_hash: ENyTAtH2mZvyzybHrce1Y8San9nDk4nx5rdw3KKYY1Ju, logs: [], receipt_ids: [], gas_burnt: NearGas { inner: 223182562500, }, tokens_burnt: NearToken { inner: 0, }, executor_id: AccountId( "dev-20240410232110-53697418506271", ), status: SuccessValue(''), }, ], status: SuccessValue(''), } total_gas_burnt_usd: 0.00381454189517486 outcome (success: true): outcome_gas_burnt_usd: 0.0016218945425134478 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.002043561400911412 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.00014908595175 outcome_tokens_burnt_usd: 0.0 claim_alias(account1, alias1): ExecutionFinalResult { total_gas_burnt: NearGas { inner: 5534798929042, }, transaction: ExecutionOutcome { transaction_hash: GvgkgbdnbMfQpvvyuJLzez3GjMNHdQtKsr3ELmBo3VVn, block_hash: EmkfZJEChvxGTBmFc4JwyfSyeaxTZJg16BNyAWzC9JfX, logs: [], receipt_ids: [ ChzDXn4cYko2e1fUDUzxVQ78JPK1hEmSkhuwuvp2wmuC, ], gas_burnt: NearGas { inner: 2427985842086, }, tokens_burnt: NearToken { inner: 242798584208600000000, }, executor_id: AccountId( "dev-20240410232110-53697418506271", ), status: SuccessReceiptId(ChzDXn4cYko2e1fUDUzxVQ78JPK1hEmSkhuwuvp2wmuC), }, receipts: [ ExecutionOutcome { transaction_hash: ChzDXn4cYko2e1fUDUzxVQ78JPK1hEmSkhuwuvp2wmuC, block_hash: HQmZrnDyii4wkyVJjXHGAhj3vs8buFgmjv6irW4RFnEi, logs: [ "claim_alias / alias: \"alias1\" / account_id: AccountId(\n \"dev-20240410232110-53697418506271\",\n) / timestamp: 1712791273440438234", "Alias already claimed", ], receipt_ids: [ DECgD8u6vN6GQR46VGXC4Qjz5H5HE6GckpgA9NuJiqMq, ], gas_burnt: NearGas { inner: 2883630524456, }, tokens_burnt: NearToken { inner: 288363052445600000000, }, executor_id: AccountId( "dev-20240410232107-84994296070115", ), status: SuccessValue(''), }, ExecutionOutcome { transaction_hash: DECgD8u6vN6GQR46VGXC4Qjz5H5HE6GckpgA9NuJiqMq, block_hash: 9QinY4jenhwKK9BjCDkYMT2MXkGNFnPDGNkebCMZnqAP, logs: [], receipt_ids: [], gas_burnt: NearGas { inner: 223182562500, }, tokens_burnt: NearToken { inner: 0, }, executor_id: AccountId( "dev-20240410232110-53697418506271", ), status: SuccessValue(''), }, ], status: SuccessValue(''), } total_gas_burnt_usd: 0.0036972456846000555 outcome (success: true): outcome_gas_burnt_usd: 0.0016218945425134478 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.0019262651903366077 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.00014908595175 outcome_tokens_burnt_usd: 0.0 get_account_info(account1): Some( ( "alias1", ( 1712791272428150346, 0, ), ), ) get_alias_map(account1, alias1): Some( { AccountId( "dev-20240410232110-53697418506271", ): ( 1712791272428150346, 0, ), }, ) dev_create_account(account2): Account { id: AccountId( "dev-20240410232113-30579477411296", ), } claim_alias(alias2): ExecutionFinalResult { total_gas_burnt: NearGas { inner: 5797741838275, }, transaction: ExecutionOutcome { transaction_hash: 74k3H2n9J3X1KTymBKQswDAtAMNZEXuNDbn3bF41zSFp, block_hash: Dg81y5os7kkMQ19UDTRFpr4GiYfWhMwpuq5UCimNAYeA, logs: [], receipt_ids: [ 5bPzyWPbvBkbE1nbqvR6PiFc6SAZ6eaG6y45qC7VEw1b, ], gas_burnt: NearGas { inner: 2427985842086, }, tokens_burnt: NearToken { inner: 242798584208600000000, }, executor_id: AccountId( "dev-20240410232113-30579477411296", ), status: SuccessReceiptId(5bPzyWPbvBkbE1nbqvR6PiFc6SAZ6eaG6y45qC7VEw1b), }, receipts: [ ExecutionOutcome { transaction_hash: 5bPzyWPbvBkbE1nbqvR6PiFc6SAZ6eaG6y45qC7VEw1b, block_hash: BFbphSS5RaQZoWP4YWpb33XbFqZRPDZnXkaPr56VdQzW, logs: [ "claim_alias / alias: \"alias2\" / account_id: AccountId(\n \"dev-20240410232113-30579477411296\",\n) / timestamp: 1712791275466176132", ], receipt_ids: [ DWF5u3hCsQvavY87nAbAAnWoASMAeTmgCE6oAi1Lbc8S, ], gas_burnt: NearGas { inner: 3146573433689, }, tokens_burnt: NearToken { inner: 314657343368900000000, }, executor_id: AccountId( "dev-20240410232107-84994296070115", ), status: SuccessValue(''), }, ExecutionOutcome { transaction_hash: DWF5u3hCsQvavY87nAbAAnWoASMAeTmgCE6oAi1Lbc8S, block_hash: Bm7ANxpxbUKPC8n9tYPL3i9E4R7emjpUydWweGwajgfU, logs: [], receipt_ids: [], gas_burnt: NearGas { inner: 223182562500, }, tokens_burnt: NearToken { inner: 0, }, executor_id: AccountId( "dev-20240410232113-30579477411296", ), status: SuccessValue(''), }, ], status: SuccessValue(''), } total_gas_burnt_usd: 0.0038728915479677 outcome (success: true): outcome_gas_burnt_usd: 0.0016218945425134478 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.002101911053704252 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.00014908595175 outcome_tokens_burnt_usd: 0.0 get_account_info(account2): Some( ( "alias2", ( 1712791275466176132, 0, ), ), ) get_alias_map_borsh(alias2): Some( { AccountId( "dev-20240410232113-30579477411296", ): ( 1712791275466176132, 0, ), }, ) claim_alias(account2, alias1): ExecutionFinalResult { total_gas_burnt: NearGas { inner: 6102073589470, }, transaction: ExecutionOutcome { transaction_hash: 8SMYRkLnbq9X9waKpJ1XERa2twBGPupyhBsBu2JfG58D, block_hash: 5tZSbLjPiSbxEP2ntmDFf9CRbMxRKzJoyDhSg5WLG954, logs: [], receipt_ids: [ 4pJVXP4N1zeA5nKa5gHHfXMZo82iLdfxRY2wAbDqvQRw, ], gas_burnt: NearGas { inner: 2427985842086, }, tokens_burnt: NearToken { inner: 242798584208600000000, }, executor_id: AccountId( "dev-20240410232113-30579477411296", ), status: SuccessReceiptId(4pJVXP4N1zeA5nKa5gHHfXMZo82iLdfxRY2wAbDqvQRw), }, receipts: [ ExecutionOutcome { transaction_hash: 4pJVXP4N1zeA5nKa5gHHfXMZo82iLdfxRY2wAbDqvQRw, block_hash: 9JemKyBgNifZT2Heb86xP2WEE6HsWjtKbTsvnu7jBKy6, logs: [ "claim_alias / alias: \"alias1\" / account_id: AccountId(\n \"dev-20240410232113-30579477411296\",\n) / timestamp: 1712791276476715032", ], receipt_ids: [ BsovSYfmufEP1KaW7YxK52vxrjdVeAcEKGcrdnVLbDm, ], gas_burnt: NearGas { inner: 3450905184884, }, tokens_burnt: NearToken { inner: 345090518488400000000, }, executor_id: AccountId( "dev-20240410232107-84994296070115", ), status: SuccessValue(''), }, ExecutionOutcome { transaction_hash: BsovSYfmufEP1KaW7YxK52vxrjdVeAcEKGcrdnVLbDm, block_hash: GADwtzGWbGnLm5GBxXg5mwNvLAhDu2qKGBPfkr99Evog, logs: [], receipt_ids: [], gas_burnt: NearGas { inner: 223182562500, }, tokens_burnt: NearToken { inner: 0, }, executor_id: AccountId( "dev-20240410232113-30579477411296", ), status: SuccessValue(''), }, ], status: SuccessValue(''), } total_gas_burnt_usd: 0.00407618515776596 outcome (success: true): outcome_gas_burnt_usd: 0.0016218945425134478 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.002305204663502512 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.00014908595175 outcome_tokens_burnt_usd: 0.0 get_account_info(account2): Some( ( "alias1", ( 1712791276476715032, 1, ), ), ) get_alias_map(account2, alias1): Some( { AccountId( "dev-20240410232113-30579477411296", ): ( 1712791276476715032, 1, ), AccountId( "dev-20240410232110-53697418506271", ): ( 1712791272428150346, 0, ), }, ) get_alias_map(account2, alias2): Some( {}, ) claim_alias(account1, alias2): ExecutionFinalResult { total_gas_burnt: NearGas { inner: 6096724852714, }, transaction: ExecutionOutcome { transaction_hash: 4CBFUmMi3Zja42EusBJmYfDbMQCPHV9yBzjhDMzfG4Gu, block_hash: 3gHF4ie8eEfA5FhV4rbQEyRaVddGoWvwtKXQ22Jk8Dz4, logs: [], receipt_ids: [ 4ysooAbZHJTdSG5UmW3VDJ6RXWAb7GMkBmps2uape318, ], gas_burnt: NearGas { inner: 2427985842086, }, tokens_burnt: NearToken { inner: 242798584208600000000, }, executor_id: AccountId( "dev-20240410232110-53697418506271", ), status: SuccessReceiptId(4ysooAbZHJTdSG5UmW3VDJ6RXWAb7GMkBmps2uape318), }, receipts: [ ExecutionOutcome { transaction_hash: 4ysooAbZHJTdSG5UmW3VDJ6RXWAb7GMkBmps2uape318, block_hash: BqKmTefNtHaihmERCXRxLQibFKkQd53ZbPCTXz6pMW2F, logs: [ "claim_alias / alias: \"alias2\" / account_id: AccountId(\n \"dev-20240410232110-53697418506271\",\n) / timestamp: 1712791277487536732", ], receipt_ids: [ 6krWZNecxYNvWKBPFRmrXAC7K54WwdKaWJnPJgrND3iZ, ], gas_burnt: NearGas { inner: 3445556448128, }, tokens_burnt: NearToken { inner: 344555644812800000000, }, executor_id: AccountId( "dev-20240410232107-84994296070115", ), status: SuccessValue(''), }, ExecutionOutcome { transaction_hash: 6krWZNecxYNvWKBPFRmrXAC7K54WwdKaWJnPJgrND3iZ, block_hash: 91E6cHnBsiZSD8Wwe5Qwv2kmJgbManwuAczD6fjvudZR, logs: [], receipt_ids: [], gas_burnt: NearGas { inner: 223182562500, }, tokens_burnt: NearToken { inner: 0, }, executor_id: AccountId( "dev-20240410232110-53697418506271", ), status: SuccessValue(''), }, ], status: SuccessValue(''), } total_gas_burnt_usd: 0.004072612201612952 outcome (success: true): outcome_gas_burnt_usd: 0.0016218945425134478 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.0023016317073495042 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.00014908595175 outcome_tokens_burnt_usd: 0.0 get_account_info(account1): Some( ( "alias2", ( 1712791277487536732, 0, ), ), ) get_alias_map(account1, alias2): Some( { AccountId( "dev-20240410232110-53697418506271", ): ( 1712791277487536732, 0, ), }, ) get_alias_map(account1, alias1): Some( { AccountId( "dev-20240410232113-30579477411296", ): ( 1712791276476715032, 1, ), }, ) claim_alias(account1, alias1): ExecutionFinalResult { total_gas_burnt: NearGas { inner: 6102050552302, }, transaction: ExecutionOutcome { transaction_hash: UxHq2BJUs8fKHaLCgEnVibtoqJpYMzQYzgxgwZNRHf5, block_hash: Az23ZHfRdTsK1JRq3BnaJdF45RBFRVRWDwdVYY3s9tUh, logs: [], receipt_ids: [ BE1UfjiWWAYDafGDV4qX9cAMh1c4Hzb678V8VzUYvL3f, ], gas_burnt: NearGas { inner: 2427985842086, }, tokens_burnt: NearToken { inner: 242798584208600000000, }, executor_id: AccountId( "dev-20240410232110-53697418506271", ), status: SuccessReceiptId(BE1UfjiWWAYDafGDV4qX9cAMh1c4Hzb678V8VzUYvL3f), }, receipts: [ ExecutionOutcome { transaction_hash: BE1UfjiWWAYDafGDV4qX9cAMh1c4Hzb678V8VzUYvL3f, block_hash: 8ptHc8xUGsJkSNmsHFLzkVQeCbDtiSabueyMTGauxdm5, logs: [ "claim_alias / alias: \"alias1\" / account_id: AccountId(\n \"dev-20240410232110-53697418506271\",\n) / timestamp: 1712791278501859931", ], receipt_ids: [ EFJNfY7TfxJYE9FVJJstrzo8gUw6KWk6vmtYRWAAkeSh, ], gas_burnt: NearGas { inner: 3450882147716, }, tokens_burnt: NearToken { inner: 345088214771600000000, }, executor_id: AccountId( "dev-20240410232107-84994296070115", ), status: SuccessValue(''), }, ExecutionOutcome { transaction_hash: EFJNfY7TfxJYE9FVJJstrzo8gUw6KWk6vmtYRWAAkeSh, block_hash: 7G6bY7MXyvo2mjWsScrabV1N1rp1quVJfE6veBQoT9Dh, logs: [], receipt_ids: [], gas_burnt: NearGas { inner: 223182562500, }, tokens_burnt: NearToken { inner: 0, }, executor_id: AccountId( "dev-20240410232110-53697418506271", ), status: SuccessValue(''), }, ], status: SuccessValue(''), } total_gas_burnt_usd: 0.004076169768937736 outcome (success: true): outcome_gas_burnt_usd: 0.0016218945425134478 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.0023051892746742877 outcome_tokens_burnt_usd: 0.0 outcome (success: true): outcome_gas_burnt_usd: 0.00014908595175 outcome_tokens_burnt_usd: 0.0 get_account_info(account1): Some( ( "alias1", ( 1712791278501859931, 1, ), ), ) get_alias_map(account1, alias1): Some( { AccountId( "dev-20240410232110-53697418506271", ): ( 1712791278501859931, 1, ), AccountId( "dev-20240410232113-30579477411296", ): ( 1712791276476715032, 0, ), }, ) get_alias_map(account1, alias2): Some( {}, )
In [ ]:
{ . "$ScriptDir/../apps/spiral/temp/extension/build.ps1" } | Invoke-Block
bun install v1.1.0 (5903a614) Checked 11 installs across 13 packages (no changes) [156.00ms] [INFO]: 🎯 Checking for the Wasm target... [INFO]: 🌀 Compiling to Wasm... Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.83s [INFO]: ⬇️ Installing wasm-bindgen... [INFO]: origin crate has no LICENSE [INFO]: ✨ Done in 5.41s [INFO]: 📦 Your wasm pkg is ready to publish at C:\home\git\polyglot\apps\spiral\temp\extension\pkg. ▲ [WARNING] "import.meta" is not available with the "iife" output format and will be empty [empty-import-meta] pkg/spiral_temp_extension.js:1494:57: 1494 │ ...put = new URL('spiral_temp_extension_bg.wasm', import.meta.url); ╵ ~~~~~~~~~~~ You need to set the output format to "esm" for "import.meta" to work correctly. 1 warning dist\spiral_temp_extension_bg-4DEZJNWN.wasm 4.5mb ⚠️ dist\devtools.js 29.0kb dist\content_script.js 27.1kb dist\service_worker.js 2.2kb ⚡ Done in 204ms $ playwright test [WebServer] (node:27852) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. (Use `node --trace-deprecation ...` to show where the warning was created) Running 3 tests using 3 workers [1/3] [Desktop Chrome] › extension.spec.ts:13:5 › libgen [2/3] [Desktop Chrome] › extension.spec.ts:3:5 › popup localhost [3/3] [Desktop Chrome] › extension.spec.ts:8:5 › popup extension 3 passed (21.6s) To open last HTML report run: npx playwright show-report
In [ ]:
{ . "$ScriptDir/../apps/spiral/temp/test/build.ps1" } | Invoke-Block
── pwsh ────────────────────────────────────────────────────────────────────────
. ../../../../scripts/nbs_header.ps1
. ../../../../scripts/core.ps1
── pwsh ────────────────────────────────────────────────────────────────────────
{ . ../../../../apps/spiral/dist/Supervisor$(GetExecutableSuffix)
--execute-command "pwsh -c `"../../../../scripts/invoke-dib.ps1 test.dib`"" } |
Invoke-Block -Retries 5
╭─[ 23.43s - stdout ]──────────────────────────────────────────────────────────╮
│ 00:00:00 #1 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:00 #2 [debug] executeAsync / options: { Command = │
│ "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral │
│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" --port │
│ 13805 --default-int i32 --default-float f64" │
│ WorkingDirectory = None │
│ CancellationToken = Some System.Threading.CancellationToken │
│ OnLine = Some <fun:main@441-47> } │
│ 00:00:00 #3 [verbose] > pwd: C:\home\git\polyglot\apps\spiral\temp\test │
│ 00:00:00 #4 [verbose] > dllPath: │
│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language │
│ 2\artifacts\bin\The Spiral Language 2\release │
│ 00:00:00 #5 [verbose] > targetDir: │
│ C:\home\git\polyglot\target/polyglot/spiral_eval │
│ 00:00:00 #6 [verbose] > Starting the Spiral Server. It is bound to: │
│ http://localhost:13805 │
│ 00:00:01 #7 [debug] runWithTimeoutChildAsync / timeout: 500 │
│ 00:00:01 #8 [verbose] waitForPortAccess / port: 13805 / retry: 0 │
│ 00:00:01 #9 [debug] sendJson / port: 13805 / json: {"Ping":true} / │
│ result.Length: │
│ 00:00:01 #10 [verbose] awaitCompiler / Ping / result: Some(null) / port: │
│ 13805 / retry: 0 │
│ 00:00:01 #11 [verbose] > Server bound to: http://localhost:13805 │
│ 00:00:01 #12 [debug] executeAsync / options: { Command = "pwsh -c │
│ "../../../../scripts/invoke-dib.ps1 test.dib"" │
│ WorkingDirectory = None │
│ CancellationToken = Some System.Threading.CancellationToken │
│ OnLine = None } │
│ 00:00:05 #13 [verbose] > │
│ 00:00:05 #14 [verbose] > ── markdown │
│ ──────────────────────────────────────────────────────────────────── │
│ 00:00:05 #15 [verbose] > │
│ ╭─────────────────────────────────────────────────────────────────────────── │
│ ───╮ │
│ 00:00:05 #16 [verbose] > │ # test (Polyglot) │
│ │ │
│ 00:00:05 #17 [verbose] > │
│ ╰─────────────────────────────────────────────────────────────────────────── │
│ ───╯ │
│ 00:00:06 #18 [verbose] > │
│ 00:00:06 #19 [verbose] > ── spiral │
│ ────────────────────────────────────────────────────────────────────── │
│ 00:00:06 #20 [verbose] > // // test │
│ 00:00:06 #21 [verbose] > │
│ 00:00:06 #22 [verbose] > open testing │
│ 00:00:09 #23 [verbose] > Building │
│ c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8837341da068f4ef42 │
│ 71045b3ef1c89d209237bf74b4f11596b6ee2d484becb0\main.spi │
│ 00:00:11 #24 [verbose] > │
│ 00:00:11 #25 [verbose] > ╭─[ 5.89s - stdout │
│ ]───────────────────────────────────────────────────────────╮ │
│ 00:00:11 #26 [verbose] > │ () │
│ │ │
│ 00:00:11 #27 [verbose] > │ │
│ │
│ │ │
│ 00:00:11 #28 [verbose] > │ │
│ │
│ │ │
│ 00:00:11 #29 [verbose] > │
│ ╰─────────────────────────────────────────────────────────────────────────── │
│ ───╯ │
│ 00:00:11 #30 [verbose] > │
│ 00:00:11 #31 [verbose] > ── spiral │
│ ────────────────────────────────────────────────────────────────────── │
│ 00:00:11 #32 [verbose] > nominal i = () │
│ 00:00:11 #33 [verbose] > nominal e = () │
│ 00:00:11 #34 [verbose] > nominal s = () │
│ 00:00:11 #35 [verbose] > nominal n = () │
│ 00:00:11 #36 [verbose] > nominal t = () │
│ 00:00:11 #37 [verbose] > nominal f = () │
│ 00:00:11 #38 [verbose] > nominal j = () │
│ 00:00:11 #39 [verbose] > nominal p = () │
│ 00:00:11 #40 [verbose] > │
│ 00:00:11 #41 [verbose] > union sensing = │
│ 00:00:11 #42 [verbose] > | Si : s * i │
│ 00:00:11 #43 [verbose] > | Se : s * e │
│ 00:00:11 #44 [verbose] > │
│ 00:00:11 #45 [verbose] > union intuition = │
│ 00:00:11 #46 [verbose] > | Ni : n * i │
│ 00:00:11 #47 [verbose] > | Ne : n * e │
│ 00:00:11 #48 [verbose] > │
│ 00:00:11 #49 [verbose] > union thinking = │
│ 00:00:11 #50 [verbose] > | Ti : t * i │
│ 00:00:11 #51 [verbose] > | Te : t * e │
│ 00:00:11 #52 [verbose] > │
│ 00:00:11 #53 [verbose] > union feeling = │
│ 00:00:11 #54 [verbose] > | Fi : f * i │
│ 00:00:11 #55 [verbose] > | Fe : f * e │
│ 00:00:11 #56 [verbose] > │
│ 00:00:11 #57 [verbose] > union function_stack = │
│ 00:00:11 #58 [verbose] > | FS : sensing * intuition * thinking * feeling │
│ 00:00:11 #59 [verbose] > │
│ 00:00:11 #60 [verbose] > union personality_type = │
│ 00:00:11 #61 [verbose] > | ISTJ : i * s * t * j * function_stack │
│ 00:00:11 #62 [verbose] > | ISFJ : i * s * f * j * function_stack │
│ 00:00:11 #63 [verbose] > | INFJ : i * n * f * j * function_stack │
│ 00:00:11 #64 [verbose] > | INTJ : i * n * t * j * function_stack │
│ 00:00:11 #65 [verbose] > | ISTP : i * s * t * p * function_stack │
│ 00:00:11 #66 [verbose] > | ISFP : i * s * f * p * function_stack │
│ 00:00:11 #67 [verbose] > | INFP : i * n * f * p * function_stack │
│ 00:00:11 #68 [verbose] > | INTP : i * n * t * p * function_stack │
│ 00:00:11 #69 [verbose] > | ESTP : e * s * t * p * function_stack │
│ 00:00:11 #70 [verbose] > | ESFP : e * s * f * p * function_stack │
│ 00:00:11 #71 [verbose] > | ENFP : e * n * f * p * function_stack │
│ 00:00:11 #72 [verbose] > | ENTP : e * n * t * p * function_stack │
│ 00:00:11 #73 [verbose] > | ESTJ : e * s * t * j * function_stack │
│ 00:00:11 #74 [verbose] > | ESFJ : e * s * f * j * function_stack │
│ 00:00:11 #75 [verbose] > | ENFJ : e * n * f * j * function_stack │
│ 00:00:11 #76 [verbose] > | ENTJ : e * n * t * j * function_stack │
│ 00:00:11 #77 [verbose] > │
│ 00:00:11 #78 [verbose] > │
│ 00:00:11 #79 [verbose] > inl main () = │
│ 00:00:11 #80 [verbose] > inl istj_stack = FS ((Si (s, i)), Ne (n, e), │
│ (Te (t, e)), (Fi (f, i))) │
│ 00:00:11 #81 [verbose] > inl istj_personality = ISTJ (i, s, t, j, │
│ istj_stack) │
│ 00:00:11 #82 [verbose] > // inl isfj_stack = FS ((Si (s, i)), Ne (n, e), │
│ (Fe (f, e)), (Ti (t, i))) │
│ 00:00:11 #83 [verbose] > // inl isfj_personality = ISFJ (i, s, f, j, │
│ isfj_stack) │
│ 00:00:11 #84 [verbose] > │
│ 00:00:11 #85 [verbose] > ;[[ │
│ 00:00:11 #86 [verbose] > istj_personality │
│ 00:00:11 #87 [verbose] > ]] │
│ 00:00:11 #88 [verbose] > |> fun x => $'$"%A{!x}"' : string │
│ 00:00:11 #89 [verbose] > |> console.write_line │
│ 00:00:11 #90 [verbose] > │
│ 00:00:11 #91 [verbose] > inl main () = │
│ 00:00:11 #92 [verbose] > $"!main ()" : () │
│ 00:00:12 #93 [verbose] > Building │
│ c:\home\git\polyglot\target\polyglot\spiral_eval\packages\896eb5e4f49dc571cf │
│ d998d8dd04fa4597ef12c513a22c93b9dcddcbf0c87da2\main.spi │
│ 00:00:13 #94 [verbose] > │
│ 00:00:13 #95 [verbose] > ╭─[ 1.81s - stdout │
│ ]───────────────────────────────────────────────────────────╮ │
│ 00:00:13 #96 [verbose] > │ type [<Struct>] US0 = │
│ │ │
│ 00:00:13 #97 [verbose] > │ | US0_0 │
│ │ │
│ 00:00:13 #98 [verbose] > │ | US0_1 │
│ │ │
│ 00:00:13 #99 [verbose] > │ and [<Struct>] US1 = │
│ │ │
│ 00:00:13 #100 [verbose] > │ | US1_0 │
│ │ │
│ 00:00:13 #101 [verbose] > │ | US1_1 │
│ │ │
│ 00:00:13 #102 [verbose] > │ and [<Struct>] US2 = │
│ │ │
│ 00:00:13 #103 [verbose] > │ | US2_0 │
│ │ │
│ 00:00:13 #104 [verbose] > │ | US2_1 │
│ │ │
│ 00:00:13 #105 [verbose] > │ and [<Struct>] US3 = │
│ │ │
│ 00:00:13 #106 [verbose] > │ | US3_0 │
│ │ │
│ 00:00:13 #107 [verbose] > │ | US3_1 │
│ │ │
│ 00:00:13 #108 [verbose] > │ and [<Struct>] US4 = │
│ │ │
│ 00:00:13 #109 [verbose] > │ | US4_0 of f0_0 : US0 * f0_1 : US1 * f0_2 : │
│ US2 * f0_3 : US3 │ │
│ 00:00:13 #110 [verbose] > │ and [<Struct>] US5 = │
│ │ │
│ 00:00:13 #111 [verbose] > │ | US5_0 of f0_0 : US4 │
│ │ │
│ 00:00:13 #112 [verbose] > │ | US5_1 of f1_0 : US4 │
│ │ │
│ 00:00:13 #113 [verbose] > │ | US5_2 of f2_0 : US4 │
│ │ │
│ 00:00:13 #114 [verbose] > │ | US5_3 of f3_0 : US4 │
│ │ │
│ 00:00:13 #115 [verbose] > │ | US5_4 of f4_0 : US4 │
│ │ │
│ 00:00:13 #116 [verbose] > │ | US5_5 of f5_0 : US4 │
│ │ │
│ 00:00:13 #117 [verbose] > │ | US5_6 of f6_0 : US4 │
│ │ │
│ 00:00:13 #118 [verbose] > │ | US5_7 of f7_0 : US4 │
│ │ │
│ 00:00:13 #119 [verbose] > │ | US5_8 of f8_0 : US4 │
│ │ │
│ 00:00:13 #120 [verbose] > │ | US5_9 of f9_0 : US4 │
│ │ │
│ 00:00:13 #121 [verbose] > │ | US5_10 of f10_0 : US4 │
│ │ │
│ 00:00:13 #122 [verbose] > │ | US5_11 of f11_0 : US4 │
│ │ │
│ 00:00:13 #123 [verbose] > │ | US5_12 of f12_0 : US4 │
│ │ │
│ 00:00:13 #124 [verbose] > │ | US5_13 of f13_0 : US4 │
│ │ │
│ 00:00:13 #125 [verbose] > │ | US5_14 of f14_0 : US4 │
│ │ │
│ 00:00:13 #126 [verbose] > │ | US5_15 of f15_0 : US4 │
│ │ │
│ 00:00:13 #127 [verbose] > │ let rec closure0 () () : unit = │
│ │ │
│ 00:00:13 #128 [verbose] > │ let v0 : US0 = US0_0 │
│ │ │
│ 00:00:13 #129 [verbose] > │ let v1 : US1 = US1_1 │
│ │ │
│ 00:00:13 #130 [verbose] > │ let v2 : US2 = US2_1 │
│ │ │
│ 00:00:13 #131 [verbose] > │ let v3 : US3 = US3_0 │
│ │ │
│ 00:00:13 #132 [verbose] > │ let v4 : US4 = US4_0(v0, v1, v2, v3) │
│ │ │
│ 00:00:13 #133 [verbose] > │ let v5 : US5 = US5_0(v4) │
│ │ │
│ 00:00:13 #134 [verbose] > │ let v6 : (US5 []) = [|v5|] │
│ │ │
│ 00:00:13 #135 [verbose] > │ let v7 : string = $"%A{v6}" │
│ │ │
│ 00:00:13 #136 [verbose] > │ System.Console.WriteLine v7 │
│ │ │
│ 00:00:13 #137 [verbose] > │ () │
│ │ │
│ 00:00:13 #138 [verbose] > │ let v0 : (unit -> unit) = closure0() │
│ │ │
│ 00:00:13 #139 [verbose] > │ v0 () │
│ │ │
│ 00:00:13 #140 [verbose] > │ () │
│ │ │
│ 00:00:13 #141 [verbose] > │ │
│ │
│ │ │
│ 00:00:13 #142 [verbose] > │ [|US5_0 (US4_0 (US0_0, US1_1, US2_1, US3_0))|] │
│ │ │
│ 00:00:13 #143 [verbose] > │ │
│ │
│ │ │
│ 00:00:13 #144 [verbose] > │
│ ╰─────────────────────────────────────────────────────────────────────────── │
│ ───╯ │
│ 00:00:13 #145 [verbose] > │
│ 00:00:13 #146 [verbose] > ── fsharp │
│ ────────────────────────────────────────────────────────────────────── │
│ 00:00:13 #147 [verbose] > type PhonologicalFeature = │
│ 00:00:13 #148 [verbose] > | VowelFeature of │
│ 00:00:13 #149 [verbose] > height: Height │
│ 00:00:13 #150 [verbose] > * backness: Backness │
│ 00:00:13 #151 [verbose] > * roundedness: Roundedness │
│ 00:00:13 #152 [verbose] > * tone: Option<Tone> │
│ 00:00:13 #153 [verbose] > * stress: Option<Stress> │
│ 00:00:13 #154 [verbose] > * length: Option<Length> │
│ 00:00:13 #155 [verbose] > | ConsonantFeature of │
│ 00:00:13 #156 [verbose] > place: PlaceOfArticulation │
│ 00:00:13 #157 [verbose] > * manner: MannerOfArticulation │
│ 00:00:13 #158 [verbose] > * voicing: Voicing │
│ 00:00:13 #159 [verbose] > * length: Option<Length> │
│ 00:00:13 #160 [verbose] > | VowelHarmonyFeature │
│ 00:00:13 #161 [verbose] > | PitchAccentFeature │
│ 00:00:13 #162 [verbose] > │
│ 00:00:13 #163 [verbose] > and Stress = Primary | Secondary │
│ 00:00:13 #164 [verbose] > and Length = Long | Short | HalfLong │
│ 00:00:13 #165 [verbose] > │
│ 00:00:13 #166 [verbose] > and Height = │
│ 00:00:13 #167 [verbose] > | High | NearHigh | HighMid │
│ 00:00:13 #168 [verbose] > | Mid | LowMid | NearLow │
│ 00:00:13 #169 [verbose] > | Low │
│ 00:00:13 #170 [verbose] > │
│ 00:00:13 #171 [verbose] > and Backness = Front | Central | Back │
│ 00:00:13 #172 [verbose] > │
│ 00:00:13 #173 [verbose] > and Roundedness = Rounded | Unrounded │
│ 00:00:13 #174 [verbose] > │
│ 00:00:13 #175 [verbose] > and PlaceOfArticulation = │
│ 00:00:13 #176 [verbose] > | Bilabial | Labiodental | Dental │
│ 00:00:13 #177 [verbose] > | Alveolar | Postalveolar | Retroflex │
│ 00:00:13 #178 [verbose] > | Palatal | Velar | Uvular │
│ 00:00:13 #179 [verbose] > | Pharyngeal | Epiglottal | Glottal │
│ 00:00:13 #180 [verbose] > │
│ 00:00:13 #181 [verbose] > and MannerOfArticulation = │
│ 00:00:13 #182 [verbose] > | Plosive | Nasal | Trill │
│ 00:00:13 #183 [verbose] > | TapOrFlap | Fricative | LateralFricative │
│ 00:00:13 #184 [verbose] > | Approximant | LateralApproximant │
│ 00:00:13 #185 [verbose] > │
│ 00:00:13 #186 [verbose] > and Voicing = Voiced | Voiceless │
│ 00:00:13 #187 [verbose] > │
│ 00:00:13 #188 [verbose] > and SecondaryArticulation = │
│ 00:00:13 #189 [verbose] > | Labialization | Palatalization | │
│ Velarization │
│ 00:00:13 #190 [verbose] > | Pharyngealization | Aspiration │
│ 00:00:13 #191 [verbose] > │
│ 00:00:13 #192 [verbose] > and Tone = │
│ 00:00:13 #193 [verbose] > | LevelTone of int │
│ 00:00:13 #194 [verbose] > | ContourTone of int list │
│ 00:00:13 #195 [verbose] > │
│ 00:00:13 #196 [verbose] > and MorphologicalFeature = │
│ 00:00:13 #197 [verbose] > | RootFeature of string │
│ 00:00:13 #198 [verbose] > | AffixFeature of AffixType * string │
│ 00:00:13 #199 [verbose] > | IncorporationFeature of string * │
│ MorphologicalFeature │
│ 00:00:13 #200 [verbose] > | NonConcatenativePattern of string * string │
│ 00:00:13 #201 [verbose] > | AgglutinativeAffixFeature of │
│ AgglutinativeAffixType * string │
│ 00:00:13 #202 [verbose] > | HonorificFeature of HonorificType * string │
│ 00:00:13 #203 [verbose] > │
│ 00:00:13 #204 [verbose] > and AgglutinativeAffixType = Suffix | Prefix │
│ 00:00:13 #205 [verbose] > │
│ 00:00:13 #206 [verbose] > and HonorificType = VerbHonorific | NounHonorific │
│ 00:00:13 #207 [verbose] > │
│ 00:00:13 #208 [verbose] > and AffixType = │
│ 00:00:13 #209 [verbose] > | Prefix | Suffix | Infix │
│ 00:00:13 #210 [verbose] > | Circumfix │
│ 00:00:13 #211 [verbose] > │
│ 00:00:13 #212 [verbose] > type SyntacticFeature = │
│ 00:00:13 #213 [verbose] > | WordFeature of MorphologicalFeature list * │
│ LexicalCategory │
│ 00:00:13 #214 [verbose] > | PhraseFeature of PhraseType * │
│ SyntacticFeature list │
│ 00:00:13 #215 [verbose] > | GrammaticalRelation of │
│ GrammaticalRelationType * SyntacticFeature list │
│ 00:00:13 #216 [verbose] > | SOVOrderFeature │
│ 00:00:13 #217 [verbose] > | TopicCommentFeature │
│ 00:00:13 #218 [verbose] > │
│ 00:00:13 #219 [verbose] > and GrammaticalRelationType = │
│ 00:00:13 #220 [verbose] > | Ergative | Absolutive | Nominative │
│ 00:00:13 #221 [verbose] > | Accusative │
│ 00:00:13 #222 [verbose] > │
│ 00:00:13 #223 [verbose] > and LexicalCategory = │
│ 00:00:13 #224 [verbose] > | Noun | Verb | Adjective │
│ 00:00:13 #225 [verbose] > | Adverb | Pronoun | Preposition │
│ 00:00:13 #226 [verbose] > | Conjunction | Determiner | Interjection │
│ 00:00:13 #227 [verbose] > │
│ 00:00:13 #228 [verbose] > and PhraseType = │
│ 00:00:13 #229 [verbose] > | NP | VP | AP │
│ 00:00:13 #230 [verbose] > | PP | CP │
│ 00:00:13 #231 [verbose] > │
│ 00:00:13 #232 [verbose] > and SemanticFeature = │
│ 00:00:13 #233 [verbose] > | Meaning of string │
│ 00:00:13 #234 [verbose] > | SemanticRole of SemanticRoleType * │
│ SemanticFeature │
│ 00:00:13 #235 [verbose] > │
│ 00:00:13 #236 [verbose] > and SemanticRoleType = │
│ 00:00:13 #237 [verbose] > | Agent | Patient | Instrument │
│ 00:00:13 #238 [verbose] > | Location | Time | Cause │
│ 00:00:13 #239 [verbose] > │
│ 00:00:13 #240 [verbose] > and PragmaticFeature = │
│ 00:00:13 #241 [verbose] > | UseContext of string │
│ 00:00:13 #242 [verbose] > | PolitenessLevel of Politeness │
│ 00:00:13 #243 [verbose] > | SpeechAct of SpeechActType │
│ 00:00:13 #244 [verbose] > | SpeechLevel of SpeechLevelType │
│ 00:00:13 #245 [verbose] > │
│ 00:00:13 #246 [verbose] > and Politeness = Formal | Informal | Neutral │
│ 00:00:13 #247 [verbose] > │
│ 00:00:13 #248 [verbose] > and SpeechActType = │
│ 00:00:13 #249 [verbose] > | Assertive | Directive | Commissive │
│ 00:00:13 #250 [verbose] > | Expressive | Declarative │
│ 00:00:13 #251 [verbose] > │
│ 00:00:13 #252 [verbose] > and SpeechLevelType = │
│ 00:00:13 #253 [verbose] > | FormalHigh | FormalLow | InformalHigh │
│ 00:00:13 #254 [verbose] > | InformalLow | Neutral │
│ 00:00:13 #255 [verbose] > │
│ 00:00:13 #256 [verbose] > type LinguisticFeature = │
│ 00:00:13 #257 [verbose] > | Phonological of PhonologicalFeature │
│ 00:00:13 #258 [verbose] > | Morphological of MorphologicalFeature │
│ 00:00:13 #259 [verbose] > | Syntactic of SyntacticFeature │
│ 00:00:13 #260 [verbose] > | Semantic of SemanticFeature │
│ 00:00:13 #261 [verbose] > | Pragmatic of PragmaticFeature │
│ 00:00:13 #262 [verbose] > │
│ 00:00:13 #263 [verbose] > type LanguageConstruct = │
│ 00:00:13 #264 [verbose] > | LanguageElement of LinguisticFeature │
│ 00:00:13 #265 [verbose] > | LanguageStructure of LanguageConstruct list │
│ 00:00:13 #266 [verbose] > | TranslationElement of TranslationFeature │
│ 00:00:13 #267 [verbose] > │
│ 00:00:13 #268 [verbose] > and TranslationFeature = │
│ 00:00:13 #269 [verbose] > | LinkedPhonological of PhonologicalFeature * │
│ PhonologicalFeature │
│ 00:00:13 #270 [verbose] > | LinkedMorphological of MorphologicalFeature │
│ * MorphologicalFeature │
│ 00:00:13 #271 [verbose] > | LinkedSyntactic of SyntacticFeature * │
│ SyntacticFeature │
│ 00:00:13 #272 [verbose] > | LinkedSemantic of SemanticFeature * │
│ SemanticFeature │
│ 00:00:13 #273 [verbose] > │
│ 00:00:13 #274 [verbose] > type Discourse = DiscourseUnit of │
│ LanguageConstruct list │
│ 00:00:13 #275 [verbose] > │
│ 00:00:13 #276 [verbose] > type LanguageModel = │
│ 00:00:13 #277 [verbose] > | Model of discourse: Discourse │
│ 00:00:13 #278 [verbose] > │
│ 00:00:13 #279 [verbose] > ── fsharp - import │
│ ───────────────────────────────────────────────────────────── │
│ 00:00:13 #280 [verbose] > #r │
│ 00:00:13 #281 [verbose] > │
│ "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microso │
│ ft.A │
│ 00:00:13 #282 [verbose] > spNetCore.Html.Abstractions.dll" │
│ 00:00:13 #283 [verbose] > #r │
│ 00:00:13 #284 [verbose] > │
│ "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microso │
│ ft.D │
│ 00:00:13 #285 [verbose] > otNet.Interactive.dll" │
│ 00:00:13 #286 [verbose] > #r │
│ 00:00:13 #287 [verbose] > │
│ "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microso │
│ ft.D │
│ 00:00:13 #288 [verbose] > otNet.Interactive.FSharp.dll" │
│ 00:00:13 #289 [verbose] > #r │
│ 00:00:13 #290 [verbose] > │
│ "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microso │
│ ft.D │
│ 00:00:13 #291 [verbose] > otNet.Interactive.Formatting.dll" │
│ 00:00:13 #292 [verbose] > open System │
│ 00:00:13 #293 [verbose] > open System.IO │
│ 00:00:13 #294 [verbose] > open System.Text │
│ 00:00:13 #295 [verbose] > open Microsoft.DotNet.Interactive.Formatting │
│ 00:00:15 #296 [verbose] > │
│ 00:00:15 #297 [verbose] > ── fsharp - import │
│ ───────────────────────────────────────────────────────────── │
│ 00:00:15 #298 [verbose] > #r │
│ 00:00:15 #299 [verbose] > │
│ "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microso │
│ ft.D │
│ 00:00:15 #300 [verbose] > otNet.Interactive.FSharp.dll" │
│ 00:00:15 #301 [verbose] > open │
│ Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers │
│ 00:00:15 #302 [verbose] > #r │
│ 00:00:15 #303 [verbose] > │
│ "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microso │
│ ft.D │
│ 00:00:15 #304 [verbose] > otNet.Interactive.dll" │
│ 00:00:15 #305 [verbose] > open type Microsoft.DotNet.Interactive.Kernel │
│ 00:00:15 #306 [verbose] > │
│ 00:00:15 #307 [verbose] > ── fsharp - import │
│ ───────────────────────────────────────────────────────────── │
│ 00:00:15 #308 [verbose] > type PhonologicalFeature = │
│ 00:00:15 #309 [verbose] > | VowelFeature of │
│ 00:00:15 #310 [verbose] > height: Height │
│ 00:00:15 #311 [verbose] > * backness: Backness │
│ 00:00:15 #312 [verbose] > * roundedness: Roundedness │
│ 00:00:15 #313 [verbose] > * tone: Option<Tone> │
│ 00:00:15 #314 [verbose] > * stress: Option<Stress> │
│ 00:00:15 #315 [verbose] > * length: Option<Length> │
│ 00:00:15 #316 [verbose] > | ConsonantFeature of │
│ 00:00:15 #317 [verbose] > place: PlaceOfArticulation │
│ 00:00:15 #318 [verbose] > * manner: MannerOfArticulation │
│ 00:00:15 #319 [verbose] > * voicing: Voicing │
│ 00:00:15 #320 [verbose] > * length: Option<Length> │
│ 00:00:15 #321 [verbose] > | VowelHarmonyFeature │
│ 00:00:15 #322 [verbose] > | PitchAccentFeature │
│ 00:00:15 #323 [verbose] > │
│ 00:00:15 #324 [verbose] > and Stress = Primary | Secondary │
│ 00:00:15 #325 [verbose] > and Length = Long | Short | HalfLong │
│ 00:00:15 #326 [verbose] > │
│ 00:00:15 #327 [verbose] > and Height = │
│ 00:00:15 #328 [verbose] > | High | NearHigh | HighMid │
│ 00:00:15 #329 [verbose] > | Mid | LowMid | NearLow │
│ 00:00:15 #330 [verbose] > | Low │
│ 00:00:15 #331 [verbose] > │
│ 00:00:15 #332 [verbose] > and Backness = Front | Central | Back │
│ 00:00:15 #333 [verbose] > │
│ 00:00:15 #334 [verbose] > and Roundedness = Rounded | Unrounded │
│ 00:00:15 #335 [verbose] > │
│ 00:00:15 #336 [verbose] > and PlaceOfArticulation = │
│ 00:00:15 #337 [verbose] > | Bilabial | Labiodental | Dental │
│ 00:00:15 #338 [verbose] > | Alv... │
│ 00:00:16 #339 [verbose] > │
│ 00:00:16 #340 [verbose] > ── fsharp │
│ ────────────────────────────────────────────────────────────────────── │
│ 00:00:16 #341 [verbose] > let testEnglish = │
│ 00:00:16 #342 [verbose] > Model( │
│ 00:00:16 #343 [verbose] > DiscourseUnit [[ │
│ 00:00:16 #344 [verbose] > LanguageElement (Phonological │
│ (ConsonantFeature (Alveolar, Nasal, │
│ 00:00:16 #345 [verbose] > Voiced, Some(HalfLong)))); │
│ 00:00:16 #346 [verbose] > LanguageElement (Phonological │
│ (VowelFeature (High, Front, Unrounded, │
│ 00:00:16 #347 [verbose] > Some(LevelTone 1), Some(Primary), Some(Short)))); │
│ 00:00:16 #348 [verbose] > LanguageElement (Phonological │
│ (VowelFeature (Low, Front, Unrounded, │
│ 00:00:16 #349 [verbose] > Some(LevelTone 2), Some(Secondary), Some(Long)))); │
│ 00:00:16 #350 [verbose] > LanguageElement (Phonological │
│ (ConsonantFeature (Velar, Plosive, │
│ 00:00:16 #351 [verbose] > Voiceless, Some(HalfLong)))); │
│ 00:00:16 #352 [verbose] > LanguageElement (Morphological │
│ (RootFeature "I")); │
│ 00:00:16 #353 [verbose] > LanguageElement (Morphological │
│ (RootFeature "see")); │
│ 00:00:16 #354 [verbose] > LanguageElement (Morphological │
│ (RootFeature "a")); │
│ 00:00:16 #355 [verbose] > LanguageElement (Morphological │
│ (RootFeature "cat")); │
│ 00:00:16 #356 [verbose] > LanguageElement (Syntactic │
│ (PhraseFeature (NP, [[WordFeature │
│ 00:00:16 #357 [verbose] > ([[RootFeature "I"]], Pronoun)]]))); │
│ 00:00:16 #358 [verbose] > LanguageElement (Syntactic │
│ (PhraseFeature (VP, [[WordFeature │
│ 00:00:16 #359 [verbose] > ([[RootFeature "see"]], Verb)]]))); │
│ 00:00:16 #360 [verbose] > LanguageElement (Syntactic │
│ (PhraseFeature (NP, [[WordFeature │
│ 00:00:16 #361 [verbose] > ([[RootFeature "a"; RootFeature "cat"]], │
│ Noun)]]))); │
│ 00:00:16 #362 [verbose] > LanguageElement (Semantic (Meaning │
│ "Perception act of a feline by │
│ 00:00:16 #363 [verbose] > the speaker")); │
│ 00:00:16 #364 [verbose] > LanguageElement (Pragmatic (UseContext │
│ "Statement of an action being │
│ 00:00:16 #365 [verbose] > observed")) │
│ 00:00:16 #366 [verbose] > ]] │
│ 00:00:16 #367 [verbose] > ) │
│ 00:00:16 #368 [verbose] > │
│ 00:00:16 #369 [verbose] > let testPortuguese = │
│ 00:00:16 #370 [verbose] > Model( │
│ 00:00:16 #371 [verbose] > DiscourseUnit [[ │
│ 00:00:16 #372 [verbose] > LanguageElement (Phonological │
│ (VowelFeature (High, Front, Unrounded, │
│ 00:00:16 #373 [verbose] > Some(LevelTone 1), Some(Primary), Some(Short)))); │
│ 00:00:16 #374 [verbose] > LanguageElement (Phonological │
│ (VowelFeature (Low, Front, Unrounded, │
│ 00:00:16 #375 [verbose] > Some(LevelTone 2), Some(Secondary), Some(Long)))); │
│ 00:00:16 #376 [verbose] > LanguageElement (Phonological │
│ (VowelFeature (Mid, Back, Rounded, │
│ 00:00:16 #377 [verbose] > Some(LevelTone 3), Some(Primary), Some(Short)))); │
│ 00:00:16 #378 [verbose] > LanguageElement (Phonological │
│ (ConsonantFeature (Velar, Plosive, │
│ 00:00:16 #379 [verbose] > Voiceless, Some(HalfLong)))); │
│ 00:00:16 #380 [verbose] > LanguageElement (Morphological │
│ (RootFeature "Eu")); │
│ 00:00:16 #381 [verbose] > LanguageElement (Morphological │
│ (RootFeature "ver" |> ignore; │
│ 00:00:16 #382 [verbose] > AffixFeature (Suffix, "o"))); │
│ 00:00:16 #383 [verbose] > LanguageElement (Morphological │
│ (RootFeature "um")); │
│ 00:00:16 #384 [verbose] > LanguageElement (Morphological │
│ (RootFeature "gato")); │
│ 00:00:16 #385 [verbose] > LanguageElement (Syntactic │
│ (PhraseFeature (NP, [[WordFeature │
│ 00:00:16 #386 [verbose] > ([[RootFeature "Eu"]], Pronoun)]]))); │
│ 00:00:16 #387 [verbose] > LanguageElement (Syntactic │
│ (PhraseFeature (VP, [[WordFeature │
│ 00:00:16 #388 [verbose] > ([[RootFeature "vejo"]], Verb)]]))); │
│ 00:00:16 #389 [verbose] > LanguageElement (Syntactic │
│ (PhraseFeature (NP, [[WordFeature │
│ 00:00:16 #390 [verbose] > ([[RootFeature "um"; RootFeature "gato"]], │
│ Noun)]]))); │
│ 00:00:16 #391 [verbose] > LanguageElement (Semantic (Meaning │
│ "Ação de percepção de um felino │
│ 00:00:16 #392 [verbose] > pelo falante")); │
│ 00:00:16 #393 [verbose] > LanguageElement (Pragmatic (UseContext │
│ "Declaração de uma ação sendo │
│ 00:00:16 #394 [verbose] > observada")) │
│ 00:00:16 #395 [verbose] > ]] │
│ 00:00:16 #396 [verbose] > ) │
│ 00:00:16 #397 [verbose] > │
│ 00:00:16 #398 [verbose] > let testKorean = │
│ 00:00:16 #399 [verbose] > Model( │
│ 00:00:16 #400 [verbose] > DiscourseUnit [[ │
│ 00:00:16 #401 [verbose] > LanguageElement (Phonological │
│ (ConsonantFeature (Alveolar, Nasal, │
│ 00:00:16 #402 [verbose] > Voiced, Some(Short)))); │
│ 00:00:16 #403 [verbose] > LanguageElement (Phonological │
│ (VowelFeature (High, Back, Rounded, │
│ 00:00:16 #404 [verbose] > None, None, Some(Short)))); │
│ 00:00:16 #405 [verbose] > LanguageElement (Phonological │
│ (VowelFeature (Mid, Front, Unrounded, │
│ 00:00:16 #406 [verbose] > None, None, Some(Long)))); │
│ 00:00:16 #407 [verbose] > LanguageElement (Phonological │
│ (ConsonantFeature (Bilabial, Plosive, │
│ 00:00:16 #408 [verbose] > Voiceless, Some(Short)))); │
│ 00:00:16 #409 [verbose] > LanguageElement (Morphological │
│ (RootFeature "나")); │
│ 00:00:16 #410 [verbose] > LanguageElement (Morphological │
│ (RootFeature "보다")); │
│ 00:00:16 #411 [verbose] > LanguageElement (Morphological │
│ (AffixFeature (Suffix, "아"))); │
│ 00:00:16 #412 [verbose] > LanguageElement (Morphological │
│ (RootFeature "고양이")); │
│ 00:00:16 #413 [verbose] > LanguageElement (Syntactic │
│ (PhraseFeature (NP, [[WordFeature │
│ 00:00:16 #414 [verbose] > ([[RootFeature "나"]], Pronoun)]]))); │
│ 00:00:16 #415 [verbose] > LanguageElement (Syntactic │
│ (PhraseFeature (VP, [[WordFeature │
│ 00:00:16 #416 [verbose] > ([[RootFeature "보다"; AffixFeature (Suffix, │
│ "아")]], Verb)]]))); │
│ 00:00:16 #417 [verbose] > LanguageElement (Syntactic │
│ (PhraseFeature (NP, [[WordFeature │
│ 00:00:16 #418 [verbose] > ([[RootFeature "고양이"]], Noun)]]))); │
│ 00:00:16 #419 [verbose] > LanguageElement (Semantic (Meaning │
│ "화자에 의한 고양이의 관찰 │
│ 00:00:16 #420 [verbose] > 행위")); │
│ 00:00:16 #421 [verbose] > LanguageElement (Pragmatic (UseContext │
│ "관찰되고 있는 행동의 진술")) │
│ 00:00:16 #422 [verbose] > ]] │
│ 00:00:16 #423 [verbose] > ) │
│ 00:00:16 #424 [verbose] > │
│ 00:00:16 #425 [verbose] > ── markdown │
│ ──────────────────────────────────────────────────────────────────── │
│ 00:00:16 #426 [verbose] > │
│ ╭─────────────────────────────────────────────────────────────────────────── │
│ ───╮ │
│ 00:00:16 #427 [verbose] > │ ## main │
│ │ │
│ 00:00:16 #428 [verbose] > │
│ ╰─────────────────────────────────────────────────────────────────────────── │
│ ───╯ │
│ 00:00:16 #429 [verbose] > │
│ 00:00:16 #430 [verbose] > ── spiral │
│ ────────────────────────────────────────────────────────────────────── │
│ 00:00:16 #431 [verbose] > inl main (_args : array_base string) = │
│ 00:00:16 #432 [verbose] > 0i32 │
│ 00:00:16 #433 [verbose] > │
│ 00:00:16 #434 [verbose] > inl main () = │
│ 00:00:16 #435 [verbose] > $"let main args = !main args" : () │
│ 00:00:16 #436 [verbose] > Building │
│ c:\home\git\polyglot\target\polyglot\spiral_eval\packages\c48d29976c738797f6 │
│ 0d78b6a562dc599537d1a8d03c8800ac0a97a2fe76010b\main.spi │
│ 00:00:16 #437 [verbose] > │
│ 00:00:16 #438 [verbose] > ╭─[ 276.49ms - stdout │
│ ]────────────────────────────────────────────────────────╮ │
│ 00:00:16 #439 [verbose] > │ let rec closure0 () (v0 : (string [])) : int32 = │
│ │ │
│ 00:00:16 #440 [verbose] > │ 0 │
│ │ │
│ 00:00:16 #441 [verbose] > │ let v0 : ((string []) -> int32) = closure0() │
│ │ │
│ 00:00:16 #442 [verbose] > │ let main args = v0 args │
│ │ │
│ 00:00:16 #443 [verbose] > │ () │
│ │ │
│ 00:00:16 #444 [verbose] > │ │
│ │
│ │ │
│ 00:00:16 #445 [verbose] > │ │
│ │
│ │ │
│ 00:00:16 #446 [verbose] > │
│ ╰─────────────────────────────────────────────────────────────────────────── │
│ ───╯ │
│ 00:00:16 #447 [verbose] > │
│ 00:00:16 #448 [verbose] > ── spiral │
│ ────────────────────────────────────────────────────────────────────── │
│ 00:00:16 #449 [verbose] > inl app () = │
│ 00:00:16 #450 [verbose] > "test" |> console.write_line │
│ 00:00:16 #451 [verbose] > 0i32 │
│ 00:00:16 #452 [verbose] > │
│ 00:00:16 #453 [verbose] > inl main () = │
│ 00:00:16 #454 [verbose] > print_static "<test>" │
│ 00:00:16 #455 [verbose] > │
│ 00:00:16 #456 [verbose] > app │
│ 00:00:16 #457 [verbose] > |> dyn │
│ 00:00:16 #458 [verbose] > |> ignore │
│ 00:00:16 #459 [verbose] > │
│ 00:00:16 #460 [verbose] > print_static "</test>" │
│ 00:00:16 #461 [verbose] > Building │
│ c:\home\git\polyglot\target\polyglot\spiral_eval\packages\f2a26ff16fa94575d7 │
│ a83b8902f448f147da946998ab596089706721c4cc373e\main.spi │
│ 00:00:16 #462 [verbose] > <test> │
│ 00:00:16 #463 [verbose] > </test> │
│ 00:00:16 #464 [verbose] > │
│ 00:00:16 #465 [verbose] > ╭─[ 346.30ms - stdout │
│ ]────────────────────────────────────────────────────────╮ │
│ 00:00:16 #466 [verbose] > │ let rec closure0 () () : int32 = │
│ │ │
│ 00:00:16 #467 [verbose] > │ let v0 : string = "test" │
│ │ │
│ 00:00:16 #468 [verbose] > │ System.Console.WriteLine v0 │
│ │ │
│ 00:00:16 #469 [verbose] > │ 0 │
│ │ │
│ 00:00:16 #470 [verbose] > │ let v0 : (unit -> int32) = closure0() │
│ │ │
│ 00:00:16 #471 [verbose] > │ () │
│ │ │
│ 00:00:16 #472 [verbose] > │ │
│ │
│ │ │
│ 00:00:16 #473 [verbose] > │ │
│ │
│ │ │
│ 00:00:16 #474 [verbose] > │
│ ╰─────────────────────────────────────────────────────────────────────────── │
│ ───╯ │
│ 00:00:18 #475 [verbose] > [NbConvertApp] Converting notebook test.dib.ipynb │
│ to html │
│ 00:00:18 #476 [verbose] > │
│ C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__ │
│ .py:93: MissingIDFieldWarning: Code cell is missing an id field, this will │
│ become a hard error in future nbformat versions. You may want to use │
│ `normalize()` on your notebooks before validations (available since nbformat │
│ 5.1.4). Previous versions of nbformat are fixing this issue transparently, │
│ and will stop doing so in the future. │
│ 00:00:18 #477 [verbose] > validate(nb) │
│ 00:00:19 #478 [verbose] > │
│ C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters │
│ \highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on │
│ Python 3 │
│ 00:00:19 #479 [verbose] > return _pygments_highlight( │
│ 00:00:19 #480 [verbose] > [NbConvertApp] Writing 321504 bytes to │
│ test.dib.html │
│ 00:00:20 #481 [debug] executeAsync / exitCode: 0 / output.Length: 19236 │
│ 00:00:20 #482 [debug] main / executeCommand / exitCode: 0 │
│ 00:00:22 #483 [debug] runWithTimeoutChildAsync / timeout: 2000 │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── pwsh ────────────────────────────────────────────────────────────────────────
{ . ../../../../apps/parser/dist/DibParser$(GetExecutableSuffix) test.dib spi }
| Invoke-Block
╭─[ 572.77ms - stdout ]────────────────────────────────────────────────────────╮
│ 00:00:00 #1 [debug] writeDibCode / output: Spi / path: test.dib │
│ 00:00:00 #2 [debug] parseDibCode / output: Spi / file: test.dib │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── pwsh ────────────────────────────────────────────────────────────────────────
{ . ../../../../apps/spiral/dist/Supervisor$(GetExecutableSuffix) --build-file
test.spi test.fsx --timeout 10000 } | Invoke-Block
╭─[ 7.35s - stdout ]───────────────────────────────────────────────────────────╮
│ 00:00:00 #1 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:00 #2 [debug] executeAsync / options: { Command = │
│ "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral │
│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" --port │
│ 13805 --default-int i32 --default-float f64" │
│ WorkingDirectory = None │
│ CancellationToken = Some System.Threading.CancellationToken │
│ OnLine = Some <fun:main@441-47> } │
│ 00:00:00 #3 [verbose] > pwd: C:\home\git\polyglot\apps\spiral\temp\test │
│ 00:00:00 #4 [verbose] > dllPath: │
│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language │
│ 2\artifacts\bin\The Spiral Language 2\release │
│ 00:00:00 #5 [verbose] > targetDir: │
│ C:\home\git\polyglot\target/polyglot/spiral_eval │
│ 00:00:00 #6 [verbose] > Starting the Spiral Server. It is bound to: │
│ http://localhost:13805 │
│ 00:00:01 #7 [debug] runWithTimeoutChildAsync / timeout: 500 │
│ 00:00:01 #8 [verbose] waitForPortAccess / port: 13805 / retry: 0 │
│ 00:00:01 #9 [debug] sendJson / port: 13805 / json: {"Ping":true} / │
│ result.Length: │
│ 00:00:01 #10 [verbose] awaitCompiler / Ping / result: Some(null) / port: │
│ 13805 / retry: 0 │
│ 00:00:01 #11 [verbose] > Server bound to: http://localhost:13805 │
│ 00:00:01 #12 [debug] runWithTimeoutChildAsync / timeout: 60 │
│ 00:00:01 #13 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:02 #14 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:02 #15 [debug] sendJson / port: 13805 / json: │
│ {"FileOpen":{"spiText":"// // # test (Polyglot)\n\nnominal i = ()\nnominal e │
│ = ()\nnominal s = ()\nnominal n = ()\nnominal t = ()\nnominal f = │
│ ()\nnominal j = ()\nnominal p = ()\n\nunion sensing =\n | Si : s * i\n │
│ | Se : s * e\n\nunion intuition =\n | Ni : n * i\n | Ne : n * │
│ e\n\nunion thinking =\n | Ti : t * i\n | Te : t * e\n\nunion feeling │
│ =\n | Fi : f * i\n | Fe : f * e\n\nunion function_stack =\n | FS : │
│ sensing * intuition * thinking * feeling\n\nunion personality_type =\n | │
│ ISTJ : i * s * t * j * function_stack\n | ISFJ : i * s * f * j * │
│ function_stack\n | INFJ : i * n * f * j * function_stack\n | INTJ : i │
│ * n * t * j * function_stack\n | ISTP : i * s * t * p * function_stack\n │
│ | ISFP : i * s * f * p * function_stack\n | INFP : i * n * f * p * │
│ function_stack\n | INTP : i * n * t * p * function_stack\n | ESTP : e │
│ * s * t * p * function_stack\n | ESFP : e * s * f * p * function_stack\n │
│ | ENFP : e * n * f * p * function_stack\n | ENTP : e * n * t * p * │
│ function_stack\n | ESTJ : e * s * t * j * function_stack\n | ESFJ : e │
│ * s * f * j * function_stack\n | ENFJ : e * n * f * j * function_stack\n │
│ | ENTJ : e * n * t * j * function_stack\n\n\ninl main () =\n inl │
│ istj_stack = FS ((Si (s, i)), Ne (n, e), (Te (t, e)), (Fi (f, i)))\n inl │
│ istj_personality = ISTJ (i, s, t, j, istj_stack)\n // inl isfj_stack = FS │
│ ((Si (s, i)), Ne (n, e), (Fe (f, e)), (Ti (t, i)))\n // inl │
│ isfj_personality = ISFJ (i, s, f, j, isfj_stack)\n\n ;[\n │
│ istj_personality\n ]\n |\u003E fun x =\u003E │
│ $\u0027$\u0022%A{!x}\u0022\u0027 : string\n |\u003E │
│ console.write_line\n\ninl main () =\n $\u0022!main ()\u0022 : ()\n\n// // │
│ ## main\n\ninl main (_args : array_base string) =\n 0i32\n\ninl main () │
│ =\n $\u0022let main args = !main args\u0022 : ()\n\ninl app () =\n │
│ \u0022test\u0022 |\u003E console.write_line\n 0i32\n\ninl main () =\n │
│ print_static \u0022\u003Ctest\u003E\u0022\n\n app\n |\u003E dyn\n │
│ |\u003E ignore\n\n print_static │
│ \u0022\u003C/test\u003E\u0022\n","uri":"file:///c:/home/git/polyglot/apps/sp │
│ iral/temp/test/test.spi"}} / result.Length: │
│ 00:00:02 #16 [debug] sendJson / port: 13805 / json: │
│ {"BuildFile":{"backend":"Fsharp","uri":"file:///c:/home/git/polyglot/apps/sp │
│ iral/temp/test/test.spi"}} / result.Length: │
│ 00:00:02 #17 [verbose] > Building │
│ c:\home\git\polyglot\apps\spiral\temp\test\test.spi │
│ 00:00:03 #18 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:04 #19 [debug] buildFile / takeWhileInclusive / fsxContent: / errors: │
│ [] / typeErrorCount: 0 │
│ 00:00:04 #20 [verbose] > <test> │
│ 00:00:04 #21 [verbose] > </test> │
│ 00:00:04 #22 [debug] buildFile / takeWhileInclusive / fsxContent: let rec │
│ closure0 () () : int32 = │
│ let v0 : string = "test" │
│ System.Console.WriteLine v0 │
│ 0 │
│ let v0 : (unit -> int32) = closure0() │
│ () │
│ / errors: [] / typeErrorCount: 0 │
│ 00:00:04 #23 [debug] watchWithFilter / Disposing watch stream / filter: │
│ FileName, LastWrite │
│ 00:00:06 #24 [debug] runWithTimeoutChildAsync / timeout: 2000 │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── pwsh ────────────────────────────────────────────────────────────────────────
dotnet fable --optimize --lang rs --extension .rs
╭─[ 3.34s - stdout ]───────────────────────────────────────────────────────────╮
│ Fable 4.14.0: F# to Rust compiler (status: alpha) │
│ │
│ Thanks to the contributor! @GordonBGood │
│ Stand with Ukraine! https://standwithukraine.com.ua/ │
│ │
│ Parsing test.fsproj... │
│ Retrieving project options from cache, in case of issues run `dotnet fable │
│ clean` or try `--noCache` option. │
│ Project and references (1 source files) parsed in 169ms │
│ │
│ Started Fable compilation... │
│ │
│ Fable compilation finished in 1498ms │
│ │
│ .\test.fsx(6,0): (6,2) warning FABLE: For Rust, support for F# static and │
│ module do bindings is disabled by default. It can be enabled with the │
│ 'static_do_bindings' feature. Use at your own risk! │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── pwsh ────────────────────────────────────────────────────────────────────────
(Get-Content test.rs) `
-replace [[regex]]::Escape("),);"), "));" `
| Set-Content test.rs
── pwsh ────────────────────────────────────────────────────────────────────────
cargo fmt --
── pwsh ────────────────────────────────────────────────────────────────────────
cargo build --release
╭─[ 7.84s - stdout ]───────────────────────────────────────────────────────────╮
│ Compiling spiral_temp_test v0.0.1 │
│ (C:\home\git\polyglot\apps\spiral\temp\test) │
│ warning: the item `any` is imported redundantly │
│ --> apps\spiral\temp\test\./main.rs:11:27 │
│ | │
│ 11 | use proptest::arbitrary::{any, Arbitrary}; │
│ | ^^^ │
│ 12 | use proptest::prelude::*; │
│ | -------------------- the item `any` is already imported here │
│ | │
│ = note: `#[warn(unused_imports)]` on by default │
│ │
│ warning: the item `Arbitrary` is imported redundantly │
│ --> apps\spiral\temp\test\./main.rs:11:32 │
│ | │
│ 11 | use proptest::arbitrary::{any, Arbitrary}; │
│ | ^^^^^^^^^ │
│ 12 | use proptest::prelude::*; │
│ | -------------------- the item `Arbitrary` is already imported │
│ here │
│ │
│ warning: unused import: `info` │
│ --> apps\spiral\temp\test\./main.rs:190:15 │
│ | │
│ 190 | use tracing::{info, Level}; │
│ | ^^^^ │
│ │
│ warning: associated items `new`, `add_item`, and `remove_item` are │
│ never used │
│ --> apps\spiral\temp\test\./main.rs:46:8 │
│ | │
│ 45 | impl Cart { │
│ | --------- associated items in this implementation │
│ 46 | fn new() -> Cart { │
│ | ^^^ │
│ ... │
│ 50 | fn add_item(&mut self, item: Item) { │
│ | ^^^^^^^^ │
│ ... │
│ 56 | fn remove_item(&mut self, item: &Item) { │
│ | ^^^^^^^^^^^ │
│ | │
│ = note: `#[warn(dead_code)]` on by default │
│ │
│ warning: function `parse_comment` is never used │
│ --> apps\spiral\temp\test\./main.rs:124:4 │
│ | │
│ 124 | fn parse_comment(input: &str) -> IResult<&str, SpiralToken> { │
│ | ^^^^^^^^^^^^^ │
│ │
│ warning: function `parse_string` is never used │
│ --> apps\spiral\temp\test\./main.rs:130:4 │
│ | │
│ 130 | fn parse_string(input: &str) -> IResult<&str, SpiralToken> { │
│ | ^^^^^^^^^^^^ │
│ │
│ warning: function `parse_identifier` is never used │
│ --> apps\spiral\temp\test\./main.rs:145:4 │
│ | │
│ 145 | fn parse_identifier(input: &str) -> IResult<&str, SpiralToken> {[ │
│ 0m │
│ | ^^^^^^^^^^^^^^^^ │
│ │
│ warning: function `parse_integer` is never used │
│ --> apps\spiral\temp\test\./main.rs:157:4 │
│ | │
│ 157 | fn parse_integer(input: &str) -> IResult<&str, SpiralToken> { │
│ | ^^^^^^^^^^^^^ │
│ │
│ warning: function `parse_operator` is never used │
│ --> apps\spiral\temp\test\./main.rs:165:4 │
│ | │
│ 165 | fn parse_operator(input: &str) -> IResult<&str, SpiralToken> { │
│ | ^^^^^^^^^^^^^^ │
│ │
│ warning: function `parse_token` is never used │
│ --> apps\spiral\temp\test\./main.rs:170:4 │
│ | │
│ 170 | fn parse_token(input: &str) -> IResult<&str, SpiralToken> { │
│ | ^^^^^^^^^^^ │
│ │
│ warning: function `format_token` is never used │
│ --> apps\spiral\temp\test\./main.rs:180:4 │
│ | │
│ 180 | fn format_token(token: &SpiralToken) -> String { │
│ | ^^^^^^^^^^^^ │
│ │
│ warning: function `parse_expression` is never used │
│ --> apps\spiral\temp\test\./main.rs:213:4 │
│ | │
│ 213 | fn parse_expression(input: &str) -> IResult<&str, SpiralToken> {[ │
│ 0m │
│ | ^^^^^^^^^^^^^^^^ │
│ │
│ warning: `spiral_temp_test` (bin "spiral_temp_test") generated 12 │
│ warnings (run `cargo fix --bin "spiral_temp_test"` to apply 1 suggestion) │
│ Finished `release` profile [optimized] target(s) in 7.61s │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── pwsh ────────────────────────────────────────────────────────────────────────
$env:RUST_LOG="info"
{ cargo test --release } | Invoke-Block
╭─[ 22.96s - stdout ]──────────────────────────────────────────────────────────╮
│ Compiling spiral_temp_test v0.0.1 │
│ (C:\home\git\polyglot\apps\spiral\temp\test) │
│ warning: the item `any` is imported redundantly │
│ --> apps\spiral\temp\test\./main.rs:11:27 │
│ | │
│ 11 | use proptest::arbitrary::{any, Arbitrary}; │
│ | ^^^ │
│ 12 | use proptest::prelude::*; │
│ | -------------------- the item `any` is already imported here │
│ | │
│ = note: `#[warn(unused_imports)]` on by default │
│ │
│ warning: the item `Arbitrary` is imported redundantly │
│ --> apps\spiral\temp\test\./main.rs:11:32 │
│ | │
│ 11 | use proptest::arbitrary::{any, Arbitrary}; │
│ | ^^^^^^^^^ │
│ 12 | use proptest::prelude::*; │
│ | -------------------- the item `Arbitrary` is already imported │
│ here │
│ │
│ warning: `spiral_temp_test` (bin "spiral_temp_test" test) generated 2 │
│ warnings │
│ Finished `release` profile [optimized] target(s) in 22.48s │
│ Running unittests main.rs │
│ (C:\home\git\polyglot\target\release\deps\spiral_temp_test-158aaeb333edb33d. │
│ exe) │
│ │
│ running 3 tests │
│ test test_parse_number ... ok │
│ 2024-04-10T23:23:05.793928Z INFO spiral_temp_test: │
│ input=Comment("~8(`^'[IKX8") │
│ 2024-04-10T23:23:05.794065Z INFO spiral_temp_test: │
│ input=StringLiteral("c:k$D$M0og;%`f={%") │
│ 2024-04-10T23:23:05.794163Z INFO spiral_temp_test: │
│ input=Operator("-") │
│ 2024-04-10T23:23:05.794244Z INFO spiral_temp_test: │
│ input=Identifier("bGNko5zg4aQOv1dUn67R8K8LrxRN2") │
│ 2024-04-10T23:23:05.794315Z INFO spiral_temp_test: │
│ input=Identifier("QPwpYjb5g1J8n1VS1iRkmCLU8kKhlKPQ") │
│ 2024-04-10T23:23:05.794365Z INFO spiral_temp_test: │
│ input=Operator("=") │
│ 2024-04-10T23:23:05.794397Z INFO spiral_temp_test: │
│ input=Integer(-5567791731102726263) │
│ 2024-04-10T23:23:05.794468Z INFO spiral_temp_test: │
│ input=Identifier("uwcoJLlvN8kx7AmZvOF8yt5La") │
│ 2024-04-10T23:23:05.794573Z INFO spiral_temp_test: │
│ input=Comment("`?:&$'Dy.xZ1%{.Kjn{*?s") │
│ 2024-04-10T23:23:05.794622Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.794655Z INFO spiral_temp_test: │
│ input=Integer(8378729899281844663) │
│ 2024-04-10T23:23:05.794694Z INFO spiral_temp_test: │
│ input=Identifier("Qv9Y718r0Y") │
│ 2024-04-10T23:23:05.794754Z INFO spiral_temp_test: │
│ input=Comment("a\\-'~x*w'K9Wv>\"\\Vzu=1h(HF8`~") │
│ 2024-04-10T23:23:05.794817Z INFO spiral_temp_test: │
│ input=Comment("/)$0Qvus6Ki") │
│ 2024-04-10T23:23:05.794874Z INFO spiral_temp_test: │
│ input=Comment("&") │
│ 2024-04-10T23:23:05.794954Z INFO spiral_temp_test: │
│ input=Operator(")") │
│ 2024-04-10T23:23:05.795041Z INFO spiral_temp_test: │
│ input=StringLiteral("'gCe/'<*&FL`m") │
│ 2024-04-10T23:23:05.795210Z INFO spiral_temp_test: │
│ input=Operator(")") │
│ 2024-04-10T23:23:05.795280Z INFO spiral_temp_test: │
│ input=Comment("`\"Z\"2XLTy'^K/A$??p3/HI>S/%<d{.") │
│ 2024-04-10T23:23:05.795316Z INFO spiral_temp_test: │
│ input=StringLiteral("<Kv@{yL&'!") │
│ 2024-04-10T23:23:05.795344Z INFO spiral_temp_test: │
│ input=StringLiteral("?=b") │
│ 2024-04-10T23:23:05.795365Z INFO spiral_temp_test: │
│ input=StringLiteral("N") │
│ 2024-04-10T23:23:05.795411Z INFO spiral_temp_test: │
│ input=Comment("\"j\"z9.$hhDL?#h") │
│ 2024-04-10T23:23:05.795456Z INFO spiral_temp_test: │
│ input=Identifier("qra549U3G7Qru8Fr") │
│ 2024-04-10T23:23:05.795484Z INFO spiral_temp_test: │
│ input=Identifier("QcbLwAq8V2I51") │
│ 2024-04-10T23:23:05.795508Z INFO spiral_temp_test: │
│ input=Operator("*") │
│ 2024-04-10T23:23:05.795541Z INFO spiral_temp_test: │
│ input=Operator("(") │
│ 2024-04-10T23:23:05.795563Z INFO spiral_temp_test: │
│ input=Integer(-7104132177742137654) │
│ 2024-04-10T23:23:05.795583Z INFO spiral_temp_test: │
│ input=Integer(1714681075120659075) │
│ 2024-04-10T23:23:05.795618Z INFO spiral_temp_test: │
│ input=Operator("*") │
│ 2024-04-10T23:23:05.795674Z INFO spiral_temp_test: │
│ input=StringLiteral("'?myF'.G;'v=@`*5") │
│ 2024-04-10T23:23:05.795707Z INFO spiral_temp_test: │
│ input=Integer(-3854514450227141845) │
│ 2024-04-10T23:23:05.795730Z INFO spiral_temp_test: │
│ input=StringLiteral("/Hk") │
│ 2024-04-10T23:23:05.795781Z INFO spiral_temp_test: │
│ input=StringLiteral("+u/<$^&w.QoG$@D7/ctJ5@~%^1X[") │
│ 2024-04-10T23:23:05.795848Z INFO spiral_temp_test: │
│ input=Comment("`fYe!t'QnuMapx%H=a_ YRx{<*_") │
│ 2024-04-10T23:23:05.795915Z INFO spiral_temp_test: │
│ input=Identifier("EzRQJPOuzHp1Dmir0EzM4") │
│ 2024-04-10T23:23:05.795983Z INFO spiral_temp_test: │
│ input=Comment("1%z.%9]pS:KX<=k.`=*\"i:c D") │
│ 2024-04-10T23:23:05.796041Z INFO spiral_temp_test: │
│ input=StringLiteral("-<Z<bD[5/_6Bc_") │
│ 2024-04-10T23:23:05.796095Z INFO spiral_temp_test: │
│ input=Operator("(") │
│ 2024-04-10T23:23:05.796137Z INFO spiral_temp_test: │
│ input=Integer(350189352049609028) │
│ 2024-04-10T23:23:05.796194Z INFO spiral_temp_test: │
│ input=Identifier("L9k7L7yCsvE1tQ6WUq3dG1") │
│ 2024-04-10T23:23:05.796258Z INFO spiral_temp_test: │
│ input=StringLiteral("QA7&E@/<$FD@%lWXbS") │
│ 2024-04-10T23:23:05.796330Z INFO spiral_temp_test: │
│ input=StringLiteral("`r)8e#<t[:[{`n?xGBH|y6%zUsI") │
│ 2024-04-10T23:23:05.796382Z INFO spiral_temp_test: │
│ input=Operator("(") │
│ 2024-04-10T23:23:05.796424Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.796468Z INFO spiral_temp_test: │
│ input=Comment(" b") │
│ 2024-04-10T23:23:05.796545Z INFO spiral_temp_test: │
│ input=StringLiteral("Y=}&bt5t#f@2bt#e)<jMT+e") │
│ 2024-04-10T23:23:05.796596Z INFO spiral_temp_test: │
│ input=Operator(")") │
│ 2024-04-10T23:23:05.796645Z INFO spiral_temp_test: │
│ input=Operator("*") │
│ 2024-04-10T23:23:05.796696Z INFO spiral_temp_test: │
│ input=Comment("%") │
│ 2024-04-10T23:23:05.796757Z INFO spiral_temp_test: │
│ input=StringLiteral("',=/iu%ik`~fmeq`p;/KkA0P") │
│ 2024-04-10T23:23:05.796916Z INFO spiral_temp_test: │
│ input=Comment("?a*s.#'=+\"j%+%DJT2") │
│ 2024-04-10T23:23:05.797015Z INFO spiral_temp_test: │
│ input=Identifier("xu1KCO5f1gnjhFFyFUs1Ith8c8k801") │
│ 2024-04-10T23:23:05.797057Z INFO spiral_temp_test: │
│ input=Integer(-3488576514277863883) │
│ 2024-04-10T23:23:05.797103Z INFO spiral_temp_test: │
│ input=StringLiteral("_y[=k:Iy?<_") │
│ 2024-04-10T23:23:05.797142Z INFO spiral_temp_test: │
│ input=Operator("=") │
│ 2024-04-10T23:23:05.797171Z INFO spiral_temp_test: │
│ input=Integer(2252262687689843913) │
│ 2024-04-10T23:23:05.797237Z INFO spiral_temp_test: │
│ input=StringLiteral("W3%w#6o'S=/kV1}2$!f<=&@E4k YS!") │
│ 2024-04-10T23:23:05.797294Z INFO spiral_temp_test: │
│ input=Comment("{t=1={E@~K[w\"m=d\\;]wu??TUNWb") │
│ 2024-04-10T23:23:05.797354Z INFO spiral_temp_test: │
│ input=StringLiteral("'so<=;H:R~;6bryv:a9qQRQ$3=$83") │
│ 2024-04-10T23:23:05.797407Z INFO spiral_temp_test: │
│ input=Identifier("gbtp517kPcUnMobKfvF") │
│ 2024-04-10T23:23:05.797440Z INFO spiral_temp_test: │
│ input=Integer(-841422698346994226) │
│ 2024-04-10T23:23:05.797489Z INFO spiral_temp_test: │
│ input=StringLiteral("WG*/$9+`{kJy&k") │
│ 2024-04-10T23:23:05.797527Z INFO spiral_temp_test: │
│ input=StringLiteral("") │
│ 2024-04-10T23:23:05.797559Z INFO spiral_temp_test: │
│ input=Operator("(") │
│ 2024-04-10T23:23:05.797596Z INFO spiral_temp_test: │
│ input=StringLiteral("B") │
│ 2024-04-10T23:23:05.797632Z INFO spiral_temp_test: │
│ input=Integer(5741325061808152883) │
│ 2024-04-10T23:23:05.797683Z INFO spiral_temp_test: │
│ input=Comment("w[E'1!*ITK4@qu<?c`@+=:") │
│ 2024-04-10T23:23:05.797725Z INFO spiral_temp_test: │
│ input=Integer(-5834202605653168167) │
│ 2024-04-10T23:23:05.797772Z INFO spiral_temp_test: │
│ input=Identifier("QyWrH7090P2T8s1TrL8m") │
│ 2024-04-10T23:23:05.797827Z INFO spiral_temp_test: │
│ input=StringLiteral("..w|8_=i6$No%2gA=k") │
│ 2024-04-10T23:23:05.797896Z INFO spiral_temp_test: │
│ input=StringLiteral("*_.P{QJ5^%SnvtO0}8H") │
│ 2024-04-10T23:23:05.797931Z INFO spiral_temp_test: │
│ input=Integer(8814300731503564955) │
│ 2024-04-10T23:23:05.798061Z INFO spiral_temp_test: │
│ input=Identifier("pJ0cz4FVAxx47XQd4W0b724vdUfoA9k") │
│ 2024-04-10T23:23:05.798117Z INFO spiral_temp_test: │
│ input=Integer(8940763750168605830) │
│ 2024-04-10T23:23:05.798164Z INFO spiral_temp_test: │
│ input=Operator("=") │
│ 2024-04-10T23:23:05.798210Z INFO spiral_temp_test: │
│ input=Identifier("rr5xVo8kbhrGlKI4DiQorqM3G6v3t") │
│ 2024-04-10T23:23:05.798263Z INFO spiral_temp_test: │
│ input=StringLiteral("mC^oDM1s'.%CXW%J{0b:8") │
│ 2024-04-10T23:23:05.798305Z INFO spiral_temp_test: │
│ input=Integer(6569458974585934702) │
│ 2024-04-10T23:23:05.798351Z INFO spiral_temp_test: │
│ input=StringLiteral("e/;K=9WH'*=fp0/#%2G&") │
│ 2024-04-10T23:23:05.798385Z INFO spiral_temp_test: │
│ input=Integer(267138762675309619) │
│ 2024-04-10T23:23:05.798411Z INFO spiral_temp_test: │
│ input=Integer(-6705616769097909684) │
│ 2024-04-10T23:23:05.798472Z INFO spiral_temp_test: │
│ input=StringLiteral("PkNx/,%/}'wW%Q~b?^z0Iwre`") │
│ 2024-04-10T23:23:05.798538Z INFO spiral_temp_test: │
│ input=Comment("xI\"S?0g<_'=LDJ:") │
│ 2024-04-10T23:23:05.798575Z INFO spiral_temp_test: │
│ input=Integer(-5764006657039619458) │
│ 2024-04-10T23:23:05.798606Z INFO spiral_temp_test: │
│ input=Operator(")") │
│ 2024-04-10T23:23:05.798655Z INFO spiral_temp_test: │
│ input=StringLiteral("kB7a&bd&%*+.G<*ziO<O") │
│ 2024-04-10T23:23:05.798713Z INFO spiral_temp_test: │
│ input=StringLiteral("H4_+x4+:X=_UHZn/)0.u[-/$") │
│ 2024-04-10T23:23:05.798785Z INFO spiral_temp_test: │
│ input=Identifier("A5iptni64zTd02lX2D7d") │
│ 2024-04-10T23:23:05.798834Z INFO spiral_temp_test: │
│ input=Identifier("cM23B99bQXwf2Nn60Yg13Ge") │
│ 2024-04-10T23:23:05.798879Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.798905Z INFO spiral_temp_test: │
│ input=Integer(-178359449289372248) │
│ 2024-04-10T23:23:05.798952Z INFO spiral_temp_test: │
│ input=Identifier("I4VyCC07WGno99BofOq552zCQCh") │
│ 2024-04-10T23:23:05.799007Z INFO spiral_temp_test: │
│ input=StringLiteral("8?;,-jv?<B<V{$CZM `mU*") │
│ 2024-04-10T23:23:05.799041Z INFO spiral_temp_test: │
│ input=Integer(2965707074495514204) │
│ 2024-04-10T23:23:05.799071Z INFO spiral_temp_test: │
│ input=Operator("-") │
│ 2024-04-10T23:23:05.799121Z INFO spiral_temp_test: │
│ input=StringLiteral("//S.+&xS.:gt]BG+z:OY]C:ZjVfy") │
│ 2024-04-10T23:23:05.799177Z INFO spiral_temp_test: │
│ input=Identifier("G7764jjHPRYxyOB3u") │
│ 2024-04-10T23:23:05.799237Z INFO spiral_temp_test: │
│ input=Comment("%zvnL&B\"X.`/{9=:Urz[&_ #C?.1N") │
│ 2024-04-10T23:23:05.799276Z INFO spiral_temp_test: │
│ input=Integer(1989333674824824858) │
│ 2024-04-10T23:23:05.799323Z INFO spiral_temp_test: │
│ input=Comment("jB*q\\lj-dF\"#\\CvXS%<Tt9:") │
│ 2024-04-10T23:23:05.799386Z INFO spiral_temp_test: │
│ input=Comment("Rd^~0r`?o/h=/FW@") │
│ 2024-04-10T23:23:05.799461Z INFO spiral_temp_test: │
│ input=StringLiteral("[5t.H&FI[") │
│ 2024-04-10T23:23:05.799535Z INFO spiral_temp_test: │
│ input=Operator("(") │
│ 2024-04-10T23:23:05.799769Z INFO spiral_temp_test: │
│ input=Integer(2649599380889862600) │
│ 2024-04-10T23:23:05.799825Z INFO spiral_temp_test: │
│ input=Integer(-2286546122913536145) │
│ 2024-04-10T23:23:05.799848Z INFO spiral_temp_test: │
│ input=Integer(-6608584929605455163) │
│ 2024-04-10T23:23:05.799912Z INFO spiral_temp_test: │
│ input=Comment("6< 5<") │
│ 2024-04-10T23:23:05.799951Z INFO spiral_temp_test: │
│ input=Identifier("VngTlfZQgL") │
│ 2024-04-10T23:23:05.799987Z INFO spiral_temp_test: │
│ input=Operator("-") │
│ 2024-04-10T23:23:05.800048Z INFO spiral_temp_test: │
│ input=Comment("F-GT?\"N))<%\"^?B7K\"") │
│ 2024-04-10T23:23:05.800107Z INFO spiral_temp_test: │
│ input=StringLiteral("X$") │
│ 2024-04-10T23:23:05.800171Z INFO spiral_temp_test: │
│ input=Operator("(") │
│ 2024-04-10T23:23:05.800220Z INFO spiral_temp_test: │
│ input=Comment(">*B=") │
│ 2024-04-10T23:23:05.800280Z INFO spiral_temp_test: │
│ input=Comment("'<s$\"\\7<KK$*H_\"$?") │
│ 2024-04-10T23:23:05.800343Z INFO spiral_temp_test: │
│ input=Comment("H?0{B+0M!\"\\jv|") │
│ 2024-04-10T23:23:05.800391Z INFO spiral_temp_test: │
│ input=Comment("?n&{?UC") │
│ 2024-04-10T23:23:05.800434Z INFO spiral_temp_test: │
│ input=Integer(-5361864260863060569) │
│ 2024-04-10T23:23:05.800480Z INFO spiral_temp_test: │
│ input=Operator("*") │
│ 2024-04-10T23:23:05.800532Z INFO spiral_temp_test: │
│ input=Integer(-6436944454399791660) │
│ 2024-04-10T23:23:05.800574Z INFO spiral_temp_test: │
│ input=Comment("61.^[}{epkM$$za") │
│ 2024-04-10T23:23:05.800622Z INFO spiral_temp_test: │
│ input=Integer(-4148794587667127388) │
│ 2024-04-10T23:23:05.800685Z INFO spiral_temp_test: │
│ input=StringLiteral("]Hl0_~@%+`9%.= 1^") │
│ 2024-04-10T23:23:05.800730Z INFO spiral_temp_test: │
│ input=StringLiteral("") │
│ 2024-04-10T23:23:05.800775Z INFO spiral_temp_test: │
│ input=Operator("*") │
│ 2024-04-10T23:23:05.800817Z INFO spiral_temp_test: │
│ input=Integer(-7302181771577570097) │
│ 2024-04-10T23:23:05.800861Z INFO spiral_temp_test: │
│ input=Integer(-6852769743552412715) │
│ 2024-04-10T23:23:05.800902Z INFO spiral_temp_test: │
│ input=Identifier("we99BlFhlLEMC4gA5R7S810JdtuY") │
│ 2024-04-10T23:23:05.800986Z INFO spiral_temp_test: │
│ input=Operator("=") │
│ 2024-04-10T23:23:05.801165Z INFO spiral_temp_test: │
│ input=Comment("(ICe<.%{$.wN/I}*(Nv\\/,J") │
│ 2024-04-10T23:23:05.801215Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.801248Z INFO spiral_temp_test: │
│ input=Integer(1036347739737206415) │
│ 2024-04-10T23:23:05.801300Z INFO spiral_temp_test: │
│ input=Identifier("HlZio1Z8mn0rwgVAFiz") │
│ 2024-04-10T23:23:05.801351Z INFO spiral_temp_test: │
│ input=StringLiteral("`:|+39.[?)8F.") │
│ 2024-04-10T23:23:05.801391Z INFO spiral_temp_test: │
│ input=Integer(813317676764720671) │
│ 2024-04-10T23:23:05.801428Z INFO spiral_temp_test: │
│ input=Identifier("bumAQL42") │
│ 2024-04-10T23:23:05.801488Z INFO spiral_temp_test: │
│ input=Comment("Ea\\%`Y#S?lF<?fgw/5:`L%\\$$?r`W") │
│ 2024-04-10T23:23:05.801557Z INFO spiral_temp_test: │
│ input=Comment("*$rC&)*{QGR&<Z%ViSL;:E{:/") │
│ 2024-04-10T23:23:05.801598Z INFO spiral_temp_test: │
│ input=Integer(-7054370587347559273) │
│ 2024-04-10T23:23:05.801645Z INFO spiral_temp_test: │
│ input=Comment("_/QiNv*$BtGLN4") │
│ 2024-04-10T23:23:05.801699Z INFO spiral_temp_test: │
│ input=Comment("j{\\|[{p`_s>/&&D<*") │
│ 2024-04-10T23:23:05.801738Z INFO spiral_temp_test: │
│ input=Integer(8006019665976003133) │
│ 2024-04-10T23:23:05.801770Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.801809Z INFO spiral_temp_test: │
│ input=Operator("/") │
│ 2024-04-10T23:23:05.801840Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.801876Z INFO spiral_temp_test: │
│ input=Operator("*") │
│ 2024-04-10T23:23:05.801912Z INFO spiral_temp_test: │
│ input=Identifier("Ln2") │
│ 2024-04-10T23:23:05.801949Z INFO spiral_temp_test: │
│ input=StringLiteral("") │
│ 2024-04-10T23:23:05.801981Z INFO spiral_temp_test: │
│ input=Operator("-") │
│ 2024-04-10T23:23:05.802032Z INFO spiral_temp_test: │
│ input=StringLiteral("A/Z2") │
│ 2024-04-10T23:23:05.802226Z INFO spiral_temp_test: │
│ input=Comment("r$<Ni\"*}{/I`\\*B'=<l.qIbJ\"gp:\\&-y") │
│ 2024-04-10T23:23:05.802292Z INFO spiral_temp_test: │
│ input=Comment("Y =Z\\\\\\>JIhA") │
│ 2024-04-10T23:23:05.802320Z INFO spiral_temp_test: │
│ input=Comment("/o") │
│ 2024-04-10T23:23:05.802340Z INFO spiral_temp_test: │
│ input=Integer(4345206841155215605) │
│ 2024-04-10T23:23:05.802362Z INFO spiral_temp_test: │
│ input=Operator("(") │
│ 2024-04-10T23:23:05.802384Z INFO spiral_temp_test: │
│ input=Identifier("QH30siJ") │
│ 2024-04-10T23:23:05.802402Z INFO spiral_temp_test: │
│ input=Integer(5032073900817108399) │
│ 2024-04-10T23:23:05.802436Z INFO spiral_temp_test: │
│ input=StringLiteral("[,;;*L:%S`9>>'*q/&y") │
│ 2024-04-10T23:23:05.802464Z INFO spiral_temp_test: │
│ input=Comment("EuqQ`R<F?:|8<4&") │
│ 2024-04-10T23:23:05.802488Z INFO spiral_temp_test: │
│ input=Integer(-345375867460590265) │
│ 2024-04-10T23:23:05.802507Z INFO spiral_temp_test: │
│ input=Operator("*") │
│ 2024-04-10T23:23:05.802532Z INFO spiral_temp_test: │
│ input=StringLiteral("/=mlz*y.n<<{'&") │
│ 2024-04-10T23:23:05.802572Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.802630Z INFO spiral_temp_test: │
│ input=StringLiteral("&PoIrO+%d:? UPM*'s*Y'oDmI+") │
│ 2024-04-10T23:23:05.802694Z INFO spiral_temp_test: │
│ input=Identifier("KzKM7hac23A5EW6Db1HlhzYw") │
│ 2024-04-10T23:23:05.802742Z INFO spiral_temp_test: │
│ input=Operator("(") │
│ 2024-04-10T23:23:05.802822Z INFO spiral_temp_test: │
│ input=Identifier("RbwvM6Jtuf636o5Pm896W5T5NU76Rb") │
│ 2024-04-10T23:23:05.802871Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.802927Z INFO spiral_temp_test: │
│ input=StringLiteral("$:B@6;5vZsQ") │
│ 2024-04-10T23:23:05.802976Z INFO spiral_temp_test: │
│ input=Operator("/") │
│ 2024-04-10T23:23:05.803001Z INFO spiral_temp_test: │
│ input=Operator("/") │
│ 2024-04-10T23:23:05.803020Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.803053Z INFO spiral_temp_test: │
│ input=Operator("=") │
│ 2024-04-10T23:23:05.803109Z INFO spiral_temp_test: │
│ input=StringLiteral("&.{*%:<ww%({$|kvrG nIj~{Ll3/") │
│ 2024-04-10T23:23:05.803199Z INFO spiral_temp_test: │
│ input=Identifier("yITHos43fKdWXZ06Cf5sEk1R6oVlUZa") │
│ 2024-04-10T23:23:05.803264Z INFO spiral_temp_test: │
│ input=Identifier("pB424F8QRxi6e1NJ39Ra0cqUih88z") │
│ 2024-04-10T23:23:05.803320Z INFO spiral_temp_test: │
│ input=Operator("-") │
│ 2024-04-10T23:23:05.803380Z INFO spiral_temp_test: │
│ input=Identifier("a4Wk71Q") │
│ 2024-04-10T23:23:05.803444Z INFO spiral_temp_test: │
│ input=StringLiteral("/*e.88k$S^CS2A=B`s_E:t&Y*&N") │
│ 2024-04-10T23:23:05.803587Z INFO spiral_temp_test: │
│ input=Identifier("cHrbjkDbyAfApbA6Mq4BM3KqV") │
│ 2024-04-10T23:23:05.803719Z INFO spiral_temp_test: │
│ input=Operator("*") │
│ 2024-04-10T23:23:05.803813Z INFO spiral_temp_test: │
│ input=Identifier("A2xDMfS") │
│ 2024-04-10T23:23:05.803851Z INFO spiral_temp_test: │
│ input=Identifier("OHlLK2EwR") │
│ 2024-04-10T23:23:05.803913Z INFO spiral_temp_test: │
│ input=Comment("?>8@i$!=!-g.zR!\"$YMk`%@h$\"") │
│ 2024-04-10T23:23:05.803941Z INFO spiral_temp_test: │
│ input=Integer(5949457271384839865) │
│ 2024-04-10T23:23:05.803977Z INFO spiral_temp_test: │
│ input=Identifier("ceScVGLYlMkdO8lVr9IU94V8lJDKd7ml") │
│ 2024-04-10T23:23:05.804004Z INFO spiral_temp_test: │
│ input=Operator("-") │
│ 2024-04-10T23:23:05.804025Z INFO spiral_temp_test: │
│ input=Identifier("rbG9E") │
│ 2024-04-10T23:23:05.804047Z INFO spiral_temp_test: │
│ input=Identifier("L5MWj5Zn") │
│ 2024-04-10T23:23:05.804075Z INFO spiral_temp_test: │
│ input=Integer(3559289289793373929) │
│ 2024-04-10T23:23:05.804118Z INFO spiral_temp_test: │
│ input=Operator("(") │
│ 2024-04-10T23:23:05.804161Z INFO spiral_temp_test: │
│ input=Identifier("MUe") │
│ 2024-04-10T23:23:05.804191Z INFO spiral_temp_test: │
│ input=Identifier("XYbkLW49lz") │
│ 2024-04-10T23:23:05.804220Z INFO spiral_temp_test: │
│ input=Comment("':F*}RY75") │
│ 2024-04-10T23:23:05.804245Z INFO spiral_temp_test: │
│ input=Identifier("bc65sw04") │
│ 2024-04-10T23:23:05.804276Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.804314Z INFO spiral_temp_test: │
│ input=Operator("*") │
│ 2024-04-10T23:23:05.804347Z INFO spiral_temp_test: │
│ input=Integer(-409861770207298934) │
│ 2024-04-10T23:23:05.804392Z INFO spiral_temp_test: │
│ input=StringLiteral("fP8I8T=KF;KkLBn~3}*}JC/d") │
│ 2024-04-10T23:23:05.804420Z INFO spiral_temp_test: │
│ input=Operator(")") │
│ 2024-04-10T23:23:05.804446Z INFO spiral_temp_test: │
│ input=StringLiteral("<`Gg&I93z|+]") │
│ 2024-04-10T23:23:05.804478Z INFO spiral_temp_test: │
│ input=Comment(":*$w\\'vG3H<&Vpx!Vps=nD") │
│ 2024-04-10T23:23:05.804536Z INFO spiral_temp_test: │
│ input=StringLiteral("a`R Y$o'}oTy&'u") │
│ 2024-04-10T23:23:05.804578Z INFO spiral_temp_test: │
│ input=Integer(-2390874268673270417) │
│ 2024-04-10T23:23:05.804617Z INFO spiral_temp_test: │
│ input=Integer(1426726708831120880) │
│ 2024-04-10T23:23:05.804684Z INFO spiral_temp_test: │
│ input=Comment("<,\":Y{.x{xxri<{=5*_*\\<\"1G*") │
│ 2024-04-10T23:23:05.804737Z INFO spiral_temp_test: │
│ input=Operator(")") │
│ 2024-04-10T23:23:05.804810Z INFO spiral_temp_test: │
│ input=StringLiteral("XnGZ[o.Ni={X`Iho7:`=g`lO$PJ5l") │
│ 2024-04-10T23:23:05.804913Z INFO spiral_temp_test: │
│ input=StringLiteral("gH<d,L.") │
│ 2024-04-10T23:23:05.804972Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.805018Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.805096Z INFO spiral_temp_test: │
│ input=StringLiteral("D%n`07x-'f7t=9E'fl|vIU;oa.V") │
│ 2024-04-10T23:23:05.805149Z INFO spiral_temp_test: │
│ input=Comment("I") │
│ 2024-04-10T23:23:05.805202Z INFO spiral_temp_test: │
│ input=Comment("@b'") │
│ 2024-04-10T23:23:05.805267Z INFO spiral_temp_test: │
│ input=Identifier("iHuwsColBI0S85") │
│ 2024-04-10T23:23:05.805312Z INFO spiral_temp_test: │
│ input=Operator("*") │
│ 2024-04-10T23:23:05.805382Z INFO spiral_temp_test: │
│ input=Operator("/") │
│ 2024-04-10T23:23:05.805454Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.805645Z INFO spiral_temp_test: │
│ input=Comment("$L") │
│ 2024-04-10T23:23:05.805728Z INFO spiral_temp_test: │
│ input=Comment("") │
│ 2024-04-10T23:23:05.805781Z INFO spiral_temp_test: │
│ input=StringLiteral("W") │
│ 2024-04-10T23:23:05.805830Z INFO spiral_temp_test: │
│ input=Operator("-") │
│ 2024-04-10T23:23:05.805873Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.805899Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.805925Z INFO spiral_temp_test: │
│ input=Identifier("urIoC4B78") │
│ 2024-04-10T23:23:05.805949Z INFO spiral_temp_test: │
│ input=Operator(")") │
│ 2024-04-10T23:23:05.805970Z INFO spiral_temp_test: │
│ input=Identifier("f5") │
│ 2024-04-10T23:23:05.805993Z INFO spiral_temp_test: │
│ input=Identifier("TPPIMqi") │
│ 2024-04-10T23:23:05.806014Z INFO spiral_temp_test: │
│ input=Integer(-5807054912584456001) │
│ 2024-04-10T23:23:05.806051Z INFO spiral_temp_test: │
│ input=StringLiteral("Rx{J./uXb'&;iH(.{&$Qp<YGvV") │
│ 2024-04-10T23:23:05.806123Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.806197Z INFO spiral_temp_test: │
│ input=Comment("9p`&T{>*:(kpu@0Stqw") │
│ 2024-04-10T23:23:05.806268Z INFO spiral_temp_test: │
│ input=StringLiteral("1U/IMs$qx5%$nu$L%.CXjf") │
│ 2024-04-10T23:23:05.806310Z INFO spiral_temp_test: │
│ input=Integer(-1755247708008206785) │
│ 2024-04-10T23:23:05.806350Z INFO spiral_temp_test: │
│ input=Operator("=") │
│ 2024-04-10T23:23:05.806400Z INFO spiral_temp_test: │
│ input=StringLiteral("|? $z97|.'xv%>.iQaI{&3(<") │
│ 2024-04-10T23:23:05.806437Z INFO spiral_temp_test: │
│ input=Identifier("pjUOe1m9xDXjZWP2l2xY53z2") │
│ 2024-04-10T23:23:05.806472Z INFO spiral_temp_test: │
│ input=StringLiteral("?/CiykIrOpo/.$q=.") │
│ 2024-04-10T23:23:05.806509Z INFO spiral_temp_test: │
│ input=Identifier("RlT9E5CyBVG7pju9RY3C") │
│ 2024-04-10T23:23:05.806532Z INFO spiral_temp_test: │
│ input=Operator("+") │
│ 2024-04-10T23:23:05.806551Z INFO spiral_temp_test: │
│ input=Integer(501324632173023038) │
│ 2024-04-10T23:23:05.806572Z INFO spiral_temp_test: │
│ input=Operator("*") │
│ 2024-04-10T23:23:05.806591Z INFO spiral_temp_test: │
│ input=Integer(2184835369396894541) │
│ 2024-04-10T23:23:05.806705Z INFO spiral_temp_test: │
│ input=StringLiteral("{UsF'o721GX&$b:.`'NEk") │
│ 2024-04-10T23:23:05.806754Z INFO spiral_temp_test: │
│ input=StringLiteral("#") │
│ 2024-04-10T23:23:05.806798Z INFO spiral_temp_test: │
│ input=Comment("j@y/'5}/{=%'<\"y(pHI_?") │
│ 2024-04-10T23:23:05.806830Z INFO spiral_temp_test: │
│ input=Identifier("yaMiC7JucAmdm") │
│ 2024-04-10T23:23:05.806861Z INFO spiral_temp_test: │
│ input=Comment("b22pW\"\"") │
│ 2024-04-10T23:23:05.806889Z INFO spiral_temp_test: │
│ input=Comment("q'tA[$R*in|<-") │
│ 2024-04-10T23:23:05.806920Z INFO spiral_temp_test: │
│ input=StringLiteral(".w,&'VV:Vu2B~cgNcg") │
│ 2024-04-10T23:23:05.806941Z INFO spiral_temp_test: │
│ input=Integer(8563675079431874732) │
│ 2024-04-10T23:23:05.806962Z INFO spiral_temp_test: │
│ input=Integer(7493488886672991881) │
│ 2024-04-10T23:23:05.807020Z INFO spiral_temp_test: │
│ input=Identifier("zrJ9zdASYTLG7mOVB5nD3orjJo4i") │
│ 2024-04-10T23:23:05.807079Z INFO spiral_temp_test: │
│ input=Comment("y.\\KW`BIE'~\"{\\\"[{\"tR?%\"") │
│ 2024-04-10T23:23:05.807138Z INFO spiral_temp_test: │
│ input=Comment("XSM/m&.`& `W'mf\"/?\\O\"=\"{K&.=") │
│ 2024-04-10T23:23:05.807174Z INFO spiral_temp_test: │
│ input=Integer(-450975937066236980) │
│ test prop_parse_format_idempotent ... ok │
│ test │
│ adding_and_then_removing_an_item_from_the_cart_leaves_the_cart_unchanged ... │
│ ok │
│ │
│ test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; │
│ finished in 0.20s │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── pwsh ────────────────────────────────────────────────────────────────────────
{ . $ScriptDir/../../../../target/release/spiral_temp_test$(GetExecutableSuffix)
} | Invoke-Block
╭─[ 81.66ms - stdout ]─────────────────────────────────────────────────────────╮
│ app=test │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
[NbConvertApp] Converting notebook build.dib.ipynb to html
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
validate(nb)
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
return _pygments_highlight(
[NbConvertApp] Writing 364950 bytes to build.dib.html
In [ ]:
{ . "$ScriptDir/../apps/perf/build.ps1" } | Invoke-Block
00:00:00 #1 [debug] runWithTimeoutChildAsync / timeout: 60
00:00:00 #2 [debug] executeAsync / options: { Command =
"dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" --port 13805 --default-int i32 --default-float f64"
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = Some <fun:main@441-47> }
00:00:00 #3 [verbose] > pwd: C:\home\git\polyglot\apps\perf
00:00:00 #4 [verbose] > dllPath: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release
00:00:00 #5 [verbose] > targetDir: C:\home\git\polyglot\target/polyglot/spiral_eval
00:00:00 #6 [verbose] > Starting the Spiral Server. It is bound to: http://localhost:13805
00:00:00 #7 [debug] runWithTimeoutChildAsync / timeout: 500
00:00:00 #8 [verbose] waitForPortAccess / port: 13805 / retry: 0
00:00:01 #9 [debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:
00:00:01 #10 [verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0
00:00:01 #11 [verbose] > Server bound to: http://localhost:13805
00:00:01 #12 [debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 Perf.dib""
WorkingDirectory = None
CancellationToken = Some System.Threading.CancellationToken
OnLine = None }
00:00:04 #13 [verbose] >
00:00:04 #14 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:04 #15 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:04 #16 [verbose] > │ ## Perf (Polyglot) │
00:00:04 #17 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:04 #18 [verbose] >
00:00:04 #19 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:04 #20 [verbose] > // // test
00:00:04 #21 [verbose] >
00:00:04 #22 [verbose] > open testing
00:00:04 #23 [verbose] > open benchmark
00:00:08 #24 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\a68bf544ee8067329270251865f764a781c0d58c964a15c207916a17aa1e46fb\main.spi
00:00:10 #25 [verbose] >
00:00:10 #26 [verbose] > ╭─[ 5.93s - stdout ]───────────────────────────────────────────────────────────╮
00:00:10 #27 [verbose] > │ () │
00:00:10 #28 [verbose] > │ │
00:00:10 #29 [verbose] > │ │
00:00:10 #30 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:10 #31 [verbose] >
00:00:10 #32 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:10 #33 [verbose] > #!import ../../lib/spiral/common.fsx
00:00:10 #34 [verbose] > #!import ../../lib/spiral/sm.fsx
00:00:10 #35 [verbose] > #!import ../../lib/spiral/date_time.fsx
00:00:10 #36 [verbose] > #!import ../../lib/spiral/file_system.fsx
00:00:10 #37 [verbose] > #!import ../../lib/spiral/trace.fsx
00:00:10 #38 [verbose] > #!import ../../lib/spiral/lib.fsx
00:00:10 #39 [verbose] >
00:00:10 #40 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:10 #41 [verbose] > #r
00:00:10 #42 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
00:00:10 #43 [verbose] > spNetCore.Html.Abstractions.dll"
00:00:10 #44 [verbose] > #r
00:00:10 #45 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:10 #46 [verbose] > otNet.Interactive.dll"
00:00:10 #47 [verbose] > #r
00:00:10 #48 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:10 #49 [verbose] > otNet.Interactive.FSharp.dll"
00:00:10 #50 [verbose] > #r
00:00:10 #51 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:10 #52 [verbose] > otNet.Interactive.Formatting.dll"
00:00:10 #53 [verbose] > open System
00:00:10 #54 [verbose] > open System.IO
00:00:10 #55 [verbose] > open System.Text
00:00:10 #56 [verbose] > open Microsoft.DotNet.Interactive.Formatting
00:00:12 #57 [verbose] >
00:00:12 #58 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:12 #59 [verbose] > #r
00:00:12 #60 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:12 #61 [verbose] > otNet.Interactive.FSharp.dll"
00:00:12 #62 [verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
00:00:12 #63 [verbose] > #r
00:00:12 #64 [verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
00:00:12 #65 [verbose] > otNet.Interactive.dll"
00:00:12 #66 [verbose] > open type Microsoft.DotNet.Interactive.Kernel
00:00:12 #67 [verbose] >
00:00:12 #68 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:12 #69 [verbose] > type [[<Struct>]] US0 =
00:00:12 #70 [verbose] > | US0_0
00:00:12 #71 [verbose] > | US0_1
00:00:12 #72 [verbose] > and [[<Struct>]] US1 =
00:00:12 #73 [verbose] > | US1_0 of f0_0 : US0
00:00:12 #74 [verbose] > | US1_1
00:00:12 #75 [verbose] > let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
00:00:12 #76 [verbose] > let v1 : System.IDisposable option = None
00:00:12 #77 [verbose] > let mutable _v1 = v1
00:00:12 #78 [verbose] > #if FABLE_COMPILER_RUST && !WASM && !CONTRACT
00:00:12 #79 [verbose] > let v2 : System.IDisposable = null |> unbox<System.IDisposable>
00:00:12 #80 [verbose] > v2
00:00:12 #81 [verbose] > #endif
00:00:12 #82 [verbose] > #if FABLE_COMPILER_RUST && WASM
00:00:12 #83 [verbose] > let v3 : System.IDisposable = null |> unbox<System.IDisposable>
00:00:12 #84 [verbose] > v3
00:00:12 #85 [verbose] > #endif
00:00:12 #86 [verbose] > #if FABLE_COMPILER_RUST && CONTRACT
00:00:12 #87 [verbose] > let v4 : System.IDisposable = null |> unbox<System.IDisposable>
00:00:12 #88 [verbose] > v4
00:00:12 #89 [verbose] > #endif
00:00:12 #90 [verbose] > #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
00:00:12 #91 [verbose] > !WASM && !CONTRACT
00:00:12 #92 [verbose] > let v5 : System.ID...
00:00:13 #93 [verbose] >
00:00:13 #94 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:13 #95 [verbose] > type Mut0 = {mutable l0 : int32; mutable l1 : string}
00:00:13 #96 [verbose] > and Mut1 = {mutable l0 : int32}
00:00:13 #97 [verbose] > let rec closure1 (v0 : string) (v1 : string) : bool =
00:00:13 #98 [verbose] > let v2 : bool = v1.Contains v0
00:00:13 #99 [verbose] > v2
00:00:13 #100 [verbose] > and closure0 () (v0 : string) : (string -> bool) =
00:00:13 #101 [verbose] > closure1(v0)
00:00:13 #102 [verbose] > and closure3 (v0 : string) (v1 : string) : bool =
00:00:13 #103 [verbose] > let v2 : bool = v1.EndsWith v0
00:00:13 #104 [verbose] > v2
00:00:13 #105 [verbose] > and closure2 () (v0 : string) : (string -> bool) =
00:00:13 #106 [verbose] > closure3(v0)
00:00:13 #107 [verbose] > and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
00:00:13 #108 [verbose] > let v3 : string = v2.PadLeft (v0, v1)
00:00:13 #109 [verbose] > v3
00:00:13 #110 [verbose] > and closure5 (v0 : int32) (v1 : char) : (string -> string) =
00:00:13 #111 [verbose] > closure6(v0, v1)
00:00:13 #112 [verbose] > and closure4 () (v0 : int32) : (char -> (string -> string)) =
00:00:13 #113 [verbose] > closure5(v0)
00:00:13 #114 [verbose] > and closure8 (v0 : int32) (v1 : string) : string =
00:00:13 #115 [verbose] > let v2 : stri...
00:00:14 #116 [verbose] >
00:00:14 #117 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:14 #118 [verbose] > let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
00:00:14 #119 [verbose] > let v2 : (System.Guid -> string) = _.ToString()
00:00:14 #120 [verbose] > let v3 : string = v2 v0
00:00:14 #121 [verbose] > let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
00:00:14 #122 [verbose] > let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
00:00:14 #123 [verbose] > v5
00:00:14 #124 [verbose] > and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
00:00:14 #125 [verbose] > closure1(v0)
00:00:14 #126 [verbose] > and closure5 (v0 : string, v1 : string) (v2 : string) : string =
00:00:14 #127 [verbose] > let v3 : string = v2.Replace (v0, v1)
00:00:14 #128 [verbose] > v3
00:00:14 #129 [verbose] > and closure4 (v0 : string) (v1 : string) : (string -> string) =
00:00:14 #130 [verbose] > closure5(v0, v1)
00:00:14 #131 [verbose] > and closure3 () (v0 : string) : (string -> (string -> string)) =
00:00:14 #132 [verbose] > closure4(v0)
00:00:14 #133 [verbose] > and method0 () : (string -> (string -> (string -> string))) =
00:00:14 #134 [verbose] > closure3()
00:00:14 #135 [verbose] > and closure2 (...
00:00:14 #136 [verbose] >
00:00:14 #137 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:14 #138 [verbose] > #if FABLE_COMPILER // file_system.types
00:00:14 #139 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
00:00:14 #140 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
00:00:14 #141 [verbose] > base64_DecodeError = class end
00:00:14 #142 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
00:00:14 #143 [verbose] > = class end
00:00:14 #144 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
00:00:14 #145 [verbose] > = class end
00:00:14 #146 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
00:00:14 #147 [verbose] > serde_json_Error = class end
00:00:14 #148 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
00:00:14 #149 [verbose] > serde_json_Value = class end
00:00:14 #150 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
00:00:14 #151 [verbose] > serde_wasm_bindgen_Error = class end
00:00:14 #152 [verbose] > [[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
00:00:16 #153 [verbose] >
00:00:16 #154 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:16 #155 [verbose] > module State = let mutable trace_state = None
00:00:16 #156 [verbose] > type [[<Struct>]] US0 =
00:00:16 #157 [verbose] > | US0_0
00:00:16 #158 [verbose] > | US0_1
00:00:16 #159 [verbose] > | US0_2
00:00:16 #160 [verbose] > | US0_3
00:00:16 #161 [verbose] > | US0_4
00:00:16 #162 [verbose] > and Mut0 = {mutable l0 : int64}
00:00:16 #163 [verbose] > and Mut1 = {mutable l0 : bool}
00:00:16 #164 [verbose] > and Mut2 = {mutable l0 : US0}
00:00:16 #165 [verbose] > and [[<Struct>]] US1 =
00:00:16 #166 [verbose] > | US1_0 of f0_0 : int64
00:00:16 #167 [verbose] > | US1_1
00:00:16 #168 [verbose] > and [[<Struct>]] US2 =
00:00:16 #169 [verbose] > | US2_0 of f0_0 : int64
00:00:16 #170 [verbose] > | US2_1
00:00:16 #171 [verbose] > let rec method1 (v0 : int64 option) : int64 option =
00:00:16 #172 [verbose] > v0
00:00:16 #173 [verbose] > and method2 (v0 : int64 option) : int64 option =
00:00:16 #174 [verbose] > v0
00:00:16 #175 [verbose] > and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
00:00:16 #176 [verbose] > let v0 : Mut1 = {l0 = true} : Mut1
00:00:16 #177 [verbose] > let v1 : Mut0 = {l0 = 0L} : Mut0
00:00:16 #178 [verbose] > let v2 : US0 = US0_0
00:00:16 #179 [verbose] > let v3 : Mut2 = {l0 = v2} : Mut2
00:00:16 #180 [verbose] > let v4 : Mut1 = {l0 = false} : Mut1
00:00:16 #181 [verbose] > let v5 : int64 option option = None
00:00:16 #182 [verbose] > ...
00:00:16 #183 [verbose] >
00:00:16 #184 [verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────
00:00:16 #185 [verbose] > module SpiralTrace =
00:00:16 #186 [verbose] > let get_trace_state () =
00:00:16 #187 [verbose] > #if !INTERACTIVE
00:00:16 #188 [verbose] > Trace.get_trace_state ()
00:00:16 #189 [verbose] > #else
00:00:16 #190 [verbose] > get_trace_state ()
00:00:16 #191 [verbose] > #endif
00:00:16 #192 [verbose] > let trace x =
00:00:16 #193 [verbose] > #if !INTERACTIVE
00:00:16 #194 [verbose] > Trace.trace x
00:00:16 #195 [verbose] > #else
00:00:16 #196 [verbose] > trace x
00:00:16 #197 [verbose] > #endif
00:00:16 #198 [verbose] >
00:00:16 #199 [verbose] > let US0_0 =
00:00:16 #200 [verbose] > #if !INTERACTIVE
00:00:16 #201 [verbose] > Trace.US0_0
00:00:16 #202 [verbose] > #else
00:00:16 #203 [verbose] > US0_0
00:00:16 #204 [verbose] > #endif
00:00:16 #205 [verbose] >
00:00:16 #206 [verbose] > let US0_1 =
00:00:16 #207 [verbose] > #if !INTERACTIVE
00:00:16 #208 [verbose] > Trace.US0_1
00:00:16 #209 [verbose] > #else
00:00:16 #210 [verbose] > US0_1
00:00:16 #211 [verbose] > #endif
00:00:16 #212 [verbose] >
00:00:16 #213 [verbose] > let US0_2 =
00:00:16 #214 [verbose] > #if !INTERACTIVE
00:00:16 #215 [verbose] > Trace.US0_2
00:00:16 #216 [verbose] > #else
00:00:16 #217 [verbose] > US0_2
00:00:16 #218 [verbose] > #endif
00:00:16 #219 [verbose] >
00:00:16 #220 [verbose] > let US0_3 =
00:00:16 #221 [verbose] > #if !INTERACTIVE
00:00:16 #222 [verbose] > Trace.US0_3
00:00:16 #223 [verbose] > #else
00:00:16 #224 [verbose] > US0_3
00:00:16 #225 [verbose] > #endif
00:00:16 #226 [verbose] >
00:00:16 #227 [verbose] > let US0_4 =
00:00:16 #228 [verbose] > #if !INTERACTIVE
00:00:16 #229 [verbose] > Trace.US0_4
00:00:16 #230 [verbose] > #else
00:00:16 #231 [verbose] > US0_4
00:00:16 #232 [verbose] > #endif
00:00:16 #233 [verbose] >
00:00:16 #234 [verbose] >
00:00:16 #235 [verbose] > #if !FABLE_COMPILER && !WASM && !CONTRACT
00:00:16 #236 [verbose] > module SpiralDateTime =
00:00:16 #237 [verbose] > let format x =
00:00:16 #238 [verbose] > #if !INTERACTIVE
00:00:16 #239 [verbose] > Date_ti...
00:00:16 #240 [verbose] >
00:00:16 #241 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:16 #242 [verbose] > #if !INTERACTIVE
00:00:16 #243 [verbose] > open Lib
00:00:16 #244 [verbose] > #endif
00:00:16 #245 [verbose] >
00:00:16 #246 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:16 #247 [verbose] > inl (/@) x = listm'.(/@) x
00:00:16 #248 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\171b25408a8cd9975131a61829eed2aaaacb7f8dcb899921373e2d66b8003dc9\main.spi
00:00:16 #249 [verbose] >
00:00:16 #250 [verbose] > ╭─[ 276.28ms - stdout ]────────────────────────────────────────────────────────╮
00:00:16 #251 [verbose] > │ () │
00:00:16 #252 [verbose] > │ │
00:00:16 #253 [verbose] > │ │
00:00:16 #254 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:16 #255 [verbose] >
00:00:16 #256 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:16 #257 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:16 #258 [verbose] > │ ## TestCaseResult │
00:00:16 #259 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:16 #260 [verbose] >
00:00:16 #261 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:16 #262 [verbose] > type TestCaseResult =
00:00:16 #263 [verbose] > {
00:00:16 #264 [verbose] > Input: string
00:00:16 #265 [verbose] > Expected: string
00:00:16 #266 [verbose] > Result: string
00:00:16 #267 [verbose] > TimeList: int64 list
00:00:16 #268 [verbose] > }
00:00:16 #269 [verbose] >
00:00:16 #270 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:16 #271 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:16 #272 [verbose] > │ ## run │
00:00:16 #273 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:16 #274 [verbose] >
00:00:16 #275 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:16 #276 [verbose] > let run count (solutions: (string * ('TInput -> 'TExpected)) list) (input,
00:00:16 #277 [verbose] > expected) =
00:00:16 #278 [verbose] > let inputStr =
00:00:16 #279 [verbose] > match box input with
00:00:16 #280 [verbose] > | :? System.Collections.ICollection as input ->
00:00:16 #281 [verbose] > System.Linq.Enumerable.Cast<obj> input
00:00:16 #282 [verbose] > |> Seq.map string
00:00:16 #283 [verbose] > |> SpiralSm.concat ","
00:00:16 #284 [verbose] > | _ -> input.ToString ()
00:00:16 #285 [verbose] >
00:00:16 #286 [verbose] > printfn ""
00:00:16 #287 [verbose] > printfn $"Solution: {inputStr} "
00:00:16 #288 [verbose] >
00:00:16 #289 [verbose] > let performanceInvoke (fn: unit -> 'T) =
00:00:16 #290 [verbose] > GC.Collect ()
00:00:16 #291 [verbose] > let stopwatch = System.Diagnostics.Stopwatch ()
00:00:16 #292 [verbose] > stopwatch.Start ()
00:00:16 #293 [verbose] > let time1 = stopwatch.ElapsedMilliseconds
00:00:16 #294 [verbose] >
00:00:16 #295 [verbose] > let result =
00:00:16 #296 [verbose] > [[| 0 .. count |]]
00:00:16 #297 [verbose] > |> Array.Parallel.map (fun _ ->
00:00:16 #298 [verbose] > fn ()
00:00:16 #299 [verbose] > )
00:00:16 #300 [verbose] > |> Array.last
00:00:16 #301 [verbose] >
00:00:16 #302 [verbose] > let time2 = stopwatch.ElapsedMilliseconds - time1
00:00:16 #303 [verbose] >
00:00:16 #304 [verbose] > result, time2
00:00:16 #305 [verbose] >
00:00:16 #306 [verbose] > let resultsWithTime =
00:00:16 #307 [verbose] > solutions
00:00:16 #308 [verbose] > |> List.mapi (fun i (testName, solution) ->
00:00:16 #309 [verbose] > let result, time = performanceInvoke (fun () -> solution input)
00:00:16 #310 [verbose] > printfn $"Test case %d{i + 1}. %s{testName}. Time: %A{time} "
00:00:16 #311 [verbose] > result, time
00:00:16 #312 [verbose] > )
00:00:16 #313 [verbose] >
00:00:16 #314 [verbose] >
00:00:16 #315 [verbose] > match resultsWithTime |> List.map fst with
00:00:16 #316 [verbose] > | ([[]] | [[ _ ]]) -> ()
00:00:16 #317 [verbose] > | (head :: tail) when tail |> List.forall ((=) head) -> ()
00:00:16 #318 [verbose] > | results -> failwithf $"Challenge error: %A{results}"
00:00:16 #319 [verbose] >
00:00:16 #320 [verbose] > {
00:00:16 #321 [verbose] > Input = inputStr
00:00:16 #322 [verbose] > Expected = expected.ToString ()
00:00:16 #323 [verbose] > Result = resultsWithTime |> Seq.map fst |> Seq.head |> _.ToString()
00:00:16 #324 [verbose] > TimeList = resultsWithTime |> List.map snd
00:00:16 #325 [verbose] > }
00:00:16 #326 [verbose] >
00:00:16 #327 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:16 #328 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:16 #329 [verbose] > │ ## runAll │
00:00:16 #330 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:16 #331 [verbose] >
00:00:16 #332 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:16 #333 [verbose] > let runAll testName count (solutions: (string * ('TInput -> 'TExpected)) list)
00:00:16 #334 [verbose] > testCases =
00:00:16 #335 [verbose] > printfn ""
00:00:16 #336 [verbose] > printfn ""
00:00:16 #337 [verbose] > printfn $"Test: {testName}"
00:00:16 #338 [verbose] > testCases
00:00:16 #339 [verbose] > |> Seq.map (run count solutions)
00:00:16 #340 [verbose] > |> Seq.toList
00:00:16 #341 [verbose] >
00:00:16 #342 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:16 #343 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:16 #344 [verbose] > │ ## sortResultList │
00:00:16 #345 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:16 #346 [verbose] >
00:00:16 #347 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:16 #348 [verbose] > let sortResultList resultList =
00:00:16 #349 [verbose] > let table =
00:00:16 #350 [verbose] > let rows =
00:00:16 #351 [verbose] > resultList
00:00:16 #352 [verbose] > |> List.map (fun result ->
00:00:16 #353 [verbose] > let best =
00:00:16 #354 [verbose] > result.TimeList
00:00:16 #355 [verbose] > |> List.mapi (fun i time ->
00:00:16 #356 [verbose] > i + 1, time
00:00:16 #357 [verbose] > )
00:00:16 #358 [verbose] > |> List.sortBy snd
00:00:16 #359 [verbose] > |> List.head
00:00:16 #360 [verbose] > |> _.ToString()
00:00:16 #361 [verbose] > let row =
00:00:16 #362 [verbose] > [[
00:00:16 #363 [verbose] > result.Input
00:00:16 #364 [verbose] > result.Expected
00:00:16 #365 [verbose] > result.Result
00:00:16 #366 [verbose] > best
00:00:16 #367 [verbose] > ]]
00:00:16 #368 [verbose] > let color =
00:00:16 #369 [verbose] > match result.Expected = result.Result with
00:00:16 #370 [verbose] > | true -> Some ConsoleColor.DarkGreen
00:00:16 #371 [verbose] > | false -> Some ConsoleColor.DarkRed
00:00:16 #372 [verbose] > row, color
00:00:16 #373 [verbose] > )
00:00:16 #374 [verbose] > let header =
00:00:16 #375 [verbose] > [[
00:00:16 #376 [verbose] > [[
00:00:16 #377 [verbose] > "Input"
00:00:16 #378 [verbose] > "Expected"
00:00:16 #379 [verbose] > "Result"
00:00:16 #380 [verbose] > "Best"
00:00:16 #381 [verbose] > ]]
00:00:16 #382 [verbose] > [[
00:00:16 #383 [verbose] > "---"
00:00:16 #384 [verbose] > "---"
00:00:16 #385 [verbose] > "---"
00:00:16 #386 [verbose] > "---"
00:00:16 #387 [verbose] > ]]
00:00:16 #388 [verbose] > ]]
00:00:16 #389 [verbose] > |> List.map (fun row -> row, None)
00:00:16 #390 [verbose] > header @ rows
00:00:16 #391 [verbose] >
00:00:16 #392 [verbose] > let formattedTable =
00:00:16 #393 [verbose] > let lengthMap =
00:00:16 #394 [verbose] > table
00:00:16 #395 [verbose] > |> List.map fst
00:00:16 #396 [verbose] > |> List.transpose
00:00:16 #397 [verbose] > |> List.map (fun column ->
00:00:16 #398 [verbose] > column
00:00:16 #399 [verbose] > |> List.map String.length
00:00:16 #400 [verbose] > |> List.sortDescending
00:00:16 #401 [verbose] > |> List.tryHead
00:00:16 #402 [verbose] > |> Option.defaultValue 0
00:00:16 #403 [verbose] > )
00:00:16 #404 [verbose] > |> List.indexed
00:00:16 #405 [verbose] > |> Map.ofList
00:00:16 #406 [verbose] > table
00:00:16 #407 [verbose] > |> List.map (fun (row, color) ->
00:00:16 #408 [verbose] > let newRow =
00:00:16 #409 [verbose] > row
00:00:16 #410 [verbose] > |> List.mapi (fun i cell ->
00:00:16 #411 [verbose] > cell.PadRight lengthMap.[[i]]
00:00:16 #412 [verbose] > )
00:00:16 #413 [verbose] > newRow, color
00:00:16 #414 [verbose] > )
00:00:16 #415 [verbose] >
00:00:16 #416 [verbose] > printfn ""
00:00:16 #417 [verbose] > formattedTable
00:00:16 #418 [verbose] > |> List.iter (fun (row, color) ->
00:00:16 #419 [verbose] > match color with
00:00:16 #420 [verbose] > | Some color -> Console.ForegroundColor <- color
00:00:16 #421 [verbose] > | None -> Console.ResetColor ()
00:00:16 #422 [verbose] >
00:00:16 #423 [verbose] > printfn "%s" (String.Join ("\t| ", row))
00:00:16 #424 [verbose] >
00:00:16 #425 [verbose] > Console.ResetColor ()
00:00:16 #426 [verbose] > )
00:00:16 #427 [verbose] >
00:00:16 #428 [verbose] > let averages =
00:00:16 #429 [verbose] > resultList
00:00:16 #430 [verbose] > |> List.map (fun result -> result.TimeList |> List.map float)
00:00:16 #431 [verbose] > |> List.transpose
00:00:16 #432 [verbose] > |> List.map List.average
00:00:16 #433 [verbose] > |> List.map int64
00:00:16 #434 [verbose] > |> List.indexed
00:00:16 #435 [verbose] >
00:00:16 #436 [verbose] > printfn ""
00:00:16 #437 [verbose] > printfn "Average Ranking "
00:00:16 #438 [verbose] > averages
00:00:16 #439 [verbose] > |> List.sortBy snd
00:00:16 #440 [verbose] > |> List.iter (fun (i, avg) ->
00:00:16 #441 [verbose] > printfn $"Test case %d{i + 1}. Average Time: %A{avg} "
00:00:16 #442 [verbose] > )
00:00:16 #443 [verbose] >
00:00:16 #444 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:16 #445 [verbose] > let mutable _count =
00:00:16 #446 [verbose] > if ("CI" |> System.Environment.GetEnvironmentVariable |> fun x -> $"%A{x}")
00:00:16 #447 [verbose] > <> "<null>"
00:00:16 #448 [verbose] > then 2000000
00:00:16 #449 [verbose] > else 2000
00:00:16 #450 [verbose] >
00:00:16 #451 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:16 #452 [verbose] > inl is_fast () =
00:00:16 #453 [verbose] > false
00:00:17 #454 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\b0ccd1ee6008c4d24be9ff554910920ba62f1a3887ec8adff6148e1fad804ac5\main.spi
00:00:17 #455 [verbose] >
00:00:17 #456 [verbose] > ╭─[ 256.32ms - stdout ]────────────────────────────────────────────────────────╮
00:00:17 #457 [verbose] > │ () │
00:00:17 #458 [verbose] > │ │
00:00:17 #459 [verbose] > │ │
00:00:17 #460 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #461 [verbose] >
00:00:17 #462 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:17 #463 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:17 #464 [verbose] > │ ## empty3Tests │
00:00:17 #465 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #466 [verbose] >
00:00:17 #467 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:17 #468 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:17 #469 [verbose] > │ Test: Empty3 │
00:00:17 #470 [verbose] > │ │
00:00:17 #471 [verbose] > │ Solution: (a, a) │
00:00:17 #472 [verbose] > │ Test case 1. A. Time: 91L │
00:00:17 #473 [verbose] > │ │
00:00:17 #474 [verbose] > │ Solution: (a, a) │
00:00:17 #475 [verbose] > │ Test case 1. A. Time: 56L │
00:00:17 #476 [verbose] > │ │
00:00:17 #477 [verbose] > │ Input | Expected | Result | Best │
00:00:17 #478 [verbose] > │ --- | --- | --- | --- │
00:00:17 #479 [verbose] > │ (a, a) | a | a | (1, 91) │
00:00:17 #480 [verbose] > │ (a, a) | a | a | (1, 56) │
00:00:17 #481 [verbose] > │ │
00:00:17 #482 [verbose] > │ Averages │
00:00:17 #483 [verbose] > │ Test case 1. Average Time: 73L │
00:00:17 #484 [verbose] > │ │
00:00:17 #485 [verbose] > │ Ranking │
00:00:17 #486 [verbose] > │ Test case 1. Average Time: 73L │
00:00:17 #487 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #488 [verbose] >
00:00:17 #489 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:17 #490 [verbose] > //// test
00:00:17 #491 [verbose] >
00:00:17 #492 [verbose] > let solutions = [[
00:00:17 #493 [verbose] > "A",
00:00:17 #494 [verbose] > fun (a, _b) ->
00:00:17 #495 [verbose] > a
00:00:17 #496 [verbose] > ]]
00:00:17 #497 [verbose] > let testCases = seq {
00:00:17 #498 [verbose] > ("a", "a"), "a"
00:00:17 #499 [verbose] > ("a", "a"), "a"
00:00:17 #500 [verbose] > }
00:00:17 #501 [verbose] > let rec empty3Tests = runAll (nameof empty3Tests) _count solutions testCases
00:00:17 #502 [verbose] > empty3Tests
00:00:17 #503 [verbose] > |> sortResultList
00:00:17 #504 [verbose] >
00:00:17 #505 [verbose] > ╭─[ 366.84ms - stdout ]────────────────────────────────────────────────────────╮
00:00:17 #506 [verbose] > │ │
00:00:17 #507 [verbose] > │ │
00:00:17 #508 [verbose] > │ Test: empty3Tests │
00:00:17 #509 [verbose] > │ │
00:00:17 #510 [verbose] > │ Solution: (a, a) │
00:00:17 #511 [verbose] > │ Test case 1. A. Time: 1L │
00:00:17 #512 [verbose] > │ │
00:00:17 #513 [verbose] > │ Solution: (a, a) │
00:00:17 #514 [verbose] > │ Test case 1. A. Time: 0L │
00:00:17 #515 [verbose] > │ │
00:00:17 #516 [verbose] > │ Input | Expected | Result | Best │
00:00:17 #517 [verbose] > │ --- | --- | --- | --- │
00:00:17 #518 [verbose] > │ (a, a) | a | a | (1, 1) │
00:00:17 #519 [verbose] > │ (a, a) | a | a | (1, 0) │
00:00:17 #520 [verbose] > │ │
00:00:17 #521 [verbose] > │ Average Ranking │
00:00:17 #522 [verbose] > │ Test case 1. Average Time: 0L │
00:00:17 #523 [verbose] > │ │
00:00:17 #524 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #525 [verbose] >
00:00:17 #526 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:17 #527 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:17 #528 [verbose] > │ ## empty2Tests │
00:00:17 #529 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #530 [verbose] >
00:00:17 #531 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:17 #532 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:17 #533 [verbose] > │ Test: Empty2 │
00:00:17 #534 [verbose] > │ │
00:00:17 #535 [verbose] > │ Solution: (a, a) │
00:00:17 #536 [verbose] > │ Test case 1. A. Time: 59L │
00:00:17 #537 [verbose] > │ │
00:00:17 #538 [verbose] > │ Solution: (a, a) │
00:00:17 #539 [verbose] > │ Test case 1. A. Time: 53L │
00:00:17 #540 [verbose] > │ │
00:00:17 #541 [verbose] > │ Input | Expected | Result | Best │
00:00:17 #542 [verbose] > │ --- | --- | --- | --- │
00:00:17 #543 [verbose] > │ (a, a) | a | a | (1, 59) │
00:00:17 #544 [verbose] > │ (a, a) | a | a | (1, 53) │
00:00:17 #545 [verbose] > │ │
00:00:17 #546 [verbose] > │ Averages │
00:00:17 #547 [verbose] > │ Test case 1. Average Time: 56L │
00:00:17 #548 [verbose] > │ │
00:00:17 #549 [verbose] > │ Ranking │
00:00:17 #550 [verbose] > │ Test case 1. Average Time: 56L │
00:00:17 #551 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #552 [verbose] >
00:00:17 #553 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:17 #554 [verbose] > //// test
00:00:17 #555 [verbose] >
00:00:17 #556 [verbose] > let solutions = [[
00:00:17 #557 [verbose] > "A",
00:00:17 #558 [verbose] > fun (a, _b) ->
00:00:17 #559 [verbose] > a
00:00:17 #560 [verbose] > ]]
00:00:17 #561 [verbose] > let testCases = seq {
00:00:17 #562 [verbose] > ("a", "a"), "a"
00:00:17 #563 [verbose] > ("a", "a"), "a"
00:00:17 #564 [verbose] > }
00:00:17 #565 [verbose] > let rec empty2Tests = runAll (nameof empty2Tests) _count solutions testCases
00:00:17 #566 [verbose] > empty2Tests
00:00:17 #567 [verbose] > |> sortResultList
00:00:17 #568 [verbose] >
00:00:17 #569 [verbose] > ╭─[ 329.48ms - stdout ]────────────────────────────────────────────────────────╮
00:00:17 #570 [verbose] > │ │
00:00:17 #571 [verbose] > │ │
00:00:17 #572 [verbose] > │ Test: empty2Tests │
00:00:17 #573 [verbose] > │ │
00:00:17 #574 [verbose] > │ Solution: (a, a) │
00:00:17 #575 [verbose] > │ Test case 1. A. Time: 1L │
00:00:17 #576 [verbose] > │ │
00:00:17 #577 [verbose] > │ Solution: (a, a) │
00:00:17 #578 [verbose] > │ Test case 1. A. Time: 0L │
00:00:17 #579 [verbose] > │ │
00:00:17 #580 [verbose] > │ Input | Expected | Result | Best │
00:00:17 #581 [verbose] > │ --- | --- | --- | --- │
00:00:17 #582 [verbose] > │ (a, a) | a | a | (1, 1) │
00:00:17 #583 [verbose] > │ (a, a) | a | a | (1, 0) │
00:00:17 #584 [verbose] > │ │
00:00:17 #585 [verbose] > │ Average Ranking │
00:00:17 #586 [verbose] > │ Test case 1. Average Time: 0L │
00:00:17 #587 [verbose] > │ │
00:00:17 #588 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #589 [verbose] >
00:00:17 #590 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:17 #591 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:17 #592 [verbose] > │ ## emptyTests │
00:00:17 #593 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #594 [verbose] >
00:00:17 #595 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:17 #596 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:17 #597 [verbose] > │ Test: Empty │
00:00:17 #598 [verbose] > │ │
00:00:17 #599 [verbose] > │ Solution: 0 │
00:00:17 #600 [verbose] > │ Test case 1. A. Time: 61L │
00:00:17 #601 [verbose] > │ │
00:00:17 #602 [verbose] > │ Solution: 2 │
00:00:17 #603 [verbose] > │ Test case 1. A. Time: 62L │
00:00:17 #604 [verbose] > │ │
00:00:17 #605 [verbose] > │ Solution: 5 │
00:00:17 #606 [verbose] > │ Test case 1. A. Time: 70L │
00:00:17 #607 [verbose] > │ │
00:00:17 #608 [verbose] > │ Input | Expected | Result | Best │
00:00:17 #609 [verbose] > │ --- | --- | --- | --- │
00:00:17 #610 [verbose] > │ 0 | 0 | 0 | (1, 61) │
00:00:17 #611 [verbose] > │ 2 | 2 | 2 | (1, 62) │
00:00:17 #612 [verbose] > │ 5 | 5 | 5 | (1, 70) │
00:00:17 #613 [verbose] > │ │
00:00:17 #614 [verbose] > │ Averages │
00:00:17 #615 [verbose] > │ Test case 1. Average Time: 64L │
00:00:17 #616 [verbose] > │ │
00:00:17 #617 [verbose] > │ Ranking │
00:00:17 #618 [verbose] > │ Test case 1. Average Time: 64L │
00:00:17 #619 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:17 #620 [verbose] >
00:00:17 #621 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:17 #622 [verbose] > //// test
00:00:17 #623 [verbose] >
00:00:17 #624 [verbose] > let solutions = [[
00:00:17 #625 [verbose] > "A",
00:00:17 #626 [verbose] > fun n ->
00:00:17 #627 [verbose] > n + 0
00:00:17 #628 [verbose] > ]]
00:00:17 #629 [verbose] > let testCases = seq {
00:00:17 #630 [verbose] > 0, 0
00:00:17 #631 [verbose] > 2, 2
00:00:17 #632 [verbose] > 5, 5
00:00:17 #633 [verbose] > }
00:00:17 #634 [verbose] > let rec emptyTests = runAll (nameof emptyTests) _count solutions testCases
00:00:17 #635 [verbose] > emptyTests
00:00:17 #636 [verbose] > |> sortResultList
00:00:18 #637 [verbose] >
00:00:18 #638 [verbose] > ╭─[ 454.72ms - stdout ]────────────────────────────────────────────────────────╮
00:00:18 #639 [verbose] > │ │
00:00:18 #640 [verbose] > │ │
00:00:18 #641 [verbose] > │ Test: emptyTests │
00:00:18 #642 [verbose] > │ │
00:00:18 #643 [verbose] > │ Solution: 0 │
00:00:18 #644 [verbose] > │ Test case 1. A. Time: 2L │
00:00:18 #645 [verbose] > │ │
00:00:18 #646 [verbose] > │ Solution: 2 │
00:00:18 #647 [verbose] > │ Test case 1. A. Time: 0L │
00:00:18 #648 [verbose] > │ │
00:00:18 #649 [verbose] > │ Solution: 5 │
00:00:18 #650 [verbose] > │ Test case 1. A. Time: 0L │
00:00:18 #651 [verbose] > │ │
00:00:18 #652 [verbose] > │ Input | Expected | Result | Best │
00:00:18 #653 [verbose] > │ --- | --- | --- | --- │
00:00:18 #654 [verbose] > │ 0 | 0 | 0 | (1, 2) │
00:00:18 #655 [verbose] > │ 2 | 2 | 2 | (1, 0) │
00:00:18 #656 [verbose] > │ 5 | 5 | 5 | (1, 0) │
00:00:18 #657 [verbose] > │ │
00:00:18 #658 [verbose] > │ Average Ranking │
00:00:18 #659 [verbose] > │ Test case 1. Average Time: 0L │
00:00:18 #660 [verbose] > │ │
00:00:18 #661 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #662 [verbose] >
00:00:18 #663 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:18 #664 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:18 #665 [verbose] > │ ## uniqueLettersTests │
00:00:18 #666 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #667 [verbose] >
00:00:18 #668 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:18 #669 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:18 #670 [verbose] > │ Test: UniqueLetters │
00:00:18 #671 [verbose] > │ │
00:00:18 #672 [verbose] > │ Solution: abc │
00:00:18 #673 [verbose] > │ Test case 1. A. Time: 1512L │
00:00:18 #674 [verbose] > │ Test case 2. B. Time: 1947L │
00:00:18 #675 [verbose] > │ Test case 3. C. Time: 2023L │
00:00:18 #676 [verbose] > │ Test case 4. D. Time: 1358L │
00:00:18 #677 [verbose] > │ Test case 5. E. Time: 1321L │
00:00:18 #678 [verbose] > │ Test case 6. F. Time: 1346L │
00:00:18 #679 [verbose] > │ Test case 7. G. Time: 1304L │
00:00:18 #680 [verbose] > │ Test case 8. H. Time: 1383L │
00:00:18 #681 [verbose] > │ Test case 9. I. Time: 1495L │
00:00:18 #682 [verbose] > │ Test case 10. J. Time: 1245L │
00:00:18 #683 [verbose] > │ Test case 11. K. Time: 1219L │
00:00:18 #684 [verbose] > │ │
00:00:18 #685 [verbose] > │ Solution: accabb │
00:00:18 #686 [verbose] > │ Test case 1. A. Time: 1648L │
00:00:18 #687 [verbose] > │ Test case 2. B. Time: 2061L │
00:00:18 #688 [verbose] > │ Test case 3. C. Time: 2413L │
00:00:18 #689 [verbose] > │ Test case 4. D. Time: 1561L │
00:00:18 #690 [verbose] > │ Test case 5. E. Time: 1593L │
00:00:18 #691 [verbose] > │ Test case 6. F. Time: 1518L │
00:00:18 #692 [verbose] > │ Test case 7. G. Time: 1415L │
00:00:18 #693 [verbose] > │ Test case 8. H. Time: 1510L │
00:00:18 #694 [verbose] > │ Test case 9. I. Time: 1445L │
00:00:18 #695 [verbose] > │ Test case 10. J. Time: 1636L │
00:00:18 #696 [verbose] > │ Test case 11. K. Time: 1317L │
00:00:18 #697 [verbose] > │ │
00:00:18 #698 [verbose] > │ Solution: pprrqqpp │
00:00:18 #699 [verbose] > │ Test case 1. A. Time: 2255L │
00:00:18 #700 [verbose] > │ Test case 2. B. Time: 2408L │
00:00:18 #701 [verbose] > │ Test case 3. C. Time: 2393L │
00:00:18 #702 [verbose] > │ Test case 4. D. Time: 1675L │
00:00:18 #703 [verbose] > │ Test case 5. E. Time: 1911L │
00:00:18 #704 [verbose] > │ Test case 6. F. Time: 2126L │
00:00:18 #705 [verbose] > │ Test case 7. G. Time: 1504L │
00:00:18 #706 [verbose] > │ Test case 8. H. Time: 1715L │
00:00:18 #707 [verbose] > │ Test case 9. I. Time: 1537L │
00:00:18 #708 [verbose] > │ Test case 10. J. Time: 1522L │
00:00:18 #709 [verbose] > │ Test case 11. K. Time: 1322L │
00:00:18 #710 [verbose] > │ │
00:00:18 #711 [verbose] > │ Solution: │
00:00:18 #712 [verbose] > │ aaaaaaaaaaaaaaccccccabbbbbbbaaacccbbbaaccccccccccacbbbbbbbbbbbbbcccccccbbbbb │
00:00:18 #713 [verbose] > │ bbb │
00:00:18 #714 [verbose] > │ Test case 1. A. Time: 13073L │
00:00:18 #715 [verbose] > │ Test case 2. B. Time: 11519L │
00:00:18 #716 [verbose] > │ Test case 3. C. Time: 8373L │
00:00:18 #717 [verbose] > │ Test case 4. D. Time: 5860L │
00:00:18 #718 [verbose] > │ Test case 5. E. Time: 6490L │
00:00:18 #719 [verbose] > │ Test case 6. F. Time: 6325L │
00:00:18 #720 [verbose] > │ Test case 7. G. Time: 5799L │
00:00:18 #721 [verbose] > │ Test case 8. H. Time: 7099L │
00:00:18 #722 [verbose] > │ Test case 9. I. Time: 6133L │
00:00:18 #723 [verbose] > │ Test case 10. J. Time: 5993L │
00:00:18 #724 [verbose] > │ Test case 11. K. Time: 2040L │
00:00:18 #725 [verbose] > │ │
00:00:18 #726 [verbose] > │ Input │
00:00:18 #727 [verbose] > │ | Expected | Result | Best │
00:00:18 #728 [verbose] > │ --- │
00:00:18 #729 [verbose] > │ │
00:00:18 #730 [verbose] > │ | --- | --- | --- │
00:00:18 #731 [verbose] > │ abc │
00:00:18 #732 [verbose] > │ │
00:00:18 #733 [verbose] > │ | abc | abc | (11, 1219) │
00:00:18 #734 [verbose] > │ accabb │
00:00:18 #735 [verbose] > │ | acb | acb | (11, 1317) │
00:00:18 #736 [verbose] > │ pprrqqpp │
00:00:18 #737 [verbose] > │ | prq | prq | (11, 1322) │
00:00:18 #738 [verbose] > │ aaaaaaaaaaaaaaccccccabbbbbbbaaacccbbbaaccccccccccacbbbbbbbbbbbbbcccccccbbbbb │
00:00:18 #739 [verbose] > │ bbb | acb | acb | (11, 2040) │
00:00:18 #740 [verbose] > │ │
00:00:18 #741 [verbose] > │ Averages │
00:00:18 #742 [verbose] > │ Test case 1. Average Time: 4622L │
00:00:18 #743 [verbose] > │ Test case 2. Average Time: 4483L │
00:00:18 #744 [verbose] > │ Test case 3. Average Time: 3800L │
00:00:18 #745 [verbose] > │ Test case 4. Average Time: 2613L │
00:00:18 #746 [verbose] > │ Test case 5. Average Time: 2828L │
00:00:18 #747 [verbose] > │ Test case 6. Average Time: 2828L │
00:00:18 #748 [verbose] > │ Test case 7. Average Time: 2505L │
00:00:18 #749 [verbose] > │ Test case 8. Average Time: 2926L │
00:00:18 #750 [verbose] > │ Test case 9. Average Time: 2652L │
00:00:18 #751 [verbose] > │ Test case 10. Average Time: 2599L │
00:00:18 #752 [verbose] > │ Test case 11. Average Time: 1474L │
00:00:18 #753 [verbose] > │ │
00:00:18 #754 [verbose] > │ Ranking │
00:00:18 #755 [verbose] > │ Test case 1. Average Time: 4622L │
00:00:18 #756 [verbose] > │ Test case 2. Average Time: 4483L │
00:00:18 #757 [verbose] > │ Test case 3. Average Time: 3800L │
00:00:18 #758 [verbose] > │ Test case 8. Average Time: 2926L │
00:00:18 #759 [verbose] > │ Test case 5. Average Time: 2828L │
00:00:18 #760 [verbose] > │ Test case 6. Average Time: 2828L │
00:00:18 #761 [verbose] > │ Test case 9. Average Time: 2652L │
00:00:18 #762 [verbose] > │ Test case 4. Average Time: 2613L │
00:00:18 #763 [verbose] > │ Test case 10. Average Time: 2599L │
00:00:18 #764 [verbose] > │ Test case 7. Average Time: 2505L │
00:00:18 #765 [verbose] > │ Test case 11. Average Time: 1474L │
00:00:18 #766 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:18 #767 [verbose] >
00:00:18 #768 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:18 #769 [verbose] > //// test
00:00:18 #770 [verbose] >
00:00:18 #771 [verbose] > let solutions = [[
00:00:18 #772 [verbose] > "A",
00:00:18 #773 [verbose] > fun input ->
00:00:18 #774 [verbose] > input
00:00:18 #775 [verbose] > |> Seq.toList
00:00:18 #776 [verbose] > |> List.fold (fun acc x -> if List.contains x acc then acc else acc @ [[
00:00:18 #777 [verbose] > x ]]) [[]]
00:00:18 #778 [verbose] > |> Seq.toArray
00:00:18 #779 [verbose] > |> String
00:00:18 #780 [verbose] >
00:00:18 #781 [verbose] > "B",
00:00:18 #782 [verbose] > fun input ->
00:00:18 #783 [verbose] > input
00:00:18 #784 [verbose] > |> Seq.rev
00:00:18 #785 [verbose] > |> fun list -> Seq.foldBack (fun x acc -> if List.contains x acc then
00:00:18 #786 [verbose] > acc else x :: acc) list [[]]
00:00:18 #787 [verbose] > |> Seq.rev
00:00:18 #788 [verbose] > |> Seq.toArray
00:00:18 #789 [verbose] > |> String
00:00:18 #790 [verbose] >
00:00:18 #791 [verbose] > "C",
00:00:18 #792 [verbose] > fun input ->
00:00:18 #793 [verbose] > input
00:00:18 #794 [verbose] > |> Seq.rev
00:00:18 #795 [verbose] > |> fun list -> Seq.foldBack (fun x (set, acc) -> if Set.contains x set
00:00:18 #796 [verbose] > then set, acc else set.Add x, x :: acc) list (Set.empty, [[]])
00:00:18 #797 [verbose] > |> snd
00:00:18 #798 [verbose] > |> Seq.rev
00:00:18 #799 [verbose] > |> Seq.toArray
00:00:18 #800 [verbose] > |> String
00:00:18 #801 [verbose] >
00:00:18 #802 [verbose] > "D",
00:00:18 #803 [verbose] > fun input ->
00:00:18 #804 [verbose] > input
00:00:18 #805 [verbose] > |> Seq.fold (fun (set, acc) x -> if Set.contains x set then set, acc
00:00:18 #806 [verbose] > else set.Add x, Array.append acc [[| x |]]) (Set.empty, [[||]])
00:00:18 #807 [verbose] > |> snd
00:00:18 #808 [verbose] > |> String
00:00:18 #809 [verbose] >
00:00:18 #810 [verbose] > "E",
00:00:18 #811 [verbose] > fun input ->
00:00:18 #812 [verbose] > input
00:00:18 #813 [verbose] > |> Seq.fold (fun (set, acc) x -> if Set.contains x set then set, acc
00:00:18 #814 [verbose] > else set.Add x, x :: acc) (Set.empty, [[]])
00:00:18 #815 [verbose] > |> snd
00:00:18 #816 [verbose] > |> List.rev
00:00:18 #817 [verbose] > |> List.toArray
00:00:18 #818 [verbose] > |> String
00:00:18 #819 [verbose] >
00:00:18 #820 [verbose] > "F",
00:00:18 #821 [verbose] > fun input ->
00:00:18 #822 [verbose] > input
00:00:18 #823 [verbose] > |> Seq.fold (fun (set, acc) x -> if Set.contains x set then set, acc
00:00:18 #824 [verbose] > else set.Add x, acc @ [[ x ]]) (Set.empty, [[]])
00:00:18 #825 [verbose] > |> snd
00:00:18 #826 [verbose] > |> List.toArray
00:00:18 #827 [verbose] > |> String
00:00:18 #828 [verbose] >
00:00:18 #829 [verbose] > "G",
00:00:18 #830 [verbose] > fun input ->
00:00:18 #831 [verbose] > input
00:00:18 #832 [verbose] > |> Seq.fold (fun (set, acc) x -> if Set.contains x set then set, acc
00:00:18 #833 [verbose] > else set.Add x, x :: acc) (Set.empty, [[]])
00:00:18 #834 [verbose] > |> snd
00:00:18 #835 [verbose] > |> List.toArray
00:00:18 #836 [verbose] > |> Array.rev
00:00:18 #837 [verbose] > |> String
00:00:18 #838 [verbose] >
00:00:18 #839 [verbose] > "H",
00:00:18 #840 [verbose] > fun input ->
00:00:18 #841 [verbose] > input
00:00:18 #842 [verbose] > |> Seq.toList
00:00:18 #843 [verbose] > |> fun list ->
00:00:18 #844 [verbose] > let rec loop set = function
00:00:18 #845 [verbose] > | head :: tail when Set.contains head set -> loop set tail
00:00:18 #846 [verbose] > | head :: tail -> (loop (set.Add head) tail) @ [[ head ]]
00:00:18 #847 [verbose] > | [[]] -> [[]]
00:00:18 #848 [verbose] > loop Set.empty list
00:00:18 #849 [verbose] > |> List.rev
00:00:18 #850 [verbose] > |> List.toArray
00:00:18 #851 [verbose] > |> String
00:00:18 #852 [verbose] >
00:00:18 #853 [verbose] > "I",
00:00:18 #854 [verbose] > fun input ->
00:00:18 #855 [verbose] > input
00:00:18 #856 [verbose] > |> Seq.toList
00:00:18 #857 [verbose] > |> fun list ->
00:00:18 #858 [verbose] > let rec loop set = function
00:00:18 #859 [verbose] > | head :: tail when Set.contains head set -> loop set tail
00:00:18 #860 [verbose] > | head :: tail -> loop (set.Add head) tail |> Array.append [[|
00:00:18 #861 [verbose] > head |]]
00:00:18 #862 [verbose] > | [[]] -> [[||]]
00:00:18 #863 [verbose] > loop Set.empty list
00:00:18 #864 [verbose] > |> String
00:00:18 #865 [verbose] >
00:00:18 #866 [verbose] > "J",
00:00:18 #867 [verbose] > fun input ->
00:00:18 #868 [verbose] > input
00:00:18 #869 [verbose] > |> Seq.toList
00:00:18 #870 [verbose] > |> fun list ->
00:00:18 #871 [verbose] > let rec loop set = function
00:00:18 #872 [verbose] > | head :: tail when Set.contains head set -> loop set tail
00:00:18 #873 [verbose] > | head :: tail -> head :: loop (set.Add head) tail
00:00:18 #874 [verbose] > | [[]] -> [[]]
00:00:18 #875 [verbose] > loop Set.empty list
00:00:18 #876 [verbose] > |> List.toArray
00:00:18 #877 [verbose] > |> String
00:00:18 #878 [verbose] >
00:00:18 #879 [verbose] > "K",
00:00:18 #880 [verbose] > fun input ->
00:00:18 #881 [verbose] > input
00:00:18 #882 [verbose] > |> Seq.distinct
00:00:18 #883 [verbose] > |> Seq.toArray
00:00:18 #884 [verbose] > |> String
00:00:18 #885 [verbose] > ]]
00:00:18 #886 [verbose] > let testCases = seq {
00:00:18 #887 [verbose] > "abc", "abc"
00:00:18 #888 [verbose] > "accabb", "acb"
00:00:18 #889 [verbose] > "pprrqqpp", "prq"
00:00:18 #890 [verbose] >
00:00:18 #891 [verbose] > "aaaaaaaaaaaaaaccccccabbbbbbbaaacccbbbaaccccccccccacbbbbbbbbbbbbbcccccccbbbbbbbb
00:00:18 #892 [verbose] > ", "acb"
00:00:18 #893 [verbose] > }
00:00:18 #894 [verbose] > let rec uniqueLettersTests = runAll (nameof uniqueLettersTests) _count solutions
00:00:18 #895 [verbose] > testCases
00:00:18 #896 [verbose] > uniqueLettersTests
00:00:18 #897 [verbose] > |> sortResultList
00:00:24 #898 [verbose] >
00:00:25 #899 [verbose] > ╭─[ 6.42s - stdout ]───────────────────────────────────────────────────────────╮
00:00:25 #900 [verbose] > │ │
00:00:25 #901 [verbose] > │ │
00:00:25 #902 [verbose] > │ Test: uniqueLettersTests │
00:00:25 #903 [verbose] > │ │
00:00:25 #904 [verbose] > │ Solution: abc │
00:00:25 #905 [verbose] > │ Test case 1. A. Time: 3L │
00:00:25 #906 [verbose] > │ Test case 2. B. Time: 3L │
00:00:25 #907 [verbose] > │ Test case 3. C. Time: 5L │
00:00:25 #908 [verbose] > │ Test case 4. D. Time: 2L │
00:00:25 #909 [verbose] > │ Test case 5. E. Time: 2L │
00:00:25 #910 [verbose] > │ Test case 6. F. Time: 1L │
00:00:25 #911 [verbose] > │ Test case 7. G. Time: 2L │
00:00:25 #912 [verbose] > │ Test case 8. H. Time: 2L │
00:00:25 #913 [verbose] > │ Test case 9. I. Time: 2L │
00:00:25 #914 [verbose] > │ Test case 10. J. Time: 2L │
00:00:25 #915 [verbose] > │ Test case 11. K. Time: 2L │
00:00:25 #916 [verbose] > │ │
00:00:25 #917 [verbose] > │ Solution: accabb │
00:00:25 #918 [verbose] > │ Test case 1. A. Time: 1L │
00:00:25 #919 [verbose] > │ Test case 2. B. Time: 1L │
00:00:25 #920 [verbose] > │ Test case 3. C. Time: 1L │
00:00:25 #921 [verbose] > │ Test case 4. D. Time: 0L │
00:00:25 #922 [verbose] > │ Test case 5. E. Time: 1L │
00:00:25 #923 [verbose] > │ Test case 6. F. Time: 1L │
00:00:25 #924 [verbose] > │ Test case 7. G. Time: 0L │
00:00:25 #925 [verbose] > │ Test case 8. H. Time: 0L │
00:00:25 #926 [verbose] > │ Test case 9. I. Time: 0L │
00:00:25 #927 [verbose] > │ Test case 10. J. Time: 0L │
00:00:25 #928 [verbose] > │ Test case 11. K. Time: 1L │
00:00:25 #929 [verbose] > │ │
00:00:25 #930 [verbose] > │ Solution: pprrqqpp │
00:00:25 #931 [verbose] > │ Test case 1. A. Time: 0L │
00:00:25 #932 [verbose] > │ Test case 2. B. Time: 1L │
00:00:25 #933 [verbose] > │ Test case 3. C. Time: 1L │
00:00:25 #934 [verbose] > │ Test case 4. D. Time: 1L │
00:00:25 #935 [verbose] > │ Test case 5. E. Time: 1L │
00:00:25 #936 [verbose] > │ Test case 6. F. Time: 1L │
00:00:25 #937 [verbose] > │ Test case 7. G. Time: 1L │
00:00:25 #938 [verbose] > │ Test case 8. H. Time: 1L │
00:00:25 #939 [verbose] > │ Test case 9. I. Time: 1L │
00:00:25 #940 [verbose] > │ Test case 10. J. Time: 1L │
00:00:25 #941 [verbose] > │ Test case 11. K. Time: 1L │
00:00:25 #942 [verbose] > │ │
00:00:25 #943 [verbose] > │ Solution: │
00:00:25 #944 [verbose] > │ aaaaaaaaaaaaaaccccccabbbbbbbaaacccbbbaaccccccccccacbbbbbbbbbbbbbcccccccbbbbb │
00:00:25 #945 [verbose] > │ bbb │
00:00:25 #946 [verbose] > │ Test case 1. A. Time: 12L │
00:00:25 #947 [verbose] > │ Test case 2. B. Time: 9L │
00:00:25 #948 [verbose] > │ Test case 3. C. Time: 11L │
00:00:25 #949 [verbose] > │ Test case 4. D. Time: 8L │
00:00:25 #950 [verbose] > │ Test case 5. E. Time: 9L │
00:00:25 #951 [verbose] > │ Test case 6. F. Time: 10L │
00:00:25 #952 [verbose] > │ Test case 7. G. Time: 8L │
00:00:25 #953 [verbose] > │ Test case 8. H. Time: 10L │
00:00:25 #954 [verbose] > │ Test case 9. I. Time: 8L │
00:00:25 #955 [verbose] > │ Test case 10. J. Time: 7L │
00:00:25 #956 [verbose] > │ Test case 11. K. Time: 3L │
00:00:25 #957 [verbose] > │ │
00:00:25 #958 [verbose] > │ Input │
00:00:25 #959 [verbose] > │ | Expected | Result | Best │
00:00:25 #960 [verbose] > │ --- │
00:00:25 #961 [verbose] > │ | --- | --- | --- │
00:00:25 #962 [verbose] > │ abc │
00:00:25 #963 [verbose] > │ | abc | abc | (6, 1) │
00:00:25 #964 [verbose] > │ accabb │
00:00:25 #965 [verbose] > │ | acb | acb | (4, 0) │
00:00:25 #966 [verbose] > │ pprrqqpp │
00:00:25 #967 [verbose] > │ | prq | prq | (1, 0) │
00:00:25 #968 [verbose] > │ aaaaaaaaaaaaaaccccccabbbbbbbaaacccbbbaaccccccccccacbbbbbbbbbbbbbcccccccbbbbb │
00:00:25 #969 [verbose] > │ bbb | acb | acb | (11, 3) │
00:00:25 #970 [verbose] > │ │
00:00:25 #971 [verbose] > │ Average Ranking │
00:00:25 #972 [verbose] > │ Test case 11. Average Time: 1L │
00:00:25 #973 [verbose] > │ Test case 4. Average Time: 2L │
00:00:25 #974 [verbose] > │ Test case 7. Average Time: 2L │
00:00:25 #975 [verbose] > │ Test case 9. Average Time: 2L │
00:00:25 #976 [verbose] > │ Test case 10. Average Time: 2L │
00:00:25 #977 [verbose] > │ Test case 2. Average Time: 3L │
00:00:25 #978 [verbose] > │ Test case 5. Average Time: 3L │
00:00:25 #979 [verbose] > │ Test case 6. Average Time: 3L │
00:00:25 #980 [verbose] > │ Test case 8. Average Time: 3L │
00:00:25 #981 [verbose] > │ Test case 1. Average Time: 4L │
00:00:25 #982 [verbose] > │ Test case 3. Average Time: 4L │
00:00:25 #983 [verbose] > │ │
00:00:25 #984 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:25 #985 [verbose] >
00:00:25 #986 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:25 #987 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:25 #988 [verbose] > │ ## rotateStringsTests │
00:00:25 #989 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:25 #990 [verbose] >
00:00:25 #991 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:25 #992 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:25 #993 [verbose] > │ https://www.hackerrank.com/challenges/rotate-string/forum │
00:00:25 #994 [verbose] > │ │
00:00:25 #995 [verbose] > │ Test: RotateStrings │
00:00:25 #996 [verbose] > │ │
00:00:25 #997 [verbose] > │ Solution: abc │
00:00:25 #998 [verbose] > │ Test case 1. A. Time: 1842L │
00:00:25 #999 [verbose] > │ Test case 2. B. Time: 1846L │
00:00:25 #1000 [verbose] > │ Test case 3. C. Time: 1936L │
00:00:25 #1001 [verbose] > │ Test case 4. CA. Time: 2224L │
00:00:25 #1002 [verbose] > │ Test case 5. CB. Time: 2329L │
00:00:25 #1003 [verbose] > │ Test case 6. D. Time: 2474L │
00:00:25 #1004 [verbose] > │ Test case 7. E. Time: 1664L │
00:00:25 #1005 [verbose] > │ Test case 8. F. Time: 1517L │
00:00:25 #1006 [verbose] > │ Test case 9. FA. Time: 1651L │
00:00:25 #1007 [verbose] > │ Test case 10. FB. Time: 3764L │
00:00:25 #1008 [verbose] > │ Test case 11. FC. Time: 5415L │
00:00:25 #1009 [verbose] > │ │
00:00:25 #1010 [verbose] > │ Solution: abcde │
00:00:25 #1011 [verbose] > │ Test case 1. A. Time: 3356L │
00:00:25 #1012 [verbose] > │ Test case 2. B. Time: 2592L │
00:00:25 #1013 [verbose] > │ Test case 3. C. Time: 2346L │
00:00:25 #1014 [verbose] > │ Test case 4. CA. Time: 2997L │
00:00:25 #1015 [verbose] > │ Test case 5. CB. Time: 3061L │
00:00:25 #1016 [verbose] > │ Test case 6. D. Time: 4051L │
00:00:25 #1017 [verbose] > │ Test case 7. E. Time: 1905L │
00:00:25 #1018 [verbose] > │ Test case 8. F. Time: 1771L │
00:00:25 #1019 [verbose] > │ Test case 9. FA. Time: 2175L │
00:00:25 #1020 [verbose] > │ Test case 10. FB. Time: 3275L │
00:00:25 #1021 [verbose] > │ Test case 11. FC. Time: 5266L │
00:00:25 #1022 [verbose] > │ │
00:00:25 #1023 [verbose] > │ Solution: abcdefghi │
00:00:25 #1024 [verbose] > │ Test case 1. A. Time: 4492L │
00:00:25 #1025 [verbose] > │ Test case 2. B. Time: 3526L │
00:00:25 #1026 [verbose] > │ Test case 3. C. Time: 3583L │
00:00:25 #1027 [verbose] > │ Test case 4. CA. Time: 3711L │
00:00:25 #1028 [verbose] > │ Test case 5. CB. Time: 4783L │
00:00:25 #1029 [verbose] > │ Test case 6. D. Time: 7557L │
00:00:25 #1030 [verbose] > │ Test case 7. E. Time: 3452L │
00:00:25 #1031 [verbose] > │ Test case 8. F. Time: 3050L │
00:00:25 #1032 [verbose] > │ Test case 9. FA. Time: 3275L │
00:00:25 #1033 [verbose] > │ Test case 10. FB. Time: 4635L │
00:00:25 #1034 [verbose] > │ Test case 11. FC. Time: 5616L │
00:00:25 #1035 [verbose] > │ │
00:00:25 #1036 [verbose] > │ Solution: abab │
00:00:25 #1037 [verbose] > │ Test case 1. A. Time: 2093L │
00:00:25 #1038 [verbose] > │ Test case 2. B. Time: 1843L │
00:00:25 #1039 [verbose] > │ Test case 3. C. Time: 1746L │
00:00:25 #1040 [verbose] > │ Test case 4. CA. Time: 2085L │
00:00:25 #1041 [verbose] > │ Test case 5. CB. Time: 2139L │
00:00:25 #1042 [verbose] > │ Test case 6. D. Time: 2095L │
00:00:25 #1043 [verbose] > │ Test case 7. E. Time: 1723L │
00:00:25 #1044 [verbose] > │ Test case 8. F. Time: 1558L │
00:00:25 #1045 [verbose] > │ Test case 9. FA. Time: 1620L │
00:00:25 #1046 [verbose] > │ Test case 10. FB. Time: 2319L │
00:00:25 #1047 [verbose] > │ Test case 11. FC. Time: 3918L │
00:00:25 #1048 [verbose] > │ │
00:00:25 #1049 [verbose] > │ Solution: aa │
00:00:25 #1050 [verbose] > │ Test case 1. A. Time: 1107L │
00:00:25 #1051 [verbose] > │ Test case 2. B. Time: 1241L │
00:00:25 #1052 [verbose] > │ Test case 3. C. Time: 1183L │
00:00:25 #1053 [verbose] > │ Test case 4. CA. Time: 1563L │
00:00:25 #1054 [verbose] > │ Test case 5. CB. Time: 1525L │
00:00:25 #1055 [verbose] > │ Test case 6. D. Time: 1591L │
00:00:25 #1056 [verbose] > │ Test case 7. E. Time: 1327L │
00:00:25 #1057 [verbose] > │ Test case 8. F. Time: 1151L │
00:00:25 #1058 [verbose] > │ Test case 9. FA. Time: 1180L │
00:00:25 #1059 [verbose] > │ Test case 10. FB. Time: 1733L │
00:00:25 #1060 [verbose] > │ Test case 11. FC. Time: 2817L │
00:00:25 #1061 [verbose] > │ │
00:00:25 #1062 [verbose] > │ Solution: z │
00:00:25 #1063 [verbose] > │ Test case 1. A. Time: 816L │
00:00:25 #1064 [verbose] > │ Test case 2. B. Time: 745L │
00:00:25 #1065 [verbose] > │ Test case 3. C. Time: 928L │
00:00:25 #1066 [verbose] > │ Test case 4. CA. Time: 1375L │
00:00:25 #1067 [verbose] > │ Test case 5. CB. Time: 1029L │
00:00:25 #1068 [verbose] > │ Test case 6. D. Time: 852L │
00:00:25 #1069 [verbose] > │ Test case 7. E. Time: 712L │
00:00:25 #1070 [verbose] > │ Test case 8. F. Time: 263L │
00:00:25 #1071 [verbose] > │ Test case 9. FA. Time: 232L │
00:00:25 #1072 [verbose] > │ Test case 10. FB. Time: 773L │
00:00:25 #1073 [verbose] > │ Test case 11. FC. Time: 1789L │
00:00:25 #1074 [verbose] > │ │
00:00:25 #1075 [verbose] > │ Input | Expected │
00:00:25 #1076 [verbose] > │ │
00:00:25 #1077 [verbose] > │ | Result │
00:00:25 #1078 [verbose] > │ │
00:00:25 #1079 [verbose] > │ | Best │
00:00:25 #1080 [verbose] > │ --- | --- │
00:00:25 #1081 [verbose] > │ │
00:00:25 #1082 [verbose] > │ | --- │
00:00:25 #1083 [verbose] > │ │
00:00:25 #1084 [verbose] > │ | --- │
00:00:25 #1085 [verbose] > │ abc | bca cab abc │
00:00:25 #1086 [verbose] > │ │
00:00:25 #1087 [verbose] > │ | bca cab abc │
00:00:25 #1088 [verbose] > │ │
00:00:25 #1089 [verbose] > │ | (8, 1517) │
00:00:25 #1090 [verbose] > │ abcde | bcdea cdeab deabc eabcd abcde │
00:00:25 #1091 [verbose] > │ | bcdea cdeab deabc eabcd abcde │
00:00:25 #1092 [verbose] > │ | (8, 1771) │
00:00:25 #1093 [verbose] > │ abcdefghi | bcdefghia cdefghiab defghiabc efghiabcd fghiabcde │
00:00:25 #1094 [verbose] > │ ghiabcdef hiabcdefg iabcdefgh abcdefghi | bcdefghia cdefghiab │
00:00:25 #1095 [verbose] > │ defghiabc efghiabcd fghiabcde ghiabcdef hiabcdefg iabcdefgh abcdefghi │
00:00:25 #1096 [verbose] > │ | (8, 3050) │
00:00:25 #1097 [verbose] > │ abab | baba abab baba abab │
00:00:25 #1098 [verbose] > │ │
00:00:25 #1099 [verbose] > │ | baba abab baba abab │
00:00:25 #1100 [verbose] > │ │
00:00:25 #1101 [verbose] > │ | (8, 1558) │
00:00:25 #1102 [verbose] > │ aa | aa aa │
00:00:25 #1103 [verbose] > │ │
00:00:25 #1104 [verbose] > │ | aa aa │
00:00:25 #1105 [verbose] > │ │
00:00:25 #1106 [verbose] > │ | (1, 1107) │
00:00:25 #1107 [verbose] > │ z | z │
00:00:25 #1108 [verbose] > │ │
00:00:25 #1109 [verbose] > │ | z │
00:00:25 #1110 [verbose] > │ │
00:00:25 #1111 [verbose] > │ | (9, 232) │
00:00:25 #1112 [verbose] > │ │
00:00:25 #1113 [verbose] > │ Averages │
00:00:25 #1114 [verbose] > │ Test case 1. Average Time: 2284L │
00:00:25 #1115 [verbose] > │ Test case 2. Average Time: 1965L │
00:00:25 #1116 [verbose] > │ Test case 3. Average Time: 1953L │
00:00:25 #1117 [verbose] > │ Test case 4. Average Time: 2325L │
00:00:25 #1118 [verbose] > │ Test case 5. Average Time: 2477L │
00:00:25 #1119 [verbose] > │ Test case 6. Average Time: 3103L │
00:00:25 #1120 [verbose] > │ Test case 7. Average Time: 1797L │
00:00:25 #1121 [verbose] > │ Test case 8. Average Time: 1551L │
00:00:25 #1122 [verbose] > │ Test case 9. Average Time: 1688L │
00:00:25 #1123 [verbose] > │ Test case 10. Average Time: 2749L │
00:00:25 #1124 [verbose] > │ Test case 11. Average Time: 4136L │
00:00:25 #1125 [verbose] > │ │
00:00:25 #1126 [verbose] > │ Ranking │
00:00:25 #1127 [verbose] > │ Test case 11. Average Time: 4136L │
00:00:25 #1128 [verbose] > │ Test case 6. Average Time: 3103L │
00:00:25 #1129 [verbose] > │ Test case 10. Average Time: 2749L │
00:00:25 #1130 [verbose] > │ Test case 5. Average Time: 2477L │
00:00:25 #1131 [verbose] > │ Test case 4. Average Time: 2325L │
00:00:25 #1132 [verbose] > │ Test case 1. Average Time: 2284L │
00:00:25 #1133 [verbose] > │ Test case 2. Average Time: 1965L │
00:00:25 #1134 [verbose] > │ Test case 3. Average Time: 1953L │
00:00:25 #1135 [verbose] > │ Test case 7. Average Time: 1797L │
00:00:25 #1136 [verbose] > │ Test case 9. Average Time: 1688L │
00:00:25 #1137 [verbose] > │ Test case 8. Average Time: 1551L │
00:00:25 #1138 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:25 #1139 [verbose] >
00:00:25 #1140 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:00:25 #1141 [verbose] > //// test
00:00:25 #1142 [verbose] >
00:00:25 #1143 [verbose] > let solutions = [[
00:00:25 #1144 [verbose] > "A",
00:00:25 #1145 [verbose] > fun (input: string) ->
00:00:25 #1146 [verbose] > let resultList =
00:00:25 #1147 [verbose] > List.fold (fun acc x ->
00:00:25 #1148 [verbose] > let rotate (text: string) (letter: string) = (text |>
00:00:25 #1149 [verbose] > SpiralSm.slice 1 (input.Length - 1)) + letter
00:00:25 #1150 [verbose] > [[ rotate (if acc.IsEmpty then input else acc.Head) (string x)
00:00:25 #1151 [verbose] > ]] @ acc
00:00:25 #1152 [verbose] > ) [[]] (Seq.toList input)
00:00:25 #1153 [verbose] >
00:00:25 #1154 [verbose] > (resultList, "")
00:00:25 #1155 [verbose] > ||> List.foldBack (fun acc x -> x + acc + " ")
00:00:25 #1156 [verbose] > |> _.TrimEnd()
00:00:25 #1157 [verbose] >
00:00:25 #1158 [verbose] > "B",
00:00:25 #1159 [verbose] > fun input ->
00:00:25 #1160 [verbose] > input
00:00:25 #1161 [verbose] > |> Seq.toList
00:00:25 #1162 [verbose] > |> List.fold (fun (acc: string list) letter ->
00:00:25 #1163 [verbose] > let last =
00:00:25 #1164 [verbose] > if acc.IsEmpty
00:00:25 #1165 [verbose] > then input
00:00:25 #1166 [verbose] > else acc.Head
00:00:25 #1167 [verbose] >
00:00:25 #1168 [verbose] > let item = last.[[1 .. input.Length - 1]] + string letter
00:00:25 #1169 [verbose] >
00:00:25 #1170 [verbose] > item :: acc
00:00:25 #1171 [verbose] > ) [[]]
00:00:25 #1172 [verbose] > |> List.rev
00:00:25 #1173 [verbose] > |> SpiralSm.concat " "
00:00:25 #1174 [verbose] >
00:00:25 #1175 [verbose] > "C",
00:00:25 #1176 [verbose] > fun input ->
00:00:25 #1177 [verbose] > input
00:00:25 #1178 [verbose] > |> Seq.toList
00:00:25 #1179 [verbose] > |> List.fold (fun (acc: string list) letter -> acc.Head.[[ 1 ..
00:00:25 #1180 [verbose] > input.Length - 1 ]] + string letter :: acc) [[ input ]]
00:00:25 #1181 [verbose] > |> List.rev
00:00:25 #1182 [verbose] > |> List.skip 1
00:00:25 #1183 [verbose] > |> SpiralSm.concat " "
00:00:25 #1184 [verbose] >
00:00:25 #1185 [verbose] > "CA",
00:00:25 #1186 [verbose] > fun input ->
00:00:25 #1187 [verbose] > input
00:00:25 #1188 [verbose] > |> Seq.fold (fun (acc: string list) letter -> acc.Head.[[ 1 ..
00:00:25 #1189 [verbose] > input.Length - 1 ]] + string letter :: acc) [[ input ]]
00:00:25 #1190 [verbose] > |> Seq.rev
00:00:25 #1191 [verbose] > |> Seq.skip 1
00:00:25 #1192 [verbose] > |> SpiralSm.concat " "
00:00:25 #1193 [verbose] >
00:00:25 #1194 [verbose] > "CB",
00:00:25 #1195 [verbose] > fun input ->
00:00:25 #1196 [verbose] > input
00:00:25 #1197 [verbose] > |> Seq.toArray
00:00:25 #1198 [verbose] > |> Array.fold (fun (acc: string[[]]) letter -> acc |> Array.append [[|
00:00:25 #1199 [verbose] > acc.[[0]].[[ 1 .. input.Length - 1 ]] + string letter |]]) [[| input |]]
00:00:25 #1200 [verbose] > |> Array.rev
00:00:25 #1201 [verbose] > |> Array.skip 1
00:00:25 #1202 [verbose] > |> SpiralSm.concat " "
00:00:25 #1203 [verbose] >
00:00:25 #1204 [verbose] > "D",
00:00:25 #1205 [verbose] > fun input ->
00:00:25 #1206 [verbose] > input
00:00:25 #1207 [verbose] > |> Seq.toList
00:00:25 #1208 [verbose] > |> fun list ->
00:00:25 #1209 [verbose] > let rec loop (acc: char list list) = function
00:00:25 #1210 [verbose] > | _ when acc.Length = list.Length -> acc
00:00:25 #1211 [verbose] > | head :: tail ->
00:00:25 #1212 [verbose] > let item = tail @ [[ head ]]
00:00:25 #1213 [verbose] > loop (item :: acc) item
00:00:25 #1214 [verbose] > | [[]] -> [[]]
00:00:25 #1215 [verbose] > loop [[]] list
00:00:25 #1216 [verbose] > |> List.rev
00:00:25 #1217 [verbose] > |> List.map (List.toArray >> String)
00:00:25 #1218 [verbose] > |> SpiralSm.concat " "
00:00:25 #1219 [verbose] >
00:00:25 #1220 [verbose] > "E",
00:00:25 #1221 [verbose] > fun input ->
00:00:25 #1222 [verbose] > input
00:00:25 #1223 [verbose] > |> Seq.toList
00:00:25 #1224 [verbose] > |> fun list ->
00:00:25 #1225 [verbose] > let rec loop (last: string) = function
00:00:25 #1226 [verbose] > | head :: tail ->
00:00:25 #1227 [verbose] > let item = last.[[1 .. input.Length - 1]] + string head
00:00:25 #1228 [verbose] > item :: loop item tail
00:00:25 #1229 [verbose] > | [[]] -> [[]]
00:00:25 #1230 [verbose] > loop input list
00:00:25 #1231 [verbose] > |> SpiralSm.concat " "
00:00:25 #1232 [verbose] >
00:00:25 #1233 [verbose] > "F",
00:00:25 #1234 [verbose] > fun input ->
00:00:25 #1235 [verbose] > Array.singleton 0
00:00:25 #1236 [verbose] > |> Array.append [[| 1 .. input.Length - 1 |]]
00:00:25 #1237 [verbose] > |> Array.map (fun i -> input.[[ i .. ]] + input.[[ .. i - 1 ]])
00:00:25 #1238 [verbose] > |> SpiralSm.concat " "
00:00:25 #1239 [verbose] >
00:00:25 #1240 [verbose] > "FA",
00:00:25 #1241 [verbose] > fun input ->
00:00:25 #1242 [verbose] > List.singleton 0
00:00:25 #1243 [verbose] > |> List.append [[ 1 .. input.Length - 1 ]]
00:00:25 #1244 [verbose] > |> List.map (fun i -> input.[[ i .. ]] + input.[[ .. i - 1 ]])
00:00:25 #1245 [verbose] > |> SpiralSm.concat " "
00:00:25 #1246 [verbose] >
00:00:25 #1247 [verbose] > "FB",
00:00:25 #1248 [verbose] > fun input ->
00:00:25 #1249 [verbose] > Seq.singleton 0
00:00:25 #1250 [verbose] > |> Seq.append (seq { 1 .. input.Length - 1 })
00:00:25 #1251 [verbose] > |> Seq.map (fun i -> input.[[ i .. ]] + input.[[ .. i - 1 ]])
00:00:25 #1252 [verbose] > |> SpiralSm.concat " "
00:00:25 #1253 [verbose] >
00:00:25 #1254 [verbose] > "FC",
00:00:25 #1255 [verbose] > fun input ->
00:00:25 #1256 [verbose] > Array.singleton 0
00:00:25 #1257 [verbose] > |> Array.append [[| 1 .. input.Length - 1 |]]
00:00:25 #1258 [verbose] > |> Array.Parallel.map (fun i -> input.[[ i .. ]] + input.[[ .. i - 1 ]])
00:00:25 #1259 [verbose] > |> SpiralSm.concat " "
00:00:25 #1260 [verbose] > ]]
00:00:25 #1261 [verbose] > let testCases = seq {
00:00:25 #1262 [verbose] > "abc", "bca cab abc"
00:00:25 #1263 [verbose] > "abcde", "bcdea cdeab deabc eabcd abcde"
00:00:25 #1264 [verbose] > "abcdefghi", "bcdefghia cdefghiab defghiabc efghiabcd fghiabcde ghiabcdef
00:00:25 #1265 [verbose] > hiabcdefg iabcdefgh abcdefghi"
00:00:25 #1266 [verbose] > "abab", "baba abab baba abab"
00:00:25 #1267 [verbose] > "aa", "aa aa"
00:00:25 #1268 [verbose] > "z", "z"
00:00:25 #1269 [verbose] > }
00:00:25 #1270 [verbose] > let rec rotateStringsTests = runAll (nameof rotateStringsTests) _count solutions
00:00:25 #1271 [verbose] > testCases
00:00:25 #1272 [verbose] > rotateStringsTests
00:00:25 #1273 [verbose] > |> sortResultList
00:00:34 #1274 [verbose] >
00:00:34 #1275 [verbose] > ╭─[ 9.17s - stdout ]───────────────────────────────────────────────────────────╮
00:00:34 #1276 [verbose] > │ │
00:00:34 #1277 [verbose] > │ │
00:00:34 #1278 [verbose] > │ Test: rotateStringsTests │
00:00:34 #1279 [verbose] > │ │
00:00:34 #1280 [verbose] > │ Solution: abc │
00:00:34 #1281 [verbose] > │ Test case 1. A. Time: 2L │
00:00:34 #1282 [verbose] > │ Test case 2. B. Time: 2L │
00:00:34 #1283 [verbose] > │ Test case 3. C. Time: 2L │
00:00:34 #1284 [verbose] > │ Test case 4. CA. Time: 3L │
00:00:34 #1285 [verbose] > │ Test case 5. CB. Time: 2L │
00:00:34 #1286 [verbose] > │ Test case 6. D. Time: 2L │
00:00:34 #1287 [verbose] > │ Test case 7. E. Time: 2L │
00:00:34 #1288 [verbose] > │ Test case 8. F. Time: 2L │
00:00:34 #1289 [verbose] > │ Test case 9. FA. Time: 2L │
00:00:34 #1290 [verbose] > │ Test case 10. FB. Time: 7L │
00:00:34 #1291 [verbose] > │ Test case 11. FC. Time: 7L │
00:00:34 #1292 [verbose] > │ │
00:00:34 #1293 [verbose] > │ Solution: abcde │
00:00:34 #1294 [verbose] > │ Test case 1. A. Time: 3L │
00:00:34 #1295 [verbose] > │ Test case 2. B. Time: 0L │
00:00:34 #1296 [verbose] > │ Test case 3. C. Time: 1L │
00:00:34 #1297 [verbose] > │ Test case 4. CA. Time: 1L │
00:00:34 #1298 [verbose] > │ Test case 5. CB. Time: 1L │
00:00:34 #1299 [verbose] > │ Test case 6. D. Time: 3L │
00:00:34 #1300 [verbose] > │ Test case 7. E. Time: 1L │
00:00:34 #1301 [verbose] > │ Test case 8. F. Time: 0L │
00:00:34 #1302 [verbose] > │ Test case 9. FA. Time: 1L │
00:00:34 #1303 [verbose] > │ Test case 10. FB. Time: 3L │
00:00:34 #1304 [verbose] > │ Test case 11. FC. Time: 5L │
00:00:34 #1305 [verbose] > │ │
00:00:34 #1306 [verbose] > │ Solution: abcdefghi │
00:00:34 #1307 [verbose] > │ Test case 1. A. Time: 5L │
00:00:34 #1308 [verbose] > │ Test case 2. B. Time: 2L │
00:00:34 #1309 [verbose] > │ Test case 3. C. Time: 3L │
00:00:34 #1310 [verbose] > │ Test case 4. CA. Time: 2L │
00:00:34 #1311 [verbose] > │ Test case 5. CB. Time: 4L │
00:00:34 #1312 [verbose] > │ Test case 6. D. Time: 7L │
00:00:34 #1313 [verbose] > │ Test case 7. E. Time: 4L │
00:00:34 #1314 [verbose] > │ Test case 8. F. Time: 0L │
00:00:34 #1315 [verbose] > │ Test case 9. FA. Time: 4L │
00:00:34 #1316 [verbose] > │ Test case 10. FB. Time: 2L │
00:00:34 #1317 [verbose] > │ Test case 11. FC. Time: 5L │
00:00:34 #1318 [verbose] > │ │
00:00:34 #1319 [verbose] > │ Solution: abab │
00:00:34 #1320 [verbose] > │ Test case 1. A. Time: 0L │
00:00:34 #1321 [verbose] > │ Test case 2. B. Time: 1L │
00:00:34 #1322 [verbose] > │ Test case 3. C. Time: 1L │
00:00:34 #1323 [verbose] > │ Test case 4. CA. Time: 1L │
00:00:34 #1324 [verbose] > │ Test case 5. CB. Time: 1L │
00:00:34 #1325 [verbose] > │ Test case 6. D. Time: 1L │
00:00:34 #1326 [verbose] > │ Test case 7. E. Time: 1L │
00:00:34 #1327 [verbose] > │ Test case 8. F. Time: 0L │
00:00:34 #1328 [verbose] > │ Test case 9. FA. Time: 0L │
00:00:34 #1329 [verbose] > │ Test case 10. FB. Time: 1L │
00:00:34 #1330 [verbose] > │ Test case 11. FC. Time: 4L │
00:00:34 #1331 [verbose] > │ │
00:00:34 #1332 [verbose] > │ Solution: aa │
00:00:34 #1333 [verbose] > │ Test case 1. A. Time: 0L │
00:00:34 #1334 [verbose] > │ Test case 2. B. Time: 0L │
00:00:34 #1335 [verbose] > │ Test case 3. C. Time: 0L │
00:00:34 #1336 [verbose] > │ Test case 4. CA. Time: 0L │
00:00:34 #1337 [verbose] > │ Test case 5. CB. Time: 0L │
00:00:34 #1338 [verbose] > │ Test case 6. D. Time: 0L │
00:00:34 #1339 [verbose] > │ Test case 7. E. Time: 0L │
00:00:34 #1340 [verbose] > │ Test case 8. F. Time: 0L │
00:00:34 #1341 [verbose] > │ Test case 9. FA. Time: 0L │
00:00:34 #1342 [verbose] > │ Test case 10. FB. Time: 0L │
00:00:34 #1343 [verbose] > │ Test case 11. FC. Time: 4L │
00:00:34 #1344 [verbose] > │ │
00:00:34 #1345 [verbose] > │ Solution: z │
00:00:34 #1346 [verbose] > │ Test case 1. A. Time: 0L │
00:00:34 #1347 [verbose] > │ Test case 2. B. Time: 0L │
00:00:34 #1348 [verbose] > │ Test case 3. C. Time: 0L │
00:00:34 #1349 [verbose] > │ Test case 4. CA. Time: 0L │
00:00:34 #1350 [verbose] > │ Test case 5. CB. Time: 0L │
00:00:34 #1351 [verbose] > │ Test case 6. D. Time: 0L │
00:00:34 #1352 [verbose] > │ Test case 7. E. Time: 0L │
00:00:34 #1353 [verbose] > │ Test case 8. F. Time: 0L │
00:00:34 #1354 [verbose] > │ Test case 9. FA. Time: 0L │
00:00:34 #1355 [verbose] > │ Test case 10. FB. Time: 0L │
00:00:34 #1356 [verbose] > │ Test case 11. FC. Time: 5L │
00:00:34 #1357 [verbose] > │ │
00:00:34 #1358 [verbose] > │ Input | Expected │
00:00:34 #1359 [verbose] > │ │
00:00:34 #1360 [verbose] > │ | Result │
00:00:34 #1361 [verbose] > │ │
00:00:34 #1362 [verbose] > │ | Best │
00:00:34 #1363 [verbose] > │ --- | --- │
00:00:34 #1364 [verbose] > │ │
00:00:34 #1365 [verbose] > │ | --- │
00:00:34 #1366 [verbose] > │ │
00:00:34 #1367 [verbose] > │ | --- │
00:00:34 #1368 [verbose] > │ abc | bca cab abc │
00:00:34 #1369 [verbose] > │ │
00:00:34 #1370 [verbose] > │ | bca cab abc │
00:00:34 #1371 [verbose] > │ │
00:00:34 #1372 [verbose] > │ | (1, 2) │
00:00:34 #1373 [verbose] > │ abcde | bcdea cdeab deabc eabcd abcde │
00:00:34 #1374 [verbose] > │ | bcdea cdeab deabc eabcd abcde │
00:00:34 #1375 [verbose] > │ | (2, 0) │
00:00:34 #1376 [verbose] > │ abcdefghi | bcdefghia cdefghiab defghiabc efghiabcd fghiabcde ghiabcdef │
00:00:34 #1377 [verbose] > │ hiabcdefg iabcdefgh abcdefghi | bcdefghia cdefghiab defghiabc efghiabcd │
00:00:34 #1378 [verbose] > │ fghiabcde ghiabcdef hiabcdefg iabcdefgh abcdefghi | (8, 0) │
00:00:34 #1379 [verbose] > │ abab | baba abab baba abab │
00:00:34 #1380 [verbose] > │ | baba abab baba abab │
00:00:34 #1381 [verbose] > │ | (1, 0) │
00:00:34 #1382 [verbose] > │ aa | aa aa │
00:00:34 #1383 [verbose] > │ │
00:00:34 #1384 [verbose] > │ | aa aa │
00:00:34 #1385 [verbose] > │ │
00:00:34 #1386 [verbose] > │ | (1, 0) │
00:00:34 #1387 [verbose] > │ z | z │
00:00:34 #1388 [verbose] > │ │
00:00:34 #1389 [verbose] > │ | z │
00:00:34 #1390 [verbose] > │ │
00:00:34 #1391 [verbose] > │ | (1, 0) │
00:00:34 #1392 [verbose] > │ │
00:00:34 #1393 [verbose] > │ Average Ranking │
00:00:34 #1394 [verbose] > │ Test case 2. Average Time: 0L │
00:00:34 #1395 [verbose] > │ Test case 8. Average Time: 0L │
00:00:34 #1396 [verbose] > │ Test case 1. Average Time: 1L │
00:00:34 #1397 [verbose] > │ Test case 3. Average Time: 1L │
00:00:34 #1398 [verbose] > │ Test case 4. Average Time: 1L │
00:00:34 #1399 [verbose] > │ Test case 5. Average Time: 1L │
00:00:34 #1400 [verbose] > │ Test case 7. Average Time: 1L │
00:00:34 #1401 [verbose] > │ Test case 9. Average Time: 1L │
00:00:34 #1402 [verbose] > │ Test case 6. Average Time: 2L │
00:00:34 #1403 [verbose] > │ Test case 10. Average Time: 2L │
00:00:34 #1404 [verbose] > │ Test case 11. Average Time: 5L │
00:00:34 #1405 [verbose] > │ │
00:00:34 #1406 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:34 #1407 [verbose] >
00:00:34 #1408 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:00:34 #1409 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:00:34 #1410 [verbose] > │ ## rotate_strings_tests │
00:00:34 #1411 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:00:34 #1412 [verbose] >
00:00:34 #1413 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:00:34 #1414 [verbose] > // // test
00:00:34 #1415 [verbose] > // // timeout=60000
00:00:34 #1416 [verbose] > // // print_code=true
00:00:34 #1417 [verbose] >
00:00:34 #1418 [verbose] > inl get_solutions () =
00:00:34 #1419 [verbose] > [[
00:00:34 #1420 [verbose] > // "A",
00:00:34 #1421 [verbose] > // fun (input : string) =>
00:00:34 #1422 [verbose] > // let resultList =
00:00:34 #1423 [verbose] > // List.fold (fun acc x =>
00:00:34 #1424 [verbose] > // let rotate (text : string) (letter : string) =
00:00:34 #1425 [verbose] > text.Substring (1, input.Length - 1) + letter
00:00:34 #1426 [verbose] > // [[ rotate (if acc.IsEmpty then input else acc.Head)
00:00:34 #1427 [verbose] > (string x) ]] /@ acc
00:00:34 #1428 [verbose] > // ) [[]] (Seq.toList input)
00:00:34 #1429 [verbose] >
00:00:34 #1430 [verbose] > // List.foldBack (fun acc x => x + acc + " ") resultList ""
00:00:34 #1431 [verbose] > // |> fun x => x.TrimEnd ()
00:00:34 #1432 [verbose] >
00:00:34 #1433 [verbose] > // "B",
00:00:34 #1434 [verbose] > // fun input =>
00:00:34 #1435 [verbose] > // input
00:00:34 #1436 [verbose] > // |> Seq.toList
00:00:34 #1437 [verbose] > // |> List.fold (fun (acc : string list) letter =>
00:00:34 #1438 [verbose] > // let last =
00:00:34 #1439 [verbose] > // if acc.IsEmpty
00:00:34 #1440 [verbose] > // then input
00:00:34 #1441 [verbose] > // else acc.Head
00:00:34 #1442 [verbose] >
00:00:34 #1443 [verbose] > // let item = last.[[1 .. input.Length - 1]] + string letter
00:00:34 #1444 [verbose] >
00:00:34 #1445 [verbose] > // item :: acc
00:00:34 #1446 [verbose] > // ) [[]]
00:00:34 #1447 [verbose] > // |> List.rev
00:00:34 #1448 [verbose] > // |> SpiralSm.concat " "
00:00:34 #1449 [verbose] >
00:00:34 #1450 [verbose] > // "C",
00:00:34 #1451 [verbose] > // fun input =>
00:00:34 #1452 [verbose] > // input
00:00:34 #1453 [verbose] > // |> Seq.toList
00:00:34 #1454 [verbose] > // |> List.fold (fun (acc : list string) letter => acc.Head.[[ 1 ..
00:00:34 #1455 [verbose] > input.Length - 1 ]] + string letter :: acc) [[ input ]]
00:00:34 #1456 [verbose] > // |> List.rev
00:00:34 #1457 [verbose] > // |> List.skip 1
00:00:34 #1458 [verbose] > // |> SpiralSm.concat " "
00:00:34 #1459 [verbose] >
00:00:34 #1460 [verbose] > // "CA",
00:00:34 #1461 [verbose] > // fun input =>
00:00:34 #1462 [verbose] > // input
00:00:34 #1463 [verbose] > // |> Seq.fold (fun (acc : list string) letter => acc.Head.[[ 1 ..
00:00:34 #1464 [verbose] > input.Length - 1 ]] + string letter :: acc) [[ input ]]
00:00:34 #1465 [verbose] > // |> Seq.rev
00:00:34 #1466 [verbose] > // |> Seq.skip 1
00:00:34 #1467 [verbose] > // |> SpiralSm.concat " "
00:00:34 #1468 [verbose] >
00:00:34 #1469 [verbose] > // "CB",
00:00:34 #1470 [verbose] > // fun input =>
00:00:34 #1471 [verbose] > // input
00:00:34 #1472 [verbose] > // |> Seq.toArray
00:00:34 #1473 [verbose] > // |> Array.fold (fun (acc : a _ string) letter => acc |>
00:00:34 #1474 [verbose] > Array.append (a ;[[ acc.[[0]].[[ 1 .. input.Length - 1 ]] + string letter ]]))
00:00:34 #1475 [verbose] > (a ;[[ input ]])
00:00:34 #1476 [verbose] > // |> Array.rev
00:00:34 #1477 [verbose] > // |> Array.skip 1
00:00:34 #1478 [verbose] > // |> SpiralSm.concat " "
00:00:34 #1479 [verbose] >
00:00:34 #1480 [verbose] > // "D",
00:00:34 #1481 [verbose] > // fun input =>
00:00:34 #1482 [verbose] > // input
00:00:34 #1483 [verbose] > // |> Seq.toList
00:00:34 #1484 [verbose] > // |> fun list =>
00:00:34 #1485 [verbose] > // let rec loop (acc : list (list char)) = function
00:00:34 #1486 [verbose] > // | _ when acc.Length = list.Length => acc
00:00:34 #1487 [verbose] > // | head :: tail =>
00:00:34 #1488 [verbose] > // let item = tail /@ [[ head ]]
00:00:34 #1489 [verbose] > // loop (item :: acc) item
00:00:34 #1490 [verbose] > // | [[]] => [[]]
00:00:34 #1491 [verbose] > // loop [[]] list
00:00:34 #1492 [verbose] > // |> List.rev
00:00:34 #1493 [verbose] > // |> List.map (List.toArray >> String)
00:00:34 #1494 [verbose] > // |> SpiralSm.concat " "
00:00:34 #1495 [verbose] >
00:00:34 #1496 [verbose] > // "E",
00:00:34 #1497 [verbose] > // fun input =>
00:00:34 #1498 [verbose] > // input
00:00:34 #1499 [verbose] > // |> Seq.toList
00:00:34 #1500 [verbose] > // |> fun list =>
00:00:34 #1501 [verbose] > // let rec loop (last : string) = function
00:00:34 #1502 [verbose] > // | head :: tail =>
00:00:34 #1503 [verbose] > // let item = last.[[1 .. input.Length - 1]] + string
00:00:34 #1504 [verbose] > head
00:00:34 #1505 [verbose] > // item :: loop item tail
00:00:34 #1506 [verbose] > // | [[]] => [[]]
00:00:34 #1507 [verbose] > // loop input list
00:00:34 #1508 [verbose] > // |> SpiralSm.concat " "
00:00:34 #1509 [verbose] >
00:00:34 #1510 [verbose] > "F",
00:00:34 #1511 [verbose] > fun input =>
00:00:34 #1512 [verbose] > // Array.singleton 0
00:00:34 #1513 [verbose] > // |> Array.append [[| 1 .. input.Length - 1 |]]
00:00:34 #1514 [verbose] > // |> Array.map (fun i -> input.[[ i .. ]] + input.[[ .. i - 1 ]])
00:00:34 #1515 [verbose] > // |> SpiralSm.concat " "
00:00:34 #1516 [verbose] > inl input_length = input |> sm.length
00:00:34 #1517 [verbose] > am.singleton 0i32
00:00:34 #1518 [verbose] > |> am.append (am'.init_series 1 (input_length - 1) 1)
00:00:34 #1519 [verbose] > |> am.map (fun i =>
00:00:34 #1520 [verbose] > inl a = input |> sm'.slice i (input_length - 1)
00:00:34 #1521 [verbose] > inl b = input |> sm'.slice 0 (i - 1)
00:00:34 #1522 [verbose] > $"!a + !b" : string
00:00:34 #1523 [verbose] > )
00:00:34 #1524 [verbose] > |> seq.of_array
00:00:34 #1525 [verbose] > |> sm'.concat " "
00:00:34 #1526 [verbose] >
00:00:34 #1527 [verbose] > "FA",
00:00:34 #1528 [verbose] > fun input =>
00:00:34 #1529 [verbose] > // List.singleton 0
00:00:34 #1530 [verbose] > // |> List.append [[ 1 .. input.Length - 1 ]]
00:00:34 #1531 [verbose] > // // |> List.map (fun i => input.[[ i .. ]] + input.[[ .. i - 1 ]])
00:00:34 #1532 [verbose] > // |> SpiralSm.concat " "
00:00:34 #1533 [verbose] > inl input_length = input |> sm.length
00:00:34 #1534 [verbose] > listm.singleton 0i32
00:00:34 #1535 [verbose] > |> listm.append (listm'.init_series 1 (input_length - 1) 1)
00:00:34 #1536 [verbose] > |> listm.map (fun i =>
00:00:34 #1537 [verbose] > inl a = input |> sm'.slice i (input_length - 1)
00:00:34 #1538 [verbose] > inl b = if i = 0 then "" else input |> sm'.slice 0 (i - 1)
00:00:34 #1539 [verbose] > $"!a + !b" : string
00:00:34 #1540 [verbose] > )
00:00:34 #1541 [verbose] > |> listm.toArray
00:00:34 #1542 [verbose] > |> fun x => x : a i32 _
00:00:34 #1543 [verbose] > |> seq.of_array
00:00:34 #1544 [verbose] > |> sm'.concat " "
00:00:34 #1545 [verbose] >
00:00:34 #1546 [verbose] > // "FB",
00:00:34 #1547 [verbose] > // fun input =>
00:00:34 #1548 [verbose] > // Seq.singleton 0
00:00:34 #1549 [verbose] > // // |> Seq.append (seq { 1 .. input.Length - 1 })
00:00:34 #1550 [verbose] > // // |> Seq.map (fun i => input.[[ i .. ]] + input.[[ .. i - 1 ]])
00:00:34 #1551 [verbose] > // |> SpiralSm.concat " "
00:00:34 #1552 [verbose] >
00:00:34 #1553 [verbose] > // "FC",
00:00:34 #1554 [verbose] > // fun input =>
00:00:34 #1555 [verbose] > // Array.singleton 0
00:00:34 #1556 [verbose] > // |> Array.append (a ;[[ 1 .. input.Length - 1 ]])
00:00:34 #1557 [verbose] > // // |> Array.Parallel.map (fun i => input.[[ i .. ]] + input.[[ ..
00:00:34 #1558 [verbose] > i - 1 ]])
00:00:34 #1559 [verbose] > // |> SpiralSm.concat " "
00:00:34 #1560 [verbose] > ]]
00:00:34 #1561 [verbose] >
00:00:34 #1562 [verbose] > inl rec rotate_strings_tests () =
00:00:34 #1563 [verbose] > inl test_cases = [[
00:00:34 #1564 [verbose] > "abc", "bca cab abc"
00:00:34 #1565 [verbose] > "abcde", "bcdea cdeab deabc eabcd abcde"
00:00:34 #1566 [verbose] > "abcdefghi", "bcdefghia cdefghiab defghiabc efghiabcd fghiabcde
00:00:34 #1567 [verbose] > ghiabcdef hiabcdefg iabcdefgh abcdefghi"
00:00:34 #1568 [verbose] > "abab", "baba abab baba abab"
00:00:34 #1569 [verbose] > "aa", "aa aa"
00:00:34 #1570 [verbose] > "z", "z"
00:00:34 #1571 [verbose] > ]]
00:00:34 #1572 [verbose] >
00:00:34 #1573 [verbose] > inl solutions = get_solutions ()
00:00:34 #1574 [verbose] >
00:00:34 #1575 [verbose] > // inl is_fast () = true
00:00:34 #1576 [verbose] >
00:00:34 #1577 [verbose] > inl count =
00:00:34 #1578 [verbose] > if is_fast ()
00:00:34 #1579 [verbose] > then 1000i32
00:00:34 #1580 [verbose] > else 2000000i32
00:00:34 #1581 [verbose] >
00:00:34 #1582 [verbose] > run_all (nameof rotate_strings_tests) count solutions test_cases
00:00:34 #1583 [verbose] > |> sort_result_list
00:00:34 #1584 [verbose] >
00:00:34 #1585 [verbose] > rotate_strings_tests ()
00:00:34 #1586 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\76d7bcd708a3099b4dcc5eec6b0320a5bf8f94d9c03c9fc07fbbdbd447b691db\main.spi
00:01:00 #1587 [verbose] >
00:01:00 #1588 [verbose] > ╭─[ 25.92s - stdout ]──────────────────────────────────────────────────────────╮
00:01:00 #1589 [verbose] > │ type UH0 = │
00:01:00 #1590 [verbose] > │ | UH0_0 │
00:01:00 #1591 [verbose] > │ | UH0_1 of string * string * UH0 │
00:01:00 #1592 [verbose] > │ and Mut0 = {mutable l0 : uint64} │
00:01:00 #1593 [verbose] > │ and Mut1 = {mutable l0 : int32} │
00:01:00 #1594 [verbose] > │ and UH1 = │
00:01:00 #1595 [verbose] > │ | UH1_0 │
00:01:00 #1596 [verbose] > │ | UH1_1 of int32 * UH1 │
00:01:00 #1597 [verbose] > │ and UH2 = │
00:01:00 #1598 [verbose] > │ | UH2_0 │
00:01:00 #1599 [verbose] > │ | UH2_1 of string * UH2 │
00:01:00 #1600 [verbose] > │ and UH3 = │
00:01:00 #1601 [verbose] > │ | UH3_0 │
00:01:00 #1602 [verbose] > │ | UH3_1 of int32 * string * (string -> string) * UH3 │
00:01:00 #1603 [verbose] > │ and [<Struct>] US0 = │
00:01:00 #1604 [verbose] > │ | US0_0 of f0_0 : System.ConsoleColor │
00:01:00 #1605 [verbose] > │ | US0_1 │
00:01:00 #1606 [verbose] > │ and UH4 = │
00:01:00 #1607 [verbose] > │ | UH4_0 │
00:01:00 #1608 [verbose] > │ | UH4_1 of int64 * int64 * UH4 │
00:01:00 #1609 [verbose] > │ and Mut2 = {mutable l0 : uint64; mutable l1 : UH4; mutable l2 : int64} │
00:01:00 #1610 [verbose] > │ and UH5 = │
00:01:00 #1611 [verbose] > │ | UH5_0 │
00:01:00 #1612 [verbose] > │ | UH5_1 of UH2 * US0 * UH5 │
00:01:00 #1613 [verbose] > │ and [<Struct>] US1 = │
00:01:00 #1614 [verbose] > │ | US1_0 of f0_0 : int64 │
00:01:00 #1615 [verbose] > │ | US1_1 │
00:01:00 #1616 [verbose] > │ and UH6 = │
00:01:00 #1617 [verbose] > │ | UH6_0 │
00:01:00 #1618 [verbose] > │ | UH6_1 of int32 * int64 * UH6 │
00:01:00 #1619 [verbose] > │ and Mut3 = {mutable l0 : uint64; mutable l1 : UH6; mutable l2 : int32} │
00:01:00 #1620 [verbose] > │ and UH7 = │
00:01:00 #1621 [verbose] > │ | UH7_0 │
00:01:00 #1622 [verbose] > │ | UH7_1 of int32 * string * UH7 │
00:01:00 #1623 [verbose] > │ let rec method2 (v0 : UH0, v1 : uint64) : uint64 = │
00:01:00 #1624 [verbose] > │ match v0 with │
00:01:00 #1625 [verbose] > │ | UH0_1(v2, v3, v4) -> (* Cons *) │
00:01:00 #1626 [verbose] > │ let v5 : uint64 = v1 + 1UL │
00:01:00 #1627 [verbose] > │ method2(v4, v5) │
00:01:00 #1628 [verbose] > │ | UH0_0 -> (* Nil *) │
00:01:00 #1629 [verbose] > │ v1 │
00:01:00 #1630 [verbose] > │ and method3 (v0 : (struct (string * string) []), v1 : UH0, v2 : uint64) : │
00:01:00 #1631 [verbose] > │ uint64 = │
00:01:00 #1632 [verbose] > │ match v1 with │
00:01:00 #1633 [verbose] > │ | UH0_1(v3, v4, v5) -> (* Cons *) │
00:01:00 #1634 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:01:00 #1635 [verbose] > │ let v6 : uint64 = v2 + 1UL │
00:01:00 #1636 [verbose] > │ method3(v0, v5, v6) │
00:01:00 #1637 [verbose] > │ | UH0_0 -> (* Nil *) │
00:01:00 #1638 [verbose] > │ v2 │
00:01:00 #1639 [verbose] > │ and method1 (v0 : UH0) : (struct (string * string) []) = │
00:01:00 #1640 [verbose] > │ let v1 : uint64 = 0UL │
00:01:00 #1641 [verbose] > │ let v2 : uint64 = method2(v0, v1) │
00:01:00 #1642 [verbose] > │ let v3 : (struct (string * string) []) = Array.zeroCreate<struct (string │
00:01:00 #1643 [verbose] > │ * string)> (System.Convert.ToInt32(v2)) │
00:01:00 #1644 [verbose] > │ let v4 : uint64 = 0UL │
00:01:00 #1645 [verbose] > │ let v5 : uint64 = method3(v3, v0, v4) │
00:01:00 #1646 [verbose] > │ v3 │
00:01:00 #1647 [verbose] > │ and method4 (v0 : uint64, v1 : Mut0) : bool = │
00:01:00 #1648 [verbose] > │ let v2 : uint64 = v1.l0 │
00:01:00 #1649 [verbose] > │ let v3 : bool = v2 < v0 │
00:01:00 #1650 [verbose] > │ v3 │
00:01:00 #1651 [verbose] > │ and method5 (v0 : int32, v1 : Mut1) : bool = │
00:01:00 #1652 [verbose] > │ let v2 : int32 = v1.l0 │
00:01:00 #1653 [verbose] > │ let v3 : bool = v2 < v0 │
00:01:00 #1654 [verbose] > │ v3 │
00:01:00 #1655 [verbose] > │ and closure1 () (v0 : string) : string = │
00:01:00 #1656 [verbose] > │ let v1 : int32 = v0.Length │
00:01:00 #1657 [verbose] > │ let v2 : (int32 []) = Array.zeroCreate<int32> (1) │
00:01:00 #1658 [verbose] > │ v2.[int 0] <- 0 │
00:01:00 #1659 [verbose] > │ let v3 : int32 = v1 - 1 │
00:01:00 #1660 [verbose] > │ let v4 : int32 = v3 - 1 │
00:01:00 #1661 [verbose] > │ let v5 : int32 = v4 + 1 │
00:01:00 #1662 [verbose] > │ let v6 : (int32 []) = Array.zeroCreate<int32> (v5) │
00:01:00 #1663 [verbose] > │ let v7 : Mut1 = {l0 = 0} : Mut1 │
00:01:00 #1664 [verbose] > │ while method5(v5, v7) do │
00:01:00 #1665 [verbose] > │ let v9 : int32 = v7.l0 │
00:01:00 #1666 [verbose] > │ let v10 : int32 = 1 + v9 │
00:01:00 #1667 [verbose] > │ v6.[int v9] <- v10 │
00:01:00 #1668 [verbose] > │ let v11 : int32 = v9 + 1 │
00:01:00 #1669 [verbose] > │ v7.l0 <- v11 │
00:01:00 #1670 [verbose] > │ () │
00:01:00 #1671 [verbose] > │ let v12 : int32 = v6.Length │
00:01:00 #1672 [verbose] > │ let v13 : int32 = v2.Length │
00:01:00 #1673 [verbose] > │ let v14 : int32 = v12 + v13 │
00:01:00 #1674 [verbose] > │ let v15 : (int32 []) = Array.zeroCreate<int32> (v14) │
00:01:00 #1675 [verbose] > │ let v16 : Mut1 = {l0 = 0} : Mut1 │
00:01:00 #1676 [verbose] > │ while method5(v14, v16) do │
00:01:00 #1677 [verbose] > │ let v18 : int32 = v16.l0 │
00:01:00 #1678 [verbose] > │ let v19 : bool = v18 < v12 │
00:01:00 #1679 [verbose] > │ let v23 : int32 = │
00:01:00 #1680 [verbose] > │ if v19 then │
00:01:00 #1681 [verbose] > │ let v20 : int32 = v6.[int v18] │
00:01:00 #1682 [verbose] > │ v20 │
00:01:00 #1683 [verbose] > │ else │
00:01:00 #1684 [verbose] > │ let v21 : int32 = v18 - v12 │
00:01:00 #1685 [verbose] > │ let v22 : int32 = v2.[int v21] │
00:01:00 #1686 [verbose] > │ v22 │
00:01:00 #1687 [verbose] > │ v15.[int v18] <- v23 │
00:01:00 #1688 [verbose] > │ let v24 : int32 = v18 + 1 │
00:01:00 #1689 [verbose] > │ v16.l0 <- v24 │
00:01:00 #1690 [verbose] > │ () │
00:01:00 #1691 [verbose] > │ let v25 : int32 = v15.Length │
00:01:00 #1692 [verbose] > │ let v26 : (string []) = Array.zeroCreate<string> (v25) │
00:01:00 #1693 [verbose] > │ let v27 : Mut1 = {l0 = 0} : Mut1 │
00:01:00 #1694 [verbose] > │ while method5(v25, v27) do │
00:01:00 #1695 [verbose] > │ let v29 : int32 = v27.l0 │
00:01:00 #1696 [verbose] > │ let v30 : int32 = v15.[int v29] │
00:01:00 #1697 [verbose] > │ let v31 : string = v0.[int v30..int v3] │
00:01:00 #1698 [verbose] > │ let v32 : int32 = v30 - 1 │
00:01:00 #1699 [verbose] > │ let v33 : string = v0.[int 0..int v32] │
00:01:00 #1700 [verbose] > │ let v34 : string = v31 + v33 │
00:01:00 #1701 [verbose] > │ v26.[int v29] <- v34 │
00:01:00 #1702 [verbose] > │ let v35 : int32 = v29 + 1 │
00:01:00 #1703 [verbose] > │ v27.l0 <- v35 │
00:01:00 #1704 [verbose] > │ () │
00:01:00 #1705 [verbose] > │ let v36 : ((string []) -> string seq) = Seq.ofArray │
00:01:00 #1706 [verbose] > │ let v37 : string seq = v36 v26 │
00:01:00 #1707 [verbose] > │ let v38 : string = " " │
00:01:00 #1708 [verbose] > │ let v39 : string = v37 |> String.concat v38 │
00:01:00 #1709 [verbose] > │ v39 │
00:01:00 #1710 [verbose] > │ and method6 (v0 : float, v1 : float) : UH1 = │
00:01:00 #1711 [verbose] > │ let v2 : bool = v1 < v0 │
00:01:00 #1712 [verbose] > │ if v2 then │
00:01:00 #1713 [verbose] > │ let v3 : int32 = int32 v1 │
00:01:00 #1714 [verbose] > │ let v4 : int32 = 1 + v3 │
00:01:00 #1715 [verbose] > │ let v5 : float = v1 + 1.0 │
00:01:00 #1716 [verbose] > │ let v6 : UH1 = method6(v0, v5) │
00:01:00 #1717 [verbose] > │ UH1_1(v4, v6) │
00:01:00 #1718 [verbose] > │ else │
00:01:00 #1719 [verbose] > │ UH1_0 │
00:01:00 #1720 [verbose] > │ and method7 (v0 : UH1, v1 : UH1) : UH1 = │
00:01:00 #1721 [verbose] > │ match v0 with │
00:01:00 #1722 [verbose] > │ | UH1_1(v2, v3) -> (* Cons *) │
00:01:00 #1723 [verbose] > │ let v4 : UH1 = method7(v3, v1) │
00:01:00 #1724 [verbose] > │ UH1_1(v2, v4) │
00:01:00 #1725 [verbose] > │ | UH1_0 -> (* Nil *) │
00:01:00 #1726 [verbose] > │ v1 │
00:01:00 #1727 [verbose] > │ and method8 (v0 : string, v1 : int32, v2 : UH1, v3 : UH2) : UH2 = │
00:01:00 #1728 [verbose] > │ match v2 with │
00:01:00 #1729 [verbose] > │ | UH1_1(v4, v5) -> (* Cons *) │
00:01:00 #1730 [verbose] > │ let v6 : UH2 = method8(v0, v1, v5, v3) │
00:01:00 #1731 [verbose] > │ let v7 : int32 = v1 - 1 │
00:01:00 #1732 [verbose] > │ let v8 : string = v0.[int v4..int v7] │
00:01:00 #1733 [verbose] > │ let v9 : bool = v4 = 0 │
00:01:00 #1734 [verbose] > │ let v13 : string = │
00:01:00 #1735 [verbose] > │ if v9 then │
00:01:00 #1736 [verbose] > │ let v10 : string = "" │
00:01:00 #1737 [verbose] > │ v10 │
00:01:00 #1738 [verbose] > │ else │
00:01:00 #1739 [verbose] > │ let v11 : int32 = v4 - 1 │
00:01:00 #1740 [verbose] > │ let v12 : string = v0.[int 0..int v11] │
00:01:00 #1741 [verbose] > │ v12 │
00:01:00 #1742 [verbose] > │ let v14 : string = v8 + v13 │
00:01:00 #1743 [verbose] > │ UH2_1(v14, v6) │
00:01:00 #1744 [verbose] > │ | UH1_0 -> (* Nil *) │
00:01:00 #1745 [verbose] > │ v3 │
00:01:00 #1746 [verbose] > │ and method10 (v0 : UH2, v1 : int32) : int32 = │
00:01:00 #1747 [verbose] > │ match v0 with │
00:01:00 #1748 [verbose] > │ | UH2_1(v2, v3) -> (* Cons *) │
00:01:00 #1749 [verbose] > │ let v4 : int32 = v1 + 1 │
00:01:00 #1750 [verbose] > │ method10(v3, v4) │
00:01:00 #1751 [verbose] > │ | UH2_0 -> (* Nil *) │
00:01:00 #1752 [verbose] > │ v1 │
00:01:00 #1753 [verbose] > │ and method11 (v0 : (string []), v1 : UH2, v2 : int32) : int32 = │
00:01:00 #1754 [verbose] > │ match v1 with │
00:01:00 #1755 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:01:00 #1756 [verbose] > │ v0.[int v2] <- v3 │
00:01:00 #1757 [verbose] > │ let v5 : int32 = v2 + 1 │
00:01:00 #1758 [verbose] > │ method11(v0, v4, v5) │
00:01:00 #1759 [verbose] > │ | UH2_0 -> (* Nil *) │
00:01:00 #1760 [verbose] > │ v2 │
00:01:00 #1761 [verbose] > │ and method9 (v0 : UH2) : (string []) = │
00:01:00 #1762 [verbose] > │ let v1 : int32 = 0 │
00:01:00 #1763 [verbose] > │ let v2 : int32 = method10(v0, v1) │
00:01:00 #1764 [verbose] > │ let v3 : (string []) = Array.zeroCreate<string> (v2) │
00:01:00 #1765 [verbose] > │ let v4 : int32 = 0 │
00:01:00 #1766 [verbose] > │ let v5 : int32 = method11(v3, v0, v4) │
00:01:00 #1767 [verbose] > │ v3 │
00:01:00 #1768 [verbose] > │ and closure2 () (v0 : string) : string = │
00:01:00 #1769 [verbose] > │ let v1 : int32 = v0.Length │
00:01:00 #1770 [verbose] > │ let v2 : int32 = v1 - 1 │
00:01:00 #1771 [verbose] > │ let v3 : int32 = v2 - 1 │
00:01:00 #1772 [verbose] > │ let v4 : float = float v3 │
00:01:00 #1773 [verbose] > │ let v5 : float = v4 + 1.0 │
00:01:00 #1774 [verbose] > │ let v6 : float = 0.0 │
00:01:00 #1775 [verbose] > │ let v7 : UH1 = method6(v5, v6) │
00:01:00 #1776 [verbose] > │ let v8 : int32 = 0 │
00:01:00 #1777 [verbose] > │ let v9 : UH1 = UH1_0 │
00:01:00 #1778 [verbose] > │ let v10 : UH1 = UH1_1(v8, v9) │
00:01:00 #1779 [verbose] > │ let v11 : UH1 = method7(v7, v10) │
00:01:00 #1780 [verbose] > │ let v12 : UH2 = UH2_0 │
00:01:00 #1781 [verbose] > │ let v13 : UH2 = method8(v0, v1, v11, v12) │
00:01:00 #1782 [verbose] > │ let v14 : (string []) = method9(v13) │
00:01:00 #1783 [verbose] > │ let v15 : ((string []) -> string seq) = Seq.ofArray │
00:01:00 #1784 [verbose] > │ let v16 : string seq = v15 v14 │
00:01:00 #1785 [verbose] > │ let v17 : string = " " │
00:01:00 #1786 [verbose] > │ let v18 : string = v16 |> String.concat v17 │
00:01:00 #1787 [verbose] > │ v18 │
00:01:00 #1788 [verbose] > │ and method13 (v0 : UH3, v1 : uint64) : uint64 = │
00:01:00 #1789 [verbose] > │ match v0 with │
00:01:00 #1790 [verbose] > │ | UH3_1(v2, v3, v4, v5) -> (* Cons *) │
00:01:00 #1791 [verbose] > │ let v6 : uint64 = v1 + 1UL │
00:01:00 #1792 [verbose] > │ method13(v5, v6) │
00:01:00 #1793 [verbose] > │ | UH3_0 -> (* Nil *) │
00:01:00 #1794 [verbose] > │ v1 │
00:01:00 #1795 [verbose] > │ and method14 (v0 : (struct (int32 * string * (string -> string)) []), v1 : │
00:01:00 #1796 [verbose] > │ UH3, v2 : uint64) : uint64 = │
00:01:00 #1797 [verbose] > │ match v1 with │
00:01:00 #1798 [verbose] > │ | UH3_1(v3, v4, v5, v6) -> (* Cons *) │
00:01:00 #1799 [verbose] > │ v0.[int v2] <- struct (v3, v4, v5) │
00:01:00 #1800 [verbose] > │ let v7 : uint64 = v2 + 1UL │
00:01:00 #1801 [verbose] > │ method14(v0, v6, v7) │
00:01:00 #1802 [verbose] > │ | UH3_0 -> (* Nil *) │
00:01:00 #1803 [verbose] > │ v2 │
00:01:00 #1804 [verbose] > │ and method12 (v0 : UH3) : (struct (int32 * string * (string -> string)) []) │
00:01:00 #1805 [verbose] > │ = │
00:01:00 #1806 [verbose] > │ let v1 : uint64 = 0UL │
00:01:00 #1807 [verbose] > │ let v2 : uint64 = method13(v0, v1) │
00:01:00 #1808 [verbose] > │ let v3 : (struct (int32 * string * (string -> string)) []) = │
00:01:00 #1809 [verbose] > │ Array.zeroCreate<struct (int32 * string * (string -> string))> │
00:01:00 #1810 [verbose] > │ (System.Convert.ToInt32(v2)) │
00:01:00 #1811 [verbose] > │ let v4 : uint64 = 0UL │
00:01:00 #1812 [verbose] > │ let v5 : uint64 = method14(v3, v0, v4) │
00:01:00 #1813 [verbose] > │ v3 │
00:01:00 #1814 [verbose] > │ and method15 (v0 : Mut1) : bool = │
00:01:00 #1815 [verbose] > │ let v1 : int32 = v0.l0 │
00:01:00 #1816 [verbose] > │ let v2 : bool = v1 < 2000001 │
00:01:00 #1817 [verbose] > │ v2 │
00:01:00 #1818 [verbose] > │ and closure3 (v0 : string, v1 : (string -> string)) (v2 : int32) : string = │
00:01:00 #1819 [verbose] > │ v1 v0 │
00:01:00 #1820 [verbose] > │ and method16 (v0 : string, v1 : (string []), v2 : uint64) : bool = │
00:01:00 #1821 [verbose] > │ let v3 : uint64 = System.Convert.ToUInt64 v1.Length │
00:01:00 #1822 [verbose] > │ let v4 : bool = v2 < v3 │
00:01:00 #1823 [verbose] > │ if v4 then │
00:01:00 #1824 [verbose] > │ let v5 : string = v1.[int v2] │
00:01:00 #1825 [verbose] > │ let v6 : bool = v0 = v5 │
00:01:00 #1826 [verbose] > │ if v6 then │
00:01:00 #1827 [verbose] > │ let v7 : uint64 = v2 + 1UL │
00:01:00 #1828 [verbose] > │ method16(v0, v1, v7) │
00:01:00 #1829 [verbose] > │ else │
00:01:00 #1830 [verbose] > │ false │
00:01:00 #1831 [verbose] > │ else │
00:01:00 #1832 [verbose] > │ true │
00:01:00 #1833 [verbose] > │ and method17 (v0 : uint64, v1 : Mut2) : bool = │
00:01:00 #1834 [verbose] > │ let v2 : uint64 = v1.l0 │
00:01:00 #1835 [verbose] > │ let v3 : bool = v2 < v0 │
00:01:00 #1836 [verbose] > │ v3 │
00:01:00 #1837 [verbose] > │ and method18 (v0 : UH4, v1 : UH4) : UH4 = │
00:01:00 #1838 [verbose] > │ match v0 with │
00:01:00 #1839 [verbose] > │ | UH4_1(v2, v3, v4) -> (* Cons *) │
00:01:00 #1840 [verbose] > │ let v5 : UH4 = UH4_1(v2, v3, v1) │
00:01:00 #1841 [verbose] > │ method18(v4, v5) │
00:01:00 #1842 [verbose] > │ | UH4_0 -> (* Nil *) │
00:01:00 #1843 [verbose] > │ v1 │
00:01:00 #1844 [verbose] > │ and method20 (v0 : UH4, v1 : int32) : int32 = │
00:01:00 #1845 [verbose] > │ match v0 with │
00:01:00 #1846 [verbose] > │ | UH4_1(v2, v3, v4) -> (* Cons *) │
00:01:00 #1847 [verbose] > │ let v5 : int32 = v1 + 1 │
00:01:00 #1848 [verbose] > │ method20(v4, v5) │
00:01:00 #1849 [verbose] > │ | UH4_0 -> (* Nil *) │
00:01:00 #1850 [verbose] > │ v1 │
00:01:00 #1851 [verbose] > │ and method21 (v0 : (struct (int64 * int64) []), v1 : UH4, v2 : int32) : │
00:01:00 #1852 [verbose] > │ int32 = │
00:01:00 #1853 [verbose] > │ match v1 with │
00:01:00 #1854 [verbose] > │ | UH4_1(v3, v4, v5) -> (* Cons *) │
00:01:00 #1855 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:01:00 #1856 [verbose] > │ let v6 : int32 = v2 + 1 │
00:01:00 #1857 [verbose] > │ method21(v0, v5, v6) │
00:01:00 #1858 [verbose] > │ | UH4_0 -> (* Nil *) │
00:01:00 #1859 [verbose] > │ v2 │
00:01:00 #1860 [verbose] > │ and method19 (v0 : UH4) : (struct (int64 * int64) []) = │
00:01:00 #1861 [verbose] > │ let v1 : int32 = 0 │
00:01:00 #1862 [verbose] > │ let v2 : int32 = method20(v0, v1) │
00:01:00 #1863 [verbose] > │ let v3 : (struct (int64 * int64) []) = Array.zeroCreate<struct (int64 * │
00:01:00 #1864 [verbose] > │ int64)> (v2) │
00:01:00 #1865 [verbose] > │ let v4 : int32 = 0 │
00:01:00 #1866 [verbose] > │ let v5 : int32 = method21(v3, v0, v4) │
00:01:00 #1867 [verbose] > │ v3 │
00:01:00 #1868 [verbose] > │ and closure4 () struct (v0 : int64, v1 : int64) : int64 = │
00:01:00 #1869 [verbose] > │ v1 │
00:01:00 #1870 [verbose] > │ and method23 (v0 : UH5, v1 : uint64) : uint64 = │
00:01:00 #1871 [verbose] > │ match v0 with │
00:01:00 #1872 [verbose] > │ | UH5_1(v2, v3, v4) -> (* Cons *) │
00:01:00 #1873 [verbose] > │ let v5 : uint64 = v1 + 1UL │
00:01:00 #1874 [verbose] > │ method23(v4, v5) │
00:01:00 #1875 [verbose] > │ | UH5_0 -> (* Nil *) │
00:01:00 #1876 [verbose] > │ v1 │
00:01:00 #1877 [verbose] > │ and method24 (v0 : (struct (UH2 * US0) []), v1 : UH5, v2 : uint64) : uint64 │
00:01:00 #1878 [verbose] > │ = │
00:01:00 #1879 [verbose] > │ match v1 with │
00:01:00 #1880 [verbose] > │ | UH5_1(v3, v4, v5) -> (* Cons *) │
00:01:00 #1881 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:01:00 #1882 [verbose] > │ let v6 : uint64 = v2 + 1UL │
00:01:00 #1883 [verbose] > │ method24(v0, v5, v6) │
00:01:00 #1884 [verbose] > │ | UH5_0 -> (* Nil *) │
00:01:00 #1885 [verbose] > │ v2 │
00:01:00 #1886 [verbose] > │ and method22 (v0 : UH5) : (struct (UH2 * US0) []) = │
00:01:00 #1887 [verbose] > │ let v1 : uint64 = 0UL │
00:01:00 #1888 [verbose] > │ let v2 : uint64 = method23(v0, v1) │
00:01:00 #1889 [verbose] > │ let v3 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)> │
00:01:00 #1890 [verbose] > │ (System.Convert.ToInt32(v2)) │
00:01:00 #1891 [verbose] > │ let v4 : uint64 = 0UL │
00:01:00 #1892 [verbose] > │ let v5 : uint64 = method24(v3, v0, v4) │
00:01:00 #1893 [verbose] > │ v3 │
00:01:00 #1894 [verbose] > │ and method26 (v0 : UH2, v1 : uint64) : uint64 = │
00:01:00 #1895 [verbose] > │ match v0 with │
00:01:00 #1896 [verbose] > │ | UH2_1(v2, v3) -> (* Cons *) │
00:01:00 #1897 [verbose] > │ let v4 : uint64 = v1 + 1UL │
00:01:00 #1898 [verbose] > │ method26(v3, v4) │
00:01:00 #1899 [verbose] > │ | UH2_0 -> (* Nil *) │
00:01:00 #1900 [verbose] > │ v1 │
00:01:00 #1901 [verbose] > │ and method27 (v0 : (string []), v1 : UH2, v2 : uint64) : uint64 = │
00:01:00 #1902 [verbose] > │ match v1 with │
00:01:00 #1903 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:01:00 #1904 [verbose] > │ v0.[int v2] <- v3 │
00:01:00 #1905 [verbose] > │ let v5 : uint64 = v2 + 1UL │
00:01:00 #1906 [verbose] > │ method27(v0, v4, v5) │
00:01:00 #1907 [verbose] > │ | UH2_0 -> (* Nil *) │
00:01:00 #1908 [verbose] > │ v2 │
00:01:00 #1909 [verbose] > │ and method25 (v0 : UH2) : (string []) = │
00:01:00 #1910 [verbose] > │ let v1 : uint64 = 0UL │
00:01:00 #1911 [verbose] > │ let v2 : uint64 = method26(v0, v1) │
00:01:00 #1912 [verbose] > │ let v3 : (string []) = Array.zeroCreate<string> │
00:01:00 #1913 [verbose] > │ (System.Convert.ToInt32(v2)) │
00:01:00 #1914 [verbose] > │ let v4 : uint64 = 0UL │
00:01:00 #1915 [verbose] > │ let v5 : uint64 = method27(v3, v0, v4) │
00:01:00 #1916 [verbose] > │ v3 │
00:01:00 #1917 [verbose] > │ and closure5 () (v0 : int64) : US1 = │
00:01:00 #1918 [verbose] > │ US1_0(v0) │
00:01:00 #1919 [verbose] > │ and method28 () : (int64 -> US1) = │
00:01:00 #1920 [verbose] > │ closure5() │
00:01:00 #1921 [verbose] > │ and method29 (v0 : uint64, v1 : Mut3) : bool = │
00:01:00 #1922 [verbose] > │ let v2 : uint64 = v1.l0 │
00:01:00 #1923 [verbose] > │ let v3 : bool = v2 < v0 │
00:01:00 #1924 [verbose] > │ v3 │
00:01:00 #1925 [verbose] > │ and method30 (v0 : UH6, v1 : UH6) : UH6 = │
00:01:00 #1926 [verbose] > │ match v0 with │
00:01:00 #1927 [verbose] > │ | UH6_1(v2, v3, v4) -> (* Cons *) │
00:01:00 #1928 [verbose] > │ let v5 : UH6 = UH6_1(v2, v3, v1) │
00:01:00 #1929 [verbose] > │ method30(v4, v5) │
00:01:00 #1930 [verbose] > │ | UH6_0 -> (* Nil *) │
00:01:00 #1931 [verbose] > │ v1 │
00:01:00 #1932 [verbose] > │ and method32 (v0 : UH6, v1 : int32) : int32 = │
00:01:00 #1933 [verbose] > │ match v0 with │
00:01:00 #1934 [verbose] > │ | UH6_1(v2, v3, v4) -> (* Cons *) │
00:01:00 #1935 [verbose] > │ let v5 : int32 = v1 + 1 │
00:01:00 #1936 [verbose] > │ method32(v4, v5) │
00:01:00 #1937 [verbose] > │ | UH6_0 -> (* Nil *) │
00:01:00 #1938 [verbose] > │ v1 │
00:01:00 #1939 [verbose] > │ and method33 (v0 : (struct (int32 * int64) []), v1 : UH6, v2 : int32) : │
00:01:00 #1940 [verbose] > │ int32 = │
00:01:00 #1941 [verbose] > │ match v1 with │
00:01:00 #1942 [verbose] > │ | UH6_1(v3, v4, v5) -> (* Cons *) │
00:01:00 #1943 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:01:00 #1944 [verbose] > │ let v6 : int32 = v2 + 1 │
00:01:00 #1945 [verbose] > │ method33(v0, v5, v6) │
00:01:00 #1946 [verbose] > │ | UH6_0 -> (* Nil *) │
00:01:00 #1947 [verbose] > │ v2 │
00:01:00 #1948 [verbose] > │ and method31 (v0 : UH6) : (struct (int32 * int64) []) = │
00:01:00 #1949 [verbose] > │ let v1 : int32 = 0 │
00:01:00 #1950 [verbose] > │ let v2 : int32 = method32(v0, v1) │
00:01:00 #1951 [verbose] > │ let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 * │
00:01:00 #1952 [verbose] > │ int64)> (v2) │
00:01:00 #1953 [verbose] > │ let v4 : int32 = 0 │
00:01:00 #1954 [verbose] > │ let v5 : int32 = method33(v3, v0, v4) │
00:01:00 #1955 [verbose] > │ v3 │
00:01:00 #1956 [verbose] > │ and method34 (v0 : UH2, v1 : UH7, v2 : int32) : struct (UH7 * int32) = │
00:01:00 #1957 [verbose] > │ match v0 with │
00:01:00 #1958 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:01:00 #1959 [verbose] > │ let v5 : int32 = v2 + 1 │
00:01:00 #1960 [verbose] > │ let v6 : UH7 = UH7_1(v2, v3, v1) │
00:01:00 #1961 [verbose] > │ method34(v4, v6, v5) │
00:01:00 #1962 [verbose] > │ | UH2_0 -> (* Nil *) │
00:01:00 #1963 [verbose] > │ struct (v1, v2) │
00:01:00 #1964 [verbose] > │ and method35 (v0 : UH7, v1 : UH7) : UH7 = │
00:01:00 #1965 [verbose] > │ match v0 with │
00:01:00 #1966 [verbose] > │ | UH7_1(v2, v3, v4) -> (* Cons *) │
00:01:00 #1967 [verbose] > │ let v5 : UH7 = UH7_1(v2, v3, v1) │
00:01:00 #1968 [verbose] > │ method35(v4, v5) │
00:01:00 #1969 [verbose] > │ | UH7_0 -> (* Nil *) │
00:01:00 #1970 [verbose] > │ v1 │
00:01:00 #1971 [verbose] > │ and method36 (v0 : Map<int32, int64>, v1 : UH7, v2 : UH2) : UH2 = │
00:01:00 #1972 [verbose] > │ match v1 with │
00:01:00 #1973 [verbose] > │ | UH7_1(v3, v4, v5) -> (* Cons *) │
00:01:00 #1974 [verbose] > │ let v6 : UH2 = method36(v0, v5, v2) │
00:01:00 #1975 [verbose] > │ let v7 : int64 = v0.[v3] │
00:01:00 #1976 [verbose] > │ let v8 : int32 = int32 v7 │
00:01:00 #1977 [verbose] > │ let v9 : string = v4.PadRight v8 │
00:01:00 #1978 [verbose] > │ UH2_1(v9, v6) │
00:01:00 #1979 [verbose] > │ | UH7_0 -> (* Nil *) │
00:01:00 #1980 [verbose] > │ v2 │
00:01:00 #1981 [verbose] > │ and method38 (v0 : UH6, v1 : uint64) : uint64 = │
00:01:00 #1982 [verbose] > │ match v0 with │
00:01:00 #1983 [verbose] > │ | UH6_1(v2, v3, v4) -> (* Cons *) │
00:01:00 #1984 [verbose] > │ let v5 : uint64 = v1 + 1UL │
00:01:00 #1985 [verbose] > │ method38(v4, v5) │
00:01:00 #1986 [verbose] > │ | UH6_0 -> (* Nil *) │
00:01:00 #1987 [verbose] > │ v1 │
00:01:00 #1988 [verbose] > │ and method39 (v0 : (struct (int32 * int64) []), v1 : UH6, v2 : uint64) : │
00:01:00 #1989 [verbose] > │ uint64 = │
00:01:00 #1990 [verbose] > │ match v1 with │
00:01:00 #1991 [verbose] > │ | UH6_1(v3, v4, v5) -> (* Cons *) │
00:01:00 #1992 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:01:00 #1993 [verbose] > │ let v6 : uint64 = v2 + 1UL │
00:01:00 #1994 [verbose] > │ method39(v0, v5, v6) │
00:01:00 #1995 [verbose] > │ | UH6_0 -> (* Nil *) │
00:01:00 #1996 [verbose] > │ v2 │
00:01:00 #1997 [verbose] > │ and method37 (v0 : UH6) : (struct (int32 * int64) []) = │
00:01:00 #1998 [verbose] > │ let v1 : uint64 = 0UL │
00:01:00 #1999 [verbose] > │ let v2 : uint64 = method38(v0, v1) │
00:01:00 #2000 [verbose] > │ let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 * │
00:01:00 #2001 [verbose] > │ int64)> (System.Convert.ToInt32(v2)) │
00:01:00 #2002 [verbose] > │ let v4 : uint64 = 0UL │
00:01:00 #2003 [verbose] > │ let v5 : uint64 = method39(v3, v0, v4) │
00:01:00 #2004 [verbose] > │ v3 │
00:01:00 #2005 [verbose] > │ and closure6 () struct (v0 : int32, v1 : int64) : int64 = │
00:01:00 #2006 [verbose] > │ v1 │
00:01:00 #2007 [verbose] > │ and closure0 () () : unit = │
00:01:00 #2008 [verbose] > │ let v0 : (unit -> unit) = closure0() │
00:01:00 #2009 [verbose] > │ let v1 : string = nameof v0 │
00:01:00 #2010 [verbose] > │ let v2 : string = "" │
00:01:00 #2011 [verbose] > │ System.Console.WriteLine v2 │
00:01:00 #2012 [verbose] > │ System.Console.WriteLine v2 │
00:01:00 #2013 [verbose] > │ let v3 : string = $"Test: {v1}" │
00:01:00 #2014 [verbose] > │ System.Console.WriteLine v3 │
00:01:00 #2015 [verbose] > │ let v4 : string = "abc" │
00:01:00 #2016 [verbose] > │ let v5 : string = "bca cab abc" │
00:01:00 #2017 [verbose] > │ let v6 : string = "abcde" │
00:01:00 #2018 [verbose] > │ let v7 : string = "bcdea cdeab deabc eabcd abcde" │
00:01:00 #2019 [verbose] > │ let v8 : string = "abcdefghi" │
00:01:00 #2020 [verbose] > │ let v9 : string = "bcdefghia cdefghiab defghiabc efghiabcd fghiabcde │
00:01:00 #2021 [verbose] > │ ghiabcdef hiabcdefg iabcdefgh abcdefghi" │
00:01:00 #2022 [verbose] > │ let v10 : string = "abab" │
00:01:00 #2023 [verbose] > │ let v11 : string = "baba abab baba abab" │
00:01:00 #2024 [verbose] > │ let v12 : string = "aa" │
00:01:00 #2025 [verbose] > │ let v13 : string = "aa aa" │
00:01:00 #2026 [verbose] > │ let v14 : string = "z" │
00:01:00 #2027 [verbose] > │ let v15 : UH0 = UH0_0 │
00:01:00 #2028 [verbose] > │ let v16 : UH0 = UH0_1(v14, v14, v15) │
00:01:00 #2029 [verbose] > │ let v17 : UH0 = UH0_1(v12, v13, v16) │
00:01:00 #2030 [verbose] > │ let v18 : UH0 = UH0_1(v10, v11, v17) │
00:01:00 #2031 [verbose] > │ let v19 : UH0 = UH0_1(v8, v9, v18) │
00:01:00 #2032 [verbose] > │ let v20 : UH0 = UH0_1(v6, v7, v19) │
00:01:00 #2033 [verbose] > │ let v21 : UH0 = UH0_1(v4, v5, v20) │
00:01:00 #2034 [verbose] > │ let v22 : (struct (string * string) []) = method1(v21) │
00:01:00 #2035 [verbose] > │ let v23 : uint64 = System.Convert.ToUInt64 v22.Length │
00:01:00 #2036 [verbose] > │ let v24 : (struct (string * string * string * (int64 [])) []) = │
00:01:00 #2037 [verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))> │
00:01:00 #2038 [verbose] > │ (System.Convert.ToInt32(v23)) │
00:01:00 #2039 [verbose] > │ let v25 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2040 [verbose] > │ while method4(v23, v25) do │
00:01:00 #2041 [verbose] > │ let v27 : uint64 = v25.l0 │
00:01:00 #2042 [verbose] > │ let struct (v28 : string, v29 : string) = v22.[int v27] │
00:01:00 #2043 [verbose] > │ let v30 : string = $"%A{v28}" │
00:01:00 #2044 [verbose] > │ System.Console.WriteLine v2 │
00:01:00 #2045 [verbose] > │ let v31 : string = $"Solution: {v30} " │
00:01:00 #2046 [verbose] > │ System.Console.WriteLine v31 │
00:01:00 #2047 [verbose] > │ let v32 : int32 = 0 │
00:01:00 #2048 [verbose] > │ let v33 : string = "F" │
00:01:00 #2049 [verbose] > │ let v34 : (string -> string) = closure1() │
00:01:00 #2050 [verbose] > │ let v35 : int32 = 1 │
00:01:00 #2051 [verbose] > │ let v36 : string = "FA" │
00:01:00 #2052 [verbose] > │ let v37 : (string -> string) = closure2() │
00:01:00 #2053 [verbose] > │ let v38 : UH3 = UH3_0 │
00:01:00 #2054 [verbose] > │ let v39 : UH3 = UH3_1(v35, v36, v37, v38) │
00:01:00 #2055 [verbose] > │ let v40 : UH3 = UH3_1(v32, v33, v34, v39) │
00:01:00 #2056 [verbose] > │ let v41 : (struct (int32 * string * (string -> string)) []) = │
00:01:00 #2057 [verbose] > │ method12(v40) │
00:01:00 #2058 [verbose] > │ let v42 : uint64 = System.Convert.ToUInt64 v41.Length │
00:01:00 #2059 [verbose] > │ let v43 : (struct (string * int64) []) = Array.zeroCreate<struct │
00:01:00 #2060 [verbose] > │ (string * int64)> (System.Convert.ToInt32(v42)) │
00:01:00 #2061 [verbose] > │ let v44 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2062 [verbose] > │ while method4(v42, v44) do │
00:01:00 #2063 [verbose] > │ let v46 : uint64 = v44.l0 │
00:01:00 #2064 [verbose] > │ let struct (v47 : int32, v48 : string, v49 : (string -> string)) │
00:01:00 #2065 [verbose] > │ = v41.[int v46] │
00:01:00 #2066 [verbose] > │ let v50 : unit option = None │
00:01:00 #2067 [verbose] > │ let mutable _v50 = v50 │
00:01:00 #2068 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:00 #2069 [verbose] > │ () │
00:01:00 #2070 [verbose] > │ #endif │
00:01:00 #2071 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:00 #2072 [verbose] > │ () │
00:01:00 #2073 [verbose] > │ #endif │
00:01:00 #2074 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:00 #2075 [verbose] > │ () │
00:01:00 #2076 [verbose] > │ #endif │
00:01:00 #2077 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:00 #2078 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:00 #2079 [verbose] > │ System.GC.Collect () │
00:01:00 #2080 [verbose] > │ () │
00:01:00 #2081 [verbose] > │ #endif │
00:01:00 #2082 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:00 #2083 [verbose] > │ () │
00:01:00 #2084 [verbose] > │ #endif │
00:01:00 #2085 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:00 #2086 [verbose] > │ FABLE_COMPILER_DART │
00:01:00 #2087 [verbose] > │ Unchecked.defaultof<unit> │
00:01:00 #2088 [verbose] > │ #endif │
00:01:00 #2089 [verbose] > │ |> fun x -> _v50 <- Some x │
00:01:00 #2090 [verbose] > │ _v50.Value │
00:01:00 #2091 [verbose] > │ let v51 : (unit -> System.Diagnostics.Stopwatch) = │
00:01:00 #2092 [verbose] > │ System.Diagnostics.Stopwatch │
00:01:00 #2093 [verbose] > │ let v52 : System.Diagnostics.Stopwatch = v51 () │
00:01:00 #2094 [verbose] > │ v52.Start () │
00:01:00 #2095 [verbose] > │ let v53 : int64 = v52.ElapsedMilliseconds │
00:01:00 #2096 [verbose] > │ let v54 : (int32 []) = Array.zeroCreate<int32> (2000001) │
00:01:00 #2097 [verbose] > │ let v55 : Mut1 = {l0 = 0} : Mut1 │
00:01:00 #2098 [verbose] > │ while method15(v55) do │
00:01:00 #2099 [verbose] > │ let v57 : int32 = v55.l0 │
00:01:00 #2100 [verbose] > │ v54.[int v57] <- v57 │
00:01:00 #2101 [verbose] > │ let v58 : int32 = v57 + 1 │
00:01:00 #2102 [verbose] > │ v55.l0 <- v58 │
00:01:00 #2103 [verbose] > │ () │
00:01:00 #2104 [verbose] > │ let v59 : ((int32 -> string) -> ((int32 []) -> (string []))) = │
00:01:00 #2105 [verbose] > │ Array.Parallel.map │
00:01:00 #2106 [verbose] > │ let v60 : (int32 -> string) = closure3(v28, v49) │
00:01:00 #2107 [verbose] > │ let v61 : ((int32 []) -> (string [])) = v59 v60 │
00:01:00 #2108 [verbose] > │ let v62 : (string []) = v61 v54 │
00:01:00 #2109 [verbose] > │ let v63 : int32 = v62.Length │
00:01:00 #2110 [verbose] > │ let v64 : int32 = v63 - 1 │
00:01:00 #2111 [verbose] > │ let v65 : string = v62.[int v64] │
00:01:00 #2112 [verbose] > │ let v66 : int64 = v52.ElapsedMilliseconds │
00:01:00 #2113 [verbose] > │ let v67 : int64 = v66 - v53 │
00:01:00 #2114 [verbose] > │ let v68 : string = $"Test case {v47 + 1}. {v48}. Time: {v67} " │
00:01:00 #2115 [verbose] > │ System.Console.WriteLine v68 │
00:01:00 #2116 [verbose] > │ v43.[int v46] <- struct (v65, v67) │
00:01:00 #2117 [verbose] > │ let v69 : uint64 = v46 + 1UL │
00:01:00 #2118 [verbose] > │ v44.l0 <- v69 │
00:01:00 #2119 [verbose] > │ () │
00:01:00 #2120 [verbose] > │ let v70 : uint64 = System.Convert.ToUInt64 v43.Length │
00:01:00 #2121 [verbose] > │ let v71 : (string []) = Array.zeroCreate<string> │
00:01:00 #2122 [verbose] > │ (System.Convert.ToInt32(v70)) │
00:01:00 #2123 [verbose] > │ let v72 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2124 [verbose] > │ while method4(v70, v72) do │
00:01:00 #2125 [verbose] > │ let v74 : uint64 = v72.l0 │
00:01:00 #2126 [verbose] > │ let struct (v75 : string, v76 : int64) = v43.[int v74] │
00:01:00 #2127 [verbose] > │ v71.[int v74] <- v75 │
00:01:00 #2128 [verbose] > │ let v77 : uint64 = v74 + 1UL │
00:01:00 #2129 [verbose] > │ v72.l0 <- v77 │
00:01:00 #2130 [verbose] > │ () │
00:01:00 #2131 [verbose] > │ let v78 : uint64 = System.Convert.ToUInt64 v71.Length │
00:01:00 #2132 [verbose] > │ let v79 : bool = v78 <= 1UL │
00:01:00 #2133 [verbose] > │ if v79 then │
00:01:00 #2134 [verbose] > │ () │
00:01:00 #2135 [verbose] > │ else │
00:01:00 #2136 [verbose] > │ let v80 : string = v71.[int 0UL] │
00:01:00 #2137 [verbose] > │ let v81 : uint64 = 0UL │
00:01:00 #2138 [verbose] > │ let v82 : bool = method16(v80, v71, v81) │
00:01:00 #2139 [verbose] > │ if v82 then │
00:01:00 #2140 [verbose] > │ () │
00:01:00 #2141 [verbose] > │ else │
00:01:00 #2142 [verbose] > │ let v83 : string = $"Challenge error: {v71}" │
00:01:00 #2143 [verbose] > │ failwith<unit> v83 │
00:01:00 #2144 [verbose] > │ let v84 : string = $"%A{v29}" │
00:01:00 #2145 [verbose] > │ let v85 : (string []) = Array.zeroCreate<string> │
00:01:00 #2146 [verbose] > │ (System.Convert.ToInt32(v70)) │
00:01:00 #2147 [verbose] > │ let v86 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2148 [verbose] > │ while method4(v70, v86) do │
00:01:00 #2149 [verbose] > │ let v88 : uint64 = v86.l0 │
00:01:00 #2150 [verbose] > │ let struct (v89 : string, v90 : int64) = v43.[int v88] │
00:01:00 #2151 [verbose] > │ v85.[int v88] <- v89 │
00:01:00 #2152 [verbose] > │ let v91 : uint64 = v88 + 1UL │
00:01:00 #2153 [verbose] > │ v86.l0 <- v91 │
00:01:00 #2154 [verbose] > │ () │
00:01:00 #2155 [verbose] > │ let v92 : string = v85.[int 0UL] │
00:01:00 #2156 [verbose] > │ let v93 : string = $"%A{v92}" │
00:01:00 #2157 [verbose] > │ let v94 : (int64 []) = Array.zeroCreate<int64> │
00:01:00 #2158 [verbose] > │ (System.Convert.ToInt32(v70)) │
00:01:00 #2159 [verbose] > │ let v95 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2160 [verbose] > │ while method4(v70, v95) do │
00:01:00 #2161 [verbose] > │ let v97 : uint64 = v95.l0 │
00:01:00 #2162 [verbose] > │ let struct (v98 : string, v99 : int64) = v43.[int v97] │
00:01:00 #2163 [verbose] > │ v94.[int v97] <- v99 │
00:01:00 #2164 [verbose] > │ let v100 : uint64 = v97 + 1UL │
00:01:00 #2165 [verbose] > │ v95.l0 <- v100 │
00:01:00 #2166 [verbose] > │ () │
00:01:00 #2167 [verbose] > │ v24.[int v27] <- struct (v84, v30, v93, v94) │
00:01:00 #2168 [verbose] > │ let v101 : uint64 = v27 + 1UL │
00:01:00 #2169 [verbose] > │ v25.l0 <- v101 │
00:01:00 #2170 [verbose] > │ () │
00:01:00 #2171 [verbose] > │ let v102 : uint64 = System.Convert.ToUInt64 v24.Length │
00:01:00 #2172 [verbose] > │ let v103 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * │
00:01:00 #2173 [verbose] > │ US0)> (System.Convert.ToInt32(v102)) │
00:01:00 #2174 [verbose] > │ let v104 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2175 [verbose] > │ while method4(v102, v104) do │
00:01:00 #2176 [verbose] > │ let v106 : uint64 = v104.l0 │
00:01:00 #2177 [verbose] > │ let struct (v107 : string, v108 : string, v109 : string, v110 : │
00:01:00 #2178 [verbose] > │ (int64 [])) = v24.[int v106] │
00:01:00 #2179 [verbose] > │ let v111 : uint64 = System.Convert.ToUInt64 v110.Length │
00:01:00 #2180 [verbose] > │ let v112 : UH4 = UH4_0 │
00:01:00 #2181 [verbose] > │ let v113 : Mut2 = {l0 = 0UL; l1 = v112; l2 = 0L} : Mut2 │
00:01:00 #2182 [verbose] > │ while method17(v111, v113) do │
00:01:00 #2183 [verbose] > │ let v115 : uint64 = v113.l0 │
00:01:00 #2184 [verbose] > │ let struct (v116 : UH4, v117 : int64) = v113.l1, v113.l2 │
00:01:00 #2185 [verbose] > │ let v118 : int64 = v110.[int v115] │
00:01:00 #2186 [verbose] > │ let v119 : int64 = v117 + 1L │
00:01:00 #2187 [verbose] > │ let v120 : uint64 = v115 + 1UL │
00:01:00 #2188 [verbose] > │ let v121 : UH4 = UH4_1(v117, v118, v116) │
00:01:00 #2189 [verbose] > │ v113.l0 <- v120 │
00:01:00 #2190 [verbose] > │ v113.l1 <- v121 │
00:01:00 #2191 [verbose] > │ v113.l2 <- v119 │
00:01:00 #2192 [verbose] > │ () │
00:01:00 #2193 [verbose] > │ let struct (v122 : UH4, v123 : int64) = v113.l1, v113.l2 │
00:01:00 #2194 [verbose] > │ let v124 : UH4 = UH4_0 │
00:01:00 #2195 [verbose] > │ let v125 : UH4 = method18(v122, v124) │
00:01:00 #2196 [verbose] > │ let v126 : (struct (int64 * int64) []) = method19(v125) │
00:01:00 #2197 [verbose] > │ let v127 : int32 = v126.Length │
00:01:00 #2198 [verbose] > │ let v128 : (struct (int64 * int64) []) = Array.zeroCreate<struct │
00:01:00 #2199 [verbose] > │ (int64 * int64)> (v127) │
00:01:00 #2200 [verbose] > │ let v129 : Mut1 = {l0 = 0} : Mut1 │
00:01:00 #2201 [verbose] > │ while method5(v127, v129) do │
00:01:00 #2202 [verbose] > │ let v131 : int32 = v129.l0 │
00:01:00 #2203 [verbose] > │ let struct (v132 : int64, v133 : int64) = v126.[int v131] │
00:01:00 #2204 [verbose] > │ let v134 : int64 = v132 + 1L │
00:01:00 #2205 [verbose] > │ v128.[int v131] <- struct (v134, v133) │
00:01:00 #2206 [verbose] > │ let v135 : int32 = v131 + 1 │
00:01:00 #2207 [verbose] > │ v129.l0 <- v135 │
00:01:00 #2208 [verbose] > │ () │
00:01:00 #2209 [verbose] > │ let v136 : ((struct (int64 * int64) -> int64) -> ((struct (int64 * │
00:01:00 #2210 [verbose] > │ int64) []) -> (struct (int64 * int64) []))) = Array.sortBy │
00:01:00 #2211 [verbose] > │ let v137 : (struct (int64 * int64) -> int64) = closure4() │
00:01:00 #2212 [verbose] > │ let v138 : ((struct (int64 * int64) []) -> (struct (int64 * int64) [ │
00:01:00 #2213 [verbose] > │ ])) = v136 v137 │
00:01:00 #2214 [verbose] > │ let v139 : (struct (int64 * int64) []) = v138 v128 │
00:01:00 #2215 [verbose] > │ let struct (v140 : int64, v141 : int64) = v139.[int 0] │
00:01:00 #2216 [verbose] > │ let v142 : string = $"%A{struct (v140, v141)}" │
00:01:00 #2217 [verbose] > │ let v143 : bool = v107 = v109 │
00:01:00 #2218 [verbose] > │ let v148 : US0 = │
00:01:00 #2219 [verbose] > │ if v143 then │
00:01:00 #2220 [verbose] > │ let v144 : System.ConsoleColor = │
00:01:00 #2221 [verbose] > │ System.ConsoleColor.DarkGreen │
00:01:00 #2222 [verbose] > │ US0_0(v144) │
00:01:00 #2223 [verbose] > │ else │
00:01:00 #2224 [verbose] > │ let v146 : System.ConsoleColor = System.ConsoleColor.DarkRed │
00:01:00 #2225 [verbose] > │ US0_0(v146) │
00:01:00 #2226 [verbose] > │ let v149 : UH2 = UH2_0 │
00:01:00 #2227 [verbose] > │ let v150 : UH2 = UH2_1(v142, v149) │
00:01:00 #2228 [verbose] > │ let v151 : UH2 = UH2_1(v109, v150) │
00:01:00 #2229 [verbose] > │ let v152 : UH2 = UH2_1(v107, v151) │
00:01:00 #2230 [verbose] > │ let v153 : UH2 = UH2_1(v108, v152) │
00:01:00 #2231 [verbose] > │ v103.[int v106] <- struct (v153, v148) │
00:01:00 #2232 [verbose] > │ let v154 : uint64 = v106 + 1UL │
00:01:00 #2233 [verbose] > │ v104.l0 <- v154 │
00:01:00 #2234 [verbose] > │ () │
00:01:00 #2235 [verbose] > │ let v155 : string = "Input" │
00:01:00 #2236 [verbose] > │ let v156 : string = "Expected" │
00:01:00 #2237 [verbose] > │ let v157 : string = "Result" │
00:01:00 #2238 [verbose] > │ let v158 : string = "Best" │
00:01:00 #2239 [verbose] > │ let v159 : UH2 = UH2_0 │
00:01:00 #2240 [verbose] > │ let v160 : UH2 = UH2_1(v158, v159) │
00:01:00 #2241 [verbose] > │ let v161 : UH2 = UH2_1(v157, v160) │
00:01:00 #2242 [verbose] > │ let v162 : UH2 = UH2_1(v156, v161) │
00:01:00 #2243 [verbose] > │ let v163 : UH2 = UH2_1(v155, v162) │
00:01:00 #2244 [verbose] > │ let v164 : US0 = US0_1 │
00:01:00 #2245 [verbose] > │ let v165 : string = "---" │
00:01:00 #2246 [verbose] > │ let v166 : UH2 = UH2_0 │
00:01:00 #2247 [verbose] > │ let v167 : UH2 = UH2_1(v165, v166) │
00:01:00 #2248 [verbose] > │ let v168 : UH2 = UH2_1(v165, v167) │
00:01:00 #2249 [verbose] > │ let v169 : UH2 = UH2_1(v165, v168) │
00:01:00 #2250 [verbose] > │ let v170 : UH2 = UH2_1(v165, v169) │
00:01:00 #2251 [verbose] > │ let v171 : US0 = US0_1 │
00:01:00 #2252 [verbose] > │ let v172 : UH5 = UH5_0 │
00:01:00 #2253 [verbose] > │ let v173 : UH5 = UH5_1(v170, v171, v172) │
00:01:00 #2254 [verbose] > │ let v174 : UH5 = UH5_1(v163, v164, v173) │
00:01:00 #2255 [verbose] > │ let v175 : (struct (UH2 * US0) []) = method22(v174) │
00:01:00 #2256 [verbose] > │ let v176 : uint64 = System.Convert.ToUInt64 v175.Length │
00:01:00 #2257 [verbose] > │ let v177 : uint64 = System.Convert.ToUInt64 v103.Length │
00:01:00 #2258 [verbose] > │ let v178 : uint64 = v176 + v177 │
00:01:00 #2259 [verbose] > │ let v179 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * │
00:01:00 #2260 [verbose] > │ US0)> (System.Convert.ToInt32(v178)) │
00:01:00 #2261 [verbose] > │ let v180 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2262 [verbose] > │ while method4(v178, v180) do │
00:01:00 #2263 [verbose] > │ let v182 : uint64 = v180.l0 │
00:01:00 #2264 [verbose] > │ let v183 : bool = v182 < v176 │
00:01:00 #2265 [verbose] > │ let struct (v189 : UH2, v190 : US0) = │
00:01:00 #2266 [verbose] > │ if v183 then │
00:01:00 #2267 [verbose] > │ let struct (v184 : UH2, v185 : US0) = v175.[int v182] │
00:01:00 #2268 [verbose] > │ struct (v184, v185) │
00:01:00 #2269 [verbose] > │ else │
00:01:00 #2270 [verbose] > │ let v186 : uint64 = v182 - v176 │
00:01:00 #2271 [verbose] > │ let struct (v187 : UH2, v188 : US0) = v103.[int v186] │
00:01:00 #2272 [verbose] > │ struct (v187, v188) │
00:01:00 #2273 [verbose] > │ v179.[int v182] <- struct (v189, v190) │
00:01:00 #2274 [verbose] > │ let v191 : uint64 = v182 + 1UL │
00:01:00 #2275 [verbose] > │ v180.l0 <- v191 │
00:01:00 #2276 [verbose] > │ () │
00:01:00 #2277 [verbose] > │ let v192 : uint64 = System.Convert.ToUInt64 v179.Length │
00:01:00 #2278 [verbose] > │ let v193 : ((string []) []) = Array.zeroCreate<(string [])> │
00:01:00 #2279 [verbose] > │ (System.Convert.ToInt32(v192)) │
00:01:00 #2280 [verbose] > │ let v194 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2281 [verbose] > │ while method4(v192, v194) do │
00:01:00 #2282 [verbose] > │ let v196 : uint64 = v194.l0 │
00:01:00 #2283 [verbose] > │ let struct (v197 : UH2, v198 : US0) = v179.[int v196] │
00:01:00 #2284 [verbose] > │ let v199 : (string []) = method25(v197) │
00:01:00 #2285 [verbose] > │ v193.[int v196] <- v199 │
00:01:00 #2286 [verbose] > │ let v200 : uint64 = v196 + 1UL │
00:01:00 #2287 [verbose] > │ v194.l0 <- v200 │
00:01:00 #2288 [verbose] > │ () │
00:01:00 #2289 [verbose] > │ let v201 : (((string []) []) -> ((string []) [])) = Array.transpose │
00:01:00 #2290 [verbose] > │ let v202 : ((string []) []) = v201 v193 │
00:01:00 #2291 [verbose] > │ let v203 : uint64 = System.Convert.ToUInt64 v202.Length │
00:01:00 #2292 [verbose] > │ let v204 : (int64 []) = Array.zeroCreate<int64> │
00:01:00 #2293 [verbose] > │ (System.Convert.ToInt32(v203)) │
00:01:00 #2294 [verbose] > │ let v205 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2295 [verbose] > │ while method4(v203, v205) do │
00:01:00 #2296 [verbose] > │ let v207 : uint64 = v205.l0 │
00:01:00 #2297 [verbose] > │ let v208 : (string []) = v202.[int v207] │
00:01:00 #2298 [verbose] > │ let v209 : uint64 = System.Convert.ToUInt64 v208.Length │
00:01:00 #2299 [verbose] > │ let v210 : (int64 []) = Array.zeroCreate<int64> │
00:01:00 #2300 [verbose] > │ (System.Convert.ToInt32(v209)) │
00:01:00 #2301 [verbose] > │ let v211 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2302 [verbose] > │ while method4(v209, v211) do │
00:01:00 #2303 [verbose] > │ let v213 : uint64 = v211.l0 │
00:01:00 #2304 [verbose] > │ let v214 : string = v208.[int v213] │
00:01:00 #2305 [verbose] > │ let v215 : int64 = System.Convert.ToInt64 v214.Length │
00:01:00 #2306 [verbose] > │ v210.[int v213] <- v215 │
00:01:00 #2307 [verbose] > │ let v216 : uint64 = v213 + 1UL │
00:01:00 #2308 [verbose] > │ v211.l0 <- v216 │
00:01:00 #2309 [verbose] > │ () │
00:01:00 #2310 [verbose] > │ let v217 : ((int64 []) -> (int64 [])) = Array.sortDescending │
00:01:00 #2311 [verbose] > │ let v218 : (int64 []) = v217 v210 │
00:01:00 #2312 [verbose] > │ let v219 : (int32 -> ((int64 []) -> int64 option)) = Array.tryItem │
00:01:00 #2313 [verbose] > │ let v220 : ((int64 []) -> int64 option) = v219 0 │
00:01:00 #2314 [verbose] > │ let v221 : int64 option = v220 v218 │
00:01:00 #2315 [verbose] > │ let v222 : (int64 -> US1) = method28() │
00:01:00 #2316 [verbose] > │ let v223 : US1 = US1_1 │
00:01:00 #2317 [verbose] > │ let v224 : US1 = v221 |> Option.map v222 |> Option.defaultValue v223 │
00:01:00 #2318 [verbose] > │ let v227 : int64 = │
00:01:00 #2319 [verbose] > │ match v224 with │
00:01:00 #2320 [verbose] > │ | US1_1 -> (* None *) │
00:01:00 #2321 [verbose] > │ 0L │
00:01:00 #2322 [verbose] > │ | US1_0(v225) -> (* Some *) │
00:01:00 #2323 [verbose] > │ v225 │
00:01:00 #2324 [verbose] > │ v204.[int v207] <- v227 │
00:01:00 #2325 [verbose] > │ let v228 : uint64 = v207 + 1UL │
00:01:00 #2326 [verbose] > │ v205.l0 <- v228 │
00:01:00 #2327 [verbose] > │ () │
00:01:00 #2328 [verbose] > │ let v229 : uint64 = System.Convert.ToUInt64 v204.Length │
00:01:00 #2329 [verbose] > │ let v230 : UH6 = UH6_0 │
00:01:00 #2330 [verbose] > │ let v231 : Mut3 = {l0 = 0UL; l1 = v230; l2 = 0} : Mut3 │
00:01:00 #2331 [verbose] > │ while method29(v229, v231) do │
00:01:00 #2332 [verbose] > │ let v233 : uint64 = v231.l0 │
00:01:00 #2333 [verbose] > │ let struct (v234 : UH6, v235 : int32) = v231.l1, v231.l2 │
00:01:00 #2334 [verbose] > │ let v236 : int64 = v204.[int v233] │
00:01:00 #2335 [verbose] > │ let v237 : int32 = v235 + 1 │
00:01:00 #2336 [verbose] > │ let v238 : uint64 = v233 + 1UL │
00:01:00 #2337 [verbose] > │ let v239 : UH6 = UH6_1(v235, v236, v234) │
00:01:00 #2338 [verbose] > │ v231.l0 <- v238 │
00:01:00 #2339 [verbose] > │ v231.l1 <- v239 │
00:01:00 #2340 [verbose] > │ v231.l2 <- v237 │
00:01:00 #2341 [verbose] > │ () │
00:01:00 #2342 [verbose] > │ let struct (v240 : UH6, v241 : int32) = v231.l1, v231.l2 │
00:01:00 #2343 [verbose] > │ let v242 : UH6 = UH6_0 │
00:01:00 #2344 [verbose] > │ let v243 : UH6 = method30(v240, v242) │
00:01:00 #2345 [verbose] > │ let v244 : (struct (int32 * int64) []) = method31(v243) │
00:01:00 #2346 [verbose] > │ let v245 : Map<int32, int64> = v244 |> Array.map (fun (struct (a, b)) -> │
00:01:00 #2347 [verbose] > │ a, b) |> Map.ofArray │
00:01:00 #2348 [verbose] > │ let v246 : (struct ((string []) * US0) []) = Array.zeroCreate<struct │
00:01:00 #2349 [verbose] > │ ((string []) * US0)> (System.Convert.ToInt32(v192)) │
00:01:00 #2350 [verbose] > │ let v247 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2351 [verbose] > │ while method4(v192, v247) do │
00:01:00 #2352 [verbose] > │ let v249 : uint64 = v247.l0 │
00:01:00 #2353 [verbose] > │ let struct (v250 : UH2, v251 : US0) = v179.[int v249] │
00:01:00 #2354 [verbose] > │ let v252 : UH7 = UH7_0 │
00:01:00 #2355 [verbose] > │ let v253 : int32 = 0 │
00:01:00 #2356 [verbose] > │ let struct (v254 : UH7, v255 : int32) = method34(v250, v252, v253) │
00:01:00 #2357 [verbose] > │ let v256 : UH7 = UH7_0 │
00:01:00 #2358 [verbose] > │ let v257 : UH7 = method35(v254, v256) │
00:01:00 #2359 [verbose] > │ let v258 : UH2 = UH2_0 │
00:01:00 #2360 [verbose] > │ let v259 : UH2 = method36(v245, v257, v258) │
00:01:00 #2361 [verbose] > │ let v260 : (string []) = method9(v259) │
00:01:00 #2362 [verbose] > │ v246.[int v249] <- struct (v260, v251) │
00:01:00 #2363 [verbose] > │ let v261 : uint64 = v249 + 1UL │
00:01:00 #2364 [verbose] > │ v247.l0 <- v261 │
00:01:00 #2365 [verbose] > │ () │
00:01:00 #2366 [verbose] > │ System.Console.WriteLine v2 │
00:01:00 #2367 [verbose] > │ let v262 : uint64 = System.Convert.ToUInt64 v246.Length │
00:01:00 #2368 [verbose] > │ let v263 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2369 [verbose] > │ while method4(v262, v263) do │
00:01:00 #2370 [verbose] > │ let v265 : uint64 = v263.l0 │
00:01:00 #2371 [verbose] > │ let struct (v266 : (string []), v267 : US0) = v246.[int v265] │
00:01:00 #2372 [verbose] > │ match v267 with │
00:01:00 #2373 [verbose] > │ | US0_1 -> (* None *) │
00:01:00 #2374 [verbose] > │ let v270 : unit option = None │
00:01:00 #2375 [verbose] > │ let mutable _v270 = v270 │
00:01:00 #2376 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:00 #2377 [verbose] > │ () │
00:01:00 #2378 [verbose] > │ #endif │
00:01:00 #2379 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:00 #2380 [verbose] > │ () │
00:01:00 #2381 [verbose] > │ #endif │
00:01:00 #2382 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:00 #2383 [verbose] > │ () │
00:01:00 #2384 [verbose] > │ #endif │
00:01:00 #2385 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:00 #2386 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:00 #2387 [verbose] > │ System.Console.ResetColor () │
00:01:00 #2388 [verbose] > │ () │
00:01:00 #2389 [verbose] > │ #endif │
00:01:00 #2390 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:00 #2391 [verbose] > │ () │
00:01:00 #2392 [verbose] > │ #endif │
00:01:00 #2393 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:00 #2394 [verbose] > │ FABLE_COMPILER_DART │
00:01:00 #2395 [verbose] > │ Unchecked.defaultof<unit> │
00:01:00 #2396 [verbose] > │ #endif │
00:01:00 #2397 [verbose] > │ |> fun x -> _v270 <- Some x │
00:01:00 #2398 [verbose] > │ _v270.Value │
00:01:00 #2399 [verbose] > │ () │
00:01:00 #2400 [verbose] > │ | US0_0(v268) -> (* Some *) │
00:01:00 #2401 [verbose] > │ let v269 : unit option = None │
00:01:00 #2402 [verbose] > │ let mutable _v269 = v269 │
00:01:00 #2403 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:00 #2404 [verbose] > │ () │
00:01:00 #2405 [verbose] > │ #endif │
00:01:00 #2406 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:00 #2407 [verbose] > │ () │
00:01:00 #2408 [verbose] > │ #endif │
00:01:00 #2409 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:00 #2410 [verbose] > │ () │
00:01:00 #2411 [verbose] > │ #endif │
00:01:00 #2412 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:00 #2413 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:00 #2414 [verbose] > │ System.Console.ForegroundColor <- v268 │
00:01:00 #2415 [verbose] > │ () │
00:01:00 #2416 [verbose] > │ #endif │
00:01:00 #2417 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:00 #2418 [verbose] > │ () │
00:01:00 #2419 [verbose] > │ #endif │
00:01:00 #2420 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:00 #2421 [verbose] > │ FABLE_COMPILER_DART │
00:01:00 #2422 [verbose] > │ Unchecked.defaultof<unit> │
00:01:00 #2423 [verbose] > │ #endif │
00:01:00 #2424 [verbose] > │ |> fun x -> _v269 <- Some x │
00:01:00 #2425 [verbose] > │ _v269.Value │
00:01:00 #2426 [verbose] > │ () │
00:01:00 #2427 [verbose] > │ let v271 : string = "\t| " │
00:01:00 #2428 [verbose] > │ let v272 : string = System.String.Join (v271, v266) │
00:01:00 #2429 [verbose] > │ System.Console.WriteLine v272 │
00:01:00 #2430 [verbose] > │ let v273 : unit option = None │
00:01:00 #2431 [verbose] > │ let mutable _v273 = v273 │
00:01:00 #2432 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:00 #2433 [verbose] > │ () │
00:01:00 #2434 [verbose] > │ #endif │
00:01:00 #2435 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:00 #2436 [verbose] > │ () │
00:01:00 #2437 [verbose] > │ #endif │
00:01:00 #2438 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:00 #2439 [verbose] > │ () │
00:01:00 #2440 [verbose] > │ #endif │
00:01:00 #2441 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:00 #2442 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:00 #2443 [verbose] > │ System.Console.ResetColor () │
00:01:00 #2444 [verbose] > │ () │
00:01:00 #2445 [verbose] > │ #endif │
00:01:00 #2446 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:00 #2447 [verbose] > │ () │
00:01:00 #2448 [verbose] > │ #endif │
00:01:00 #2449 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:00 #2450 [verbose] > │ FABLE_COMPILER_DART │
00:01:00 #2451 [verbose] > │ Unchecked.defaultof<unit> │
00:01:00 #2452 [verbose] > │ #endif │
00:01:00 #2453 [verbose] > │ |> fun x -> _v273 <- Some x │
00:01:00 #2454 [verbose] > │ _v273.Value │
00:01:00 #2455 [verbose] > │ let v274 : uint64 = v265 + 1UL │
00:01:00 #2456 [verbose] > │ v263.l0 <- v274 │
00:01:00 #2457 [verbose] > │ () │
00:01:00 #2458 [verbose] > │ let v275 : ((float []) []) = Array.zeroCreate<(float [])> │
00:01:00 #2459 [verbose] > │ (System.Convert.ToInt32(v102)) │
00:01:00 #2460 [verbose] > │ let v276 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2461 [verbose] > │ while method4(v102, v276) do │
00:01:00 #2462 [verbose] > │ let v278 : uint64 = v276.l0 │
00:01:00 #2463 [verbose] > │ let struct (v279 : string, v280 : string, v281 : string, v282 : │
00:01:00 #2464 [verbose] > │ (int64 [])) = v24.[int v278] │
00:01:00 #2465 [verbose] > │ let v283 : (int64 -> float) = float │
00:01:00 #2466 [verbose] > │ let v284 : uint64 = System.Convert.ToUInt64 v282.Length │
00:01:00 #2467 [verbose] > │ let v285 : (float []) = Array.zeroCreate<float> │
00:01:00 #2468 [verbose] > │ (System.Convert.ToInt32(v284)) │
00:01:00 #2469 [verbose] > │ let v286 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2470 [verbose] > │ while method4(v284, v286) do │
00:01:00 #2471 [verbose] > │ let v288 : uint64 = v286.l0 │
00:01:00 #2472 [verbose] > │ let v289 : int64 = v282.[int v288] │
00:01:00 #2473 [verbose] > │ let v290 : float = v283 v289 │
00:01:00 #2474 [verbose] > │ v285.[int v288] <- v290 │
00:01:00 #2475 [verbose] > │ let v291 : uint64 = v288 + 1UL │
00:01:00 #2476 [verbose] > │ v286.l0 <- v291 │
00:01:00 #2477 [verbose] > │ () │
00:01:00 #2478 [verbose] > │ v275.[int v278] <- v285 │
00:01:00 #2479 [verbose] > │ let v292 : uint64 = v278 + 1UL │
00:01:00 #2480 [verbose] > │ v276.l0 <- v292 │
00:01:00 #2481 [verbose] > │ () │
00:01:00 #2482 [verbose] > │ let v293 : (((float []) []) -> ((float []) [])) = Array.transpose │
00:01:00 #2483 [verbose] > │ let v294 : ((float []) []) = v293 v275 │
00:01:00 #2484 [verbose] > │ let v295 : uint64 = System.Convert.ToUInt64 v294.Length │
00:01:00 #2485 [verbose] > │ let v296 : (float []) = Array.zeroCreate<float> │
00:01:00 #2486 [verbose] > │ (System.Convert.ToInt32(v295)) │
00:01:00 #2487 [verbose] > │ let v297 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2488 [verbose] > │ while method4(v295, v297) do │
00:01:00 #2489 [verbose] > │ let v299 : uint64 = v297.l0 │
00:01:00 #2490 [verbose] > │ let v300 : (float []) = v294.[int v299] │
00:01:00 #2491 [verbose] > │ let v301 : ((float []) -> float) = Array.average │
00:01:00 #2492 [verbose] > │ let v302 : float = v301 v300 │
00:01:00 #2493 [verbose] > │ v296.[int v299] <- v302 │
00:01:00 #2494 [verbose] > │ let v303 : uint64 = v299 + 1UL │
00:01:00 #2495 [verbose] > │ v297.l0 <- v303 │
00:01:00 #2496 [verbose] > │ () │
00:01:00 #2497 [verbose] > │ let v304 : (float -> int64) = int64 │
00:01:00 #2498 [verbose] > │ let v305 : uint64 = System.Convert.ToUInt64 v296.Length │
00:01:00 #2499 [verbose] > │ let v306 : (int64 []) = Array.zeroCreate<int64> │
00:01:00 #2500 [verbose] > │ (System.Convert.ToInt32(v305)) │
00:01:00 #2501 [verbose] > │ let v307 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2502 [verbose] > │ while method4(v305, v307) do │
00:01:00 #2503 [verbose] > │ let v309 : uint64 = v307.l0 │
00:01:00 #2504 [verbose] > │ let v310 : float = v296.[int v309] │
00:01:00 #2505 [verbose] > │ let v311 : int64 = v304 v310 │
00:01:00 #2506 [verbose] > │ v306.[int v309] <- v311 │
00:01:00 #2507 [verbose] > │ let v312 : uint64 = v309 + 1UL │
00:01:00 #2508 [verbose] > │ v307.l0 <- v312 │
00:01:00 #2509 [verbose] > │ () │
00:01:00 #2510 [verbose] > │ let v313 : uint64 = System.Convert.ToUInt64 v306.Length │
00:01:00 #2511 [verbose] > │ let v314 : UH6 = UH6_0 │
00:01:00 #2512 [verbose] > │ let v315 : Mut3 = {l0 = 0UL; l1 = v314; l2 = 0} : Mut3 │
00:01:00 #2513 [verbose] > │ while method29(v313, v315) do │
00:01:00 #2514 [verbose] > │ let v317 : uint64 = v315.l0 │
00:01:00 #2515 [verbose] > │ let struct (v318 : UH6, v319 : int32) = v315.l1, v315.l2 │
00:01:00 #2516 [verbose] > │ let v320 : int64 = v306.[int v317] │
00:01:00 #2517 [verbose] > │ let v321 : int32 = v319 + 1 │
00:01:00 #2518 [verbose] > │ let v322 : uint64 = v317 + 1UL │
00:01:00 #2519 [verbose] > │ let v323 : UH6 = UH6_1(v319, v320, v318) │
00:01:00 #2520 [verbose] > │ v315.l0 <- v322 │
00:01:00 #2521 [verbose] > │ v315.l1 <- v323 │
00:01:00 #2522 [verbose] > │ v315.l2 <- v321 │
00:01:00 #2523 [verbose] > │ () │
00:01:00 #2524 [verbose] > │ let struct (v324 : UH6, v325 : int32) = v315.l1, v315.l2 │
00:01:00 #2525 [verbose] > │ let v326 : UH6 = UH6_0 │
00:01:00 #2526 [verbose] > │ let v327 : UH6 = method30(v324, v326) │
00:01:00 #2527 [verbose] > │ let v328 : (struct (int32 * int64) []) = method37(v327) │
00:01:00 #2528 [verbose] > │ System.Console.WriteLine v2 │
00:01:00 #2529 [verbose] > │ let v329 : string = "Average Ranking " │
00:01:00 #2530 [verbose] > │ System.Console.WriteLine v329 │
00:01:00 #2531 [verbose] > │ let v330 : ((struct (int32 * int64) -> int64) -> ((struct (int32 * │
00:01:00 #2532 [verbose] > │ int64) []) -> (struct (int32 * int64) []))) = Array.sortBy │
00:01:00 #2533 [verbose] > │ let v331 : (struct (int32 * int64) -> int64) = closure6() │
00:01:00 #2534 [verbose] > │ let v332 : ((struct (int32 * int64) []) -> (struct (int32 * int64) [])) │
00:01:00 #2535 [verbose] > │ = v330 v331 │
00:01:00 #2536 [verbose] > │ let v333 : (struct (int32 * int64) []) = v332 v328 │
00:01:00 #2537 [verbose] > │ let v334 : uint64 = System.Convert.ToUInt64 v333.Length │
00:01:00 #2538 [verbose] > │ let v335 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2539 [verbose] > │ while method4(v334, v335) do │
00:01:00 #2540 [verbose] > │ let v337 : uint64 = v335.l0 │
00:01:00 #2541 [verbose] > │ let struct (v338 : int32, v339 : int64) = v333.[int v337] │
00:01:00 #2542 [verbose] > │ let v340 : string = $"Test case %d{v338 + 1}. Average Time: %A{v339} │
00:01:00 #2543 [verbose] > │ " │
00:01:00 #2544 [verbose] > │ System.Console.WriteLine v340 │
00:01:00 #2545 [verbose] > │ let v341 : uint64 = v337 + 1UL │
00:01:00 #2546 [verbose] > │ v335.l0 <- v341 │
00:01:00 #2547 [verbose] > │ () │
00:01:00 #2548 [verbose] > │ () │
00:01:00 #2549 [verbose] > │ and method0 () : unit = │
00:01:00 #2550 [verbose] > │ let v0 : (unit -> unit) = closure0() │
00:01:00 #2551 [verbose] > │ let v1 : string = nameof v0 │
00:01:00 #2552 [verbose] > │ let v2 : string = "" │
00:01:00 #2553 [verbose] > │ System.Console.WriteLine v2 │
00:01:00 #2554 [verbose] > │ System.Console.WriteLine v2 │
00:01:00 #2555 [verbose] > │ let v3 : string = $"Test: {v1}" │
00:01:00 #2556 [verbose] > │ System.Console.WriteLine v3 │
00:01:00 #2557 [verbose] > │ let v4 : string = "abc" │
00:01:00 #2558 [verbose] > │ let v5 : string = "bca cab abc" │
00:01:00 #2559 [verbose] > │ let v6 : string = "abcde" │
00:01:00 #2560 [verbose] > │ let v7 : string = "bcdea cdeab deabc eabcd abcde" │
00:01:00 #2561 [verbose] > │ let v8 : string = "abcdefghi" │
00:01:00 #2562 [verbose] > │ let v9 : string = "bcdefghia cdefghiab defghiabc efghiabcd fghiabcde │
00:01:00 #2563 [verbose] > │ ghiabcdef hiabcdefg iabcdefgh abcdefghi" │
00:01:00 #2564 [verbose] > │ let v10 : string = "abab" │
00:01:00 #2565 [verbose] > │ let v11 : string = "baba abab baba abab" │
00:01:00 #2566 [verbose] > │ let v12 : string = "aa" │
00:01:00 #2567 [verbose] > │ let v13 : string = "aa aa" │
00:01:00 #2568 [verbose] > │ let v14 : string = "z" │
00:01:00 #2569 [verbose] > │ let v15 : UH0 = UH0_0 │
00:01:00 #2570 [verbose] > │ let v16 : UH0 = UH0_1(v14, v14, v15) │
00:01:00 #2571 [verbose] > │ let v17 : UH0 = UH0_1(v12, v13, v16) │
00:01:00 #2572 [verbose] > │ let v18 : UH0 = UH0_1(v10, v11, v17) │
00:01:00 #2573 [verbose] > │ let v19 : UH0 = UH0_1(v8, v9, v18) │
00:01:00 #2574 [verbose] > │ let v20 : UH0 = UH0_1(v6, v7, v19) │
00:01:00 #2575 [verbose] > │ let v21 : UH0 = UH0_1(v4, v5, v20) │
00:01:00 #2576 [verbose] > │ let v22 : (struct (string * string) []) = method1(v21) │
00:01:00 #2577 [verbose] > │ let v23 : uint64 = System.Convert.ToUInt64 v22.Length │
00:01:00 #2578 [verbose] > │ let v24 : (struct (string * string * string * (int64 [])) []) = │
00:01:00 #2579 [verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))> │
00:01:00 #2580 [verbose] > │ (System.Convert.ToInt32(v23)) │
00:01:00 #2581 [verbose] > │ let v25 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2582 [verbose] > │ while method4(v23, v25) do │
00:01:00 #2583 [verbose] > │ let v27 : uint64 = v25.l0 │
00:01:00 #2584 [verbose] > │ let struct (v28 : string, v29 : string) = v22.[int v27] │
00:01:00 #2585 [verbose] > │ let v30 : string = $"%A{v28}" │
00:01:00 #2586 [verbose] > │ System.Console.WriteLine v2 │
00:01:00 #2587 [verbose] > │ let v31 : string = $"Solution: {v30} " │
00:01:00 #2588 [verbose] > │ System.Console.WriteLine v31 │
00:01:00 #2589 [verbose] > │ let v32 : int32 = 0 │
00:01:00 #2590 [verbose] > │ let v33 : string = "F" │
00:01:00 #2591 [verbose] > │ let v34 : (string -> string) = closure1() │
00:01:00 #2592 [verbose] > │ let v35 : int32 = 1 │
00:01:00 #2593 [verbose] > │ let v36 : string = "FA" │
00:01:00 #2594 [verbose] > │ let v37 : (string -> string) = closure2() │
00:01:00 #2595 [verbose] > │ let v38 : UH3 = UH3_0 │
00:01:00 #2596 [verbose] > │ let v39 : UH3 = UH3_1(v35, v36, v37, v38) │
00:01:00 #2597 [verbose] > │ let v40 : UH3 = UH3_1(v32, v33, v34, v39) │
00:01:00 #2598 [verbose] > │ let v41 : (struct (int32 * string * (string -> string)) []) = │
00:01:00 #2599 [verbose] > │ method12(v40) │
00:01:00 #2600 [verbose] > │ let v42 : uint64 = System.Convert.ToUInt64 v41.Length │
00:01:00 #2601 [verbose] > │ let v43 : (struct (string * int64) []) = Array.zeroCreate<struct │
00:01:00 #2602 [verbose] > │ (string * int64)> (System.Convert.ToInt32(v42)) │
00:01:00 #2603 [verbose] > │ let v44 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2604 [verbose] > │ while method4(v42, v44) do │
00:01:00 #2605 [verbose] > │ let v46 : uint64 = v44.l0 │
00:01:00 #2606 [verbose] > │ let struct (v47 : int32, v48 : string, v49 : (string -> string)) │
00:01:00 #2607 [verbose] > │ = v41.[int v46] │
00:01:00 #2608 [verbose] > │ let v50 : unit option = None │
00:01:00 #2609 [verbose] > │ let mutable _v50 = v50 │
00:01:00 #2610 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:00 #2611 [verbose] > │ () │
00:01:00 #2612 [verbose] > │ #endif │
00:01:00 #2613 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:00 #2614 [verbose] > │ () │
00:01:00 #2615 [verbose] > │ #endif │
00:01:00 #2616 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:00 #2617 [verbose] > │ () │
00:01:00 #2618 [verbose] > │ #endif │
00:01:00 #2619 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:00 #2620 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:00 #2621 [verbose] > │ System.GC.Collect () │
00:01:00 #2622 [verbose] > │ () │
00:01:00 #2623 [verbose] > │ #endif │
00:01:00 #2624 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:00 #2625 [verbose] > │ () │
00:01:00 #2626 [verbose] > │ #endif │
00:01:00 #2627 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:00 #2628 [verbose] > │ FABLE_COMPILER_DART │
00:01:00 #2629 [verbose] > │ Unchecked.defaultof<unit> │
00:01:00 #2630 [verbose] > │ #endif │
00:01:00 #2631 [verbose] > │ |> fun x -> _v50 <- Some x │
00:01:00 #2632 [verbose] > │ _v50.Value │
00:01:00 #2633 [verbose] > │ let v51 : (unit -> System.Diagnostics.Stopwatch) = │
00:01:00 #2634 [verbose] > │ System.Diagnostics.Stopwatch │
00:01:00 #2635 [verbose] > │ let v52 : System.Diagnostics.Stopwatch = v51 () │
00:01:00 #2636 [verbose] > │ v52.Start () │
00:01:00 #2637 [verbose] > │ let v53 : int64 = v52.ElapsedMilliseconds │
00:01:00 #2638 [verbose] > │ let v54 : (int32 []) = Array.zeroCreate<int32> (2000001) │
00:01:00 #2639 [verbose] > │ let v55 : Mut1 = {l0 = 0} : Mut1 │
00:01:00 #2640 [verbose] > │ while method15(v55) do │
00:01:00 #2641 [verbose] > │ let v57 : int32 = v55.l0 │
00:01:00 #2642 [verbose] > │ v54.[int v57] <- v57 │
00:01:00 #2643 [verbose] > │ let v58 : int32 = v57 + 1 │
00:01:00 #2644 [verbose] > │ v55.l0 <- v58 │
00:01:00 #2645 [verbose] > │ () │
00:01:00 #2646 [verbose] > │ let v59 : ((int32 -> string) -> ((int32 []) -> (string []))) = │
00:01:00 #2647 [verbose] > │ Array.Parallel.map │
00:01:00 #2648 [verbose] > │ let v60 : (int32 -> string) = closure3(v28, v49) │
00:01:00 #2649 [verbose] > │ let v61 : ((int32 []) -> (string [])) = v59 v60 │
00:01:00 #2650 [verbose] > │ let v62 : (string []) = v61 v54 │
00:01:00 #2651 [verbose] > │ let v63 : int32 = v62.Length │
00:01:00 #2652 [verbose] > │ let v64 : int32 = v63 - 1 │
00:01:00 #2653 [verbose] > │ let v65 : string = v62.[int v64] │
00:01:00 #2654 [verbose] > │ let v66 : int64 = v52.ElapsedMilliseconds │
00:01:00 #2655 [verbose] > │ let v67 : int64 = v66 - v53 │
00:01:00 #2656 [verbose] > │ let v68 : string = $"Test case {v47 + 1}. {v48}. Time: {v67} " │
00:01:00 #2657 [verbose] > │ System.Console.WriteLine v68 │
00:01:00 #2658 [verbose] > │ v43.[int v46] <- struct (v65, v67) │
00:01:00 #2659 [verbose] > │ let v69 : uint64 = v46 + 1UL │
00:01:00 #2660 [verbose] > │ v44.l0 <- v69 │
00:01:00 #2661 [verbose] > │ () │
00:01:00 #2662 [verbose] > │ let v70 : uint64 = System.Convert.ToUInt64 v43.Length │
00:01:00 #2663 [verbose] > │ let v71 : (string []) = Array.zeroCreate<string> │
00:01:00 #2664 [verbose] > │ (System.Convert.ToInt32(v70)) │
00:01:00 #2665 [verbose] > │ let v72 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2666 [verbose] > │ while method4(v70, v72) do │
00:01:00 #2667 [verbose] > │ let v74 : uint64 = v72.l0 │
00:01:00 #2668 [verbose] > │ let struct (v75 : string, v76 : int64) = v43.[int v74] │
00:01:00 #2669 [verbose] > │ v71.[int v74] <- v75 │
00:01:00 #2670 [verbose] > │ let v77 : uint64 = v74 + 1UL │
00:01:00 #2671 [verbose] > │ v72.l0 <- v77 │
00:01:00 #2672 [verbose] > │ () │
00:01:00 #2673 [verbose] > │ let v78 : uint64 = System.Convert.ToUInt64 v71.Length │
00:01:00 #2674 [verbose] > │ let v79 : bool = v78 <= 1UL │
00:01:00 #2675 [verbose] > │ if v79 then │
00:01:00 #2676 [verbose] > │ () │
00:01:00 #2677 [verbose] > │ else │
00:01:00 #2678 [verbose] > │ let v80 : string = v71.[int 0UL] │
00:01:00 #2679 [verbose] > │ let v81 : uint64 = 0UL │
00:01:00 #2680 [verbose] > │ let v82 : bool = method16(v80, v71, v81) │
00:01:00 #2681 [verbose] > │ if v82 then │
00:01:00 #2682 [verbose] > │ () │
00:01:00 #2683 [verbose] > │ else │
00:01:00 #2684 [verbose] > │ let v83 : string = $"Challenge error: {v71}" │
00:01:00 #2685 [verbose] > │ failwith<unit> v83 │
00:01:00 #2686 [verbose] > │ let v84 : string = $"%A{v29}" │
00:01:00 #2687 [verbose] > │ let v85 : (string []) = Array.zeroCreate<string> │
00:01:00 #2688 [verbose] > │ (System.Convert.ToInt32(v70)) │
00:01:00 #2689 [verbose] > │ let v86 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2690 [verbose] > │ while method4(v70, v86) do │
00:01:00 #2691 [verbose] > │ let v88 : uint64 = v86.l0 │
00:01:00 #2692 [verbose] > │ let struct (v89 : string, v90 : int64) = v43.[int v88] │
00:01:00 #2693 [verbose] > │ v85.[int v88] <- v89 │
00:01:00 #2694 [verbose] > │ let v91 : uint64 = v88 + 1UL │
00:01:00 #2695 [verbose] > │ v86.l0 <- v91 │
00:01:00 #2696 [verbose] > │ () │
00:01:00 #2697 [verbose] > │ let v92 : string = v85.[int 0UL] │
00:01:00 #2698 [verbose] > │ let v93 : string = $"%A{v92}" │
00:01:00 #2699 [verbose] > │ let v94 : (int64 []) = Array.zeroCreate<int64> │
00:01:00 #2700 [verbose] > │ (System.Convert.ToInt32(v70)) │
00:01:00 #2701 [verbose] > │ let v95 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2702 [verbose] > │ while method4(v70, v95) do │
00:01:00 #2703 [verbose] > │ let v97 : uint64 = v95.l0 │
00:01:00 #2704 [verbose] > │ let struct (v98 : string, v99 : int64) = v43.[int v97] │
00:01:00 #2705 [verbose] > │ v94.[int v97] <- v99 │
00:01:00 #2706 [verbose] > │ let v100 : uint64 = v97 + 1UL │
00:01:00 #2707 [verbose] > │ v95.l0 <- v100 │
00:01:00 #2708 [verbose] > │ () │
00:01:00 #2709 [verbose] > │ v24.[int v27] <- struct (v84, v30, v93, v94) │
00:01:00 #2710 [verbose] > │ let v101 : uint64 = v27 + 1UL │
00:01:00 #2711 [verbose] > │ v25.l0 <- v101 │
00:01:00 #2712 [verbose] > │ () │
00:01:00 #2713 [verbose] > │ let v102 : uint64 = System.Convert.ToUInt64 v24.Length │
00:01:00 #2714 [verbose] > │ let v103 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * │
00:01:00 #2715 [verbose] > │ US0)> (System.Convert.ToInt32(v102)) │
00:01:00 #2716 [verbose] > │ let v104 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2717 [verbose] > │ while method4(v102, v104) do │
00:01:00 #2718 [verbose] > │ let v106 : uint64 = v104.l0 │
00:01:00 #2719 [verbose] > │ let struct (v107 : string, v108 : string, v109 : string, v110 : │
00:01:00 #2720 [verbose] > │ (int64 [])) = v24.[int v106] │
00:01:00 #2721 [verbose] > │ let v111 : uint64 = System.Convert.ToUInt64 v110.Length │
00:01:00 #2722 [verbose] > │ let v112 : UH4 = UH4_0 │
00:01:00 #2723 [verbose] > │ let v113 : Mut2 = {l0 = 0UL; l1 = v112; l2 = 0L} : Mut2 │
00:01:00 #2724 [verbose] > │ while method17(v111, v113) do │
00:01:00 #2725 [verbose] > │ let v115 : uint64 = v113.l0 │
00:01:00 #2726 [verbose] > │ let struct (v116 : UH4, v117 : int64) = v113.l1, v113.l2 │
00:01:00 #2727 [verbose] > │ let v118 : int64 = v110.[int v115] │
00:01:00 #2728 [verbose] > │ let v119 : int64 = v117 + 1L │
00:01:00 #2729 [verbose] > │ let v120 : uint64 = v115 + 1UL │
00:01:00 #2730 [verbose] > │ let v121 : UH4 = UH4_1(v117, v118, v116) │
00:01:00 #2731 [verbose] > │ v113.l0 <- v120 │
00:01:00 #2732 [verbose] > │ v113.l1 <- v121 │
00:01:00 #2733 [verbose] > │ v113.l2 <- v119 │
00:01:00 #2734 [verbose] > │ () │
00:01:00 #2735 [verbose] > │ let struct (v122 : UH4, v123 : int64) = v113.l1, v113.l2 │
00:01:00 #2736 [verbose] > │ let v124 : UH4 = UH4_0 │
00:01:00 #2737 [verbose] > │ let v125 : UH4 = method18(v122, v124) │
00:01:00 #2738 [verbose] > │ let v126 : (struct (int64 * int64) []) = method19(v125) │
00:01:00 #2739 [verbose] > │ let v127 : int32 = v126.Length │
00:01:00 #2740 [verbose] > │ let v128 : (struct (int64 * int64) []) = Array.zeroCreate<struct │
00:01:00 #2741 [verbose] > │ (int64 * int64)> (v127) │
00:01:00 #2742 [verbose] > │ let v129 : Mut1 = {l0 = 0} : Mut1 │
00:01:00 #2743 [verbose] > │ while method5(v127, v129) do │
00:01:00 #2744 [verbose] > │ let v131 : int32 = v129.l0 │
00:01:00 #2745 [verbose] > │ let struct (v132 : int64, v133 : int64) = v126.[int v131] │
00:01:00 #2746 [verbose] > │ let v134 : int64 = v132 + 1L │
00:01:00 #2747 [verbose] > │ v128.[int v131] <- struct (v134, v133) │
00:01:00 #2748 [verbose] > │ let v135 : int32 = v131 + 1 │
00:01:00 #2749 [verbose] > │ v129.l0 <- v135 │
00:01:00 #2750 [verbose] > │ () │
00:01:00 #2751 [verbose] > │ let v136 : ((struct (int64 * int64) -> int64) -> ((struct (int64 * │
00:01:00 #2752 [verbose] > │ int64) []) -> (struct (int64 * int64) []))) = Array.sortBy │
00:01:00 #2753 [verbose] > │ let v137 : (struct (int64 * int64) -> int64) = closure4() │
00:01:00 #2754 [verbose] > │ let v138 : ((struct (int64 * int64) []) -> (struct (int64 * int64) [ │
00:01:00 #2755 [verbose] > │ ])) = v136 v137 │
00:01:00 #2756 [verbose] > │ let v139 : (struct (int64 * int64) []) = v138 v128 │
00:01:00 #2757 [verbose] > │ let struct (v140 : int64, v141 : int64) = v139.[int 0] │
00:01:00 #2758 [verbose] > │ let v142 : string = $"%A{struct (v140, v141)}" │
00:01:00 #2759 [verbose] > │ let v143 : bool = v107 = v109 │
00:01:00 #2760 [verbose] > │ let v148 : US0 = │
00:01:00 #2761 [verbose] > │ if v143 then │
00:01:00 #2762 [verbose] > │ let v144 : System.ConsoleColor = │
00:01:00 #2763 [verbose] > │ System.ConsoleColor.DarkGreen │
00:01:00 #2764 [verbose] > │ US0_0(v144) │
00:01:00 #2765 [verbose] > │ else │
00:01:00 #2766 [verbose] > │ let v146 : System.ConsoleColor = System.ConsoleColor.DarkRed │
00:01:00 #2767 [verbose] > │ US0_0(v146) │
00:01:00 #2768 [verbose] > │ let v149 : UH2 = UH2_0 │
00:01:00 #2769 [verbose] > │ let v150 : UH2 = UH2_1(v142, v149) │
00:01:00 #2770 [verbose] > │ let v151 : UH2 = UH2_1(v109, v150) │
00:01:00 #2771 [verbose] > │ let v152 : UH2 = UH2_1(v107, v151) │
00:01:00 #2772 [verbose] > │ let v153 : UH2 = UH2_1(v108, v152) │
00:01:00 #2773 [verbose] > │ v103.[int v106] <- struct (v153, v148) │
00:01:00 #2774 [verbose] > │ let v154 : uint64 = v106 + 1UL │
00:01:00 #2775 [verbose] > │ v104.l0 <- v154 │
00:01:00 #2776 [verbose] > │ () │
00:01:00 #2777 [verbose] > │ let v155 : string = "Input" │
00:01:00 #2778 [verbose] > │ let v156 : string = "Expected" │
00:01:00 #2779 [verbose] > │ let v157 : string = "Result" │
00:01:00 #2780 [verbose] > │ let v158 : string = "Best" │
00:01:00 #2781 [verbose] > │ let v159 : UH2 = UH2_0 │
00:01:00 #2782 [verbose] > │ let v160 : UH2 = UH2_1(v158, v159) │
00:01:00 #2783 [verbose] > │ let v161 : UH2 = UH2_1(v157, v160) │
00:01:00 #2784 [verbose] > │ let v162 : UH2 = UH2_1(v156, v161) │
00:01:00 #2785 [verbose] > │ let v163 : UH2 = UH2_1(v155, v162) │
00:01:00 #2786 [verbose] > │ let v164 : US0 = US0_1 │
00:01:00 #2787 [verbose] > │ let v165 : string = "---" │
00:01:00 #2788 [verbose] > │ let v166 : UH2 = UH2_0 │
00:01:00 #2789 [verbose] > │ let v167 : UH2 = UH2_1(v165, v166) │
00:01:00 #2790 [verbose] > │ let v168 : UH2 = UH2_1(v165, v167) │
00:01:00 #2791 [verbose] > │ let v169 : UH2 = UH2_1(v165, v168) │
00:01:00 #2792 [verbose] > │ let v170 : UH2 = UH2_1(v165, v169) │
00:01:00 #2793 [verbose] > │ let v171 : US0 = US0_1 │
00:01:00 #2794 [verbose] > │ let v172 : UH5 = UH5_0 │
00:01:00 #2795 [verbose] > │ let v173 : UH5 = UH5_1(v170, v171, v172) │
00:01:00 #2796 [verbose] > │ let v174 : UH5 = UH5_1(v163, v164, v173) │
00:01:00 #2797 [verbose] > │ let v175 : (struct (UH2 * US0) []) = method22(v174) │
00:01:00 #2798 [verbose] > │ let v176 : uint64 = System.Convert.ToUInt64 v175.Length │
00:01:00 #2799 [verbose] > │ let v177 : uint64 = System.Convert.ToUInt64 v103.Length │
00:01:00 #2800 [verbose] > │ let v178 : uint64 = v176 + v177 │
00:01:00 #2801 [verbose] > │ let v179 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * │
00:01:00 #2802 [verbose] > │ US0)> (System.Convert.ToInt32(v178)) │
00:01:00 #2803 [verbose] > │ let v180 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2804 [verbose] > │ while method4(v178, v180) do │
00:01:00 #2805 [verbose] > │ let v182 : uint64 = v180.l0 │
00:01:00 #2806 [verbose] > │ let v183 : bool = v182 < v176 │
00:01:00 #2807 [verbose] > │ let struct (v189 : UH2, v190 : US0) = │
00:01:00 #2808 [verbose] > │ if v183 then │
00:01:00 #2809 [verbose] > │ let struct (v184 : UH2, v185 : US0) = v175.[int v182] │
00:01:00 #2810 [verbose] > │ struct (v184, v185) │
00:01:00 #2811 [verbose] > │ else │
00:01:00 #2812 [verbose] > │ let v186 : uint64 = v182 - v176 │
00:01:00 #2813 [verbose] > │ let struct (v187 : UH2, v188 : US0) = v103.[int v186] │
00:01:00 #2814 [verbose] > │ struct (v187, v188) │
00:01:00 #2815 [verbose] > │ v179.[int v182] <- struct (v189, v190) │
00:01:00 #2816 [verbose] > │ let v191 : uint64 = v182 + 1UL │
00:01:00 #2817 [verbose] > │ v180.l0 <- v191 │
00:01:00 #2818 [verbose] > │ () │
00:01:00 #2819 [verbose] > │ let v192 : uint64 = System.Convert.ToUInt64 v179.Length │
00:01:00 #2820 [verbose] > │ let v193 : ((string []) []) = Array.zeroCreate<(string [])> │
00:01:00 #2821 [verbose] > │ (System.Convert.ToInt32(v192)) │
00:01:00 #2822 [verbose] > │ let v194 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2823 [verbose] > │ while method4(v192, v194) do │
00:01:00 #2824 [verbose] > │ let v196 : uint64 = v194.l0 │
00:01:00 #2825 [verbose] > │ let struct (v197 : UH2, v198 : US0) = v179.[int v196] │
00:01:00 #2826 [verbose] > │ let v199 : (string []) = method25(v197) │
00:01:00 #2827 [verbose] > │ v193.[int v196] <- v199 │
00:01:00 #2828 [verbose] > │ let v200 : uint64 = v196 + 1UL │
00:01:00 #2829 [verbose] > │ v194.l0 <- v200 │
00:01:00 #2830 [verbose] > │ () │
00:01:00 #2831 [verbose] > │ let v201 : (((string []) []) -> ((string []) [])) = Array.transpose │
00:01:00 #2832 [verbose] > │ let v202 : ((string []) []) = v201 v193 │
00:01:00 #2833 [verbose] > │ let v203 : uint64 = System.Convert.ToUInt64 v202.Length │
00:01:00 #2834 [verbose] > │ let v204 : (int64 []) = Array.zeroCreate<int64> │
00:01:00 #2835 [verbose] > │ (System.Convert.ToInt32(v203)) │
00:01:00 #2836 [verbose] > │ let v205 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2837 [verbose] > │ while method4(v203, v205) do │
00:01:00 #2838 [verbose] > │ let v207 : uint64 = v205.l0 │
00:01:00 #2839 [verbose] > │ let v208 : (string []) = v202.[int v207] │
00:01:00 #2840 [verbose] > │ let v209 : uint64 = System.Convert.ToUInt64 v208.Length │
00:01:00 #2841 [verbose] > │ let v210 : (int64 []) = Array.zeroCreate<int64> │
00:01:00 #2842 [verbose] > │ (System.Convert.ToInt32(v209)) │
00:01:00 #2843 [verbose] > │ let v211 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2844 [verbose] > │ while method4(v209, v211) do │
00:01:00 #2845 [verbose] > │ let v213 : uint64 = v211.l0 │
00:01:00 #2846 [verbose] > │ let v214 : string = v208.[int v213] │
00:01:00 #2847 [verbose] > │ let v215 : int64 = System.Convert.ToInt64 v214.Length │
00:01:00 #2848 [verbose] > │ v210.[int v213] <- v215 │
00:01:00 #2849 [verbose] > │ let v216 : uint64 = v213 + 1UL │
00:01:00 #2850 [verbose] > │ v211.l0 <- v216 │
00:01:00 #2851 [verbose] > │ () │
00:01:00 #2852 [verbose] > │ let v217 : ((int64 []) -> (int64 [])) = Array.sortDescending │
00:01:00 #2853 [verbose] > │ let v218 : (int64 []) = v217 v210 │
00:01:00 #2854 [verbose] > │ let v219 : (int32 -> ((int64 []) -> int64 option)) = Array.tryItem │
00:01:00 #2855 [verbose] > │ let v220 : ((int64 []) -> int64 option) = v219 0 │
00:01:00 #2856 [verbose] > │ let v221 : int64 option = v220 v218 │
00:01:00 #2857 [verbose] > │ let v222 : (int64 -> US1) = method28() │
00:01:00 #2858 [verbose] > │ let v223 : US1 = US1_1 │
00:01:00 #2859 [verbose] > │ let v224 : US1 = v221 |> Option.map v222 |> Option.defaultValue v223 │
00:01:00 #2860 [verbose] > │ let v227 : int64 = │
00:01:00 #2861 [verbose] > │ match v224 with │
00:01:00 #2862 [verbose] > │ | US1_1 -> (* None *) │
00:01:00 #2863 [verbose] > │ 0L │
00:01:00 #2864 [verbose] > │ | US1_0(v225) -> (* Some *) │
00:01:00 #2865 [verbose] > │ v225 │
00:01:00 #2866 [verbose] > │ v204.[int v207] <- v227 │
00:01:00 #2867 [verbose] > │ let v228 : uint64 = v207 + 1UL │
00:01:00 #2868 [verbose] > │ v205.l0 <- v228 │
00:01:00 #2869 [verbose] > │ () │
00:01:00 #2870 [verbose] > │ let v229 : uint64 = System.Convert.ToUInt64 v204.Length │
00:01:00 #2871 [verbose] > │ let v230 : UH6 = UH6_0 │
00:01:00 #2872 [verbose] > │ let v231 : Mut3 = {l0 = 0UL; l1 = v230; l2 = 0} : Mut3 │
00:01:00 #2873 [verbose] > │ while method29(v229, v231) do │
00:01:00 #2874 [verbose] > │ let v233 : uint64 = v231.l0 │
00:01:00 #2875 [verbose] > │ let struct (v234 : UH6, v235 : int32) = v231.l1, v231.l2 │
00:01:00 #2876 [verbose] > │ let v236 : int64 = v204.[int v233] │
00:01:00 #2877 [verbose] > │ let v237 : int32 = v235 + 1 │
00:01:00 #2878 [verbose] > │ let v238 : uint64 = v233 + 1UL │
00:01:00 #2879 [verbose] > │ let v239 : UH6 = UH6_1(v235, v236, v234) │
00:01:00 #2880 [verbose] > │ v231.l0 <- v238 │
00:01:00 #2881 [verbose] > │ v231.l1 <- v239 │
00:01:00 #2882 [verbose] > │ v231.l2 <- v237 │
00:01:00 #2883 [verbose] > │ () │
00:01:00 #2884 [verbose] > │ let struct (v240 : UH6, v241 : int32) = v231.l1, v231.l2 │
00:01:00 #2885 [verbose] > │ let v242 : UH6 = UH6_0 │
00:01:00 #2886 [verbose] > │ let v243 : UH6 = method30(v240, v242) │
00:01:00 #2887 [verbose] > │ let v244 : (struct (int32 * int64) []) = method31(v243) │
00:01:00 #2888 [verbose] > │ let v245 : Map<int32, int64> = v244 |> Array.map (fun (struct (a, b)) -> │
00:01:00 #2889 [verbose] > │ a, b) |> Map.ofArray │
00:01:00 #2890 [verbose] > │ let v246 : (struct ((string []) * US0) []) = Array.zeroCreate<struct │
00:01:00 #2891 [verbose] > │ ((string []) * US0)> (System.Convert.ToInt32(v192)) │
00:01:00 #2892 [verbose] > │ let v247 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2893 [verbose] > │ while method4(v192, v247) do │
00:01:00 #2894 [verbose] > │ let v249 : uint64 = v247.l0 │
00:01:00 #2895 [verbose] > │ let struct (v250 : UH2, v251 : US0) = v179.[int v249] │
00:01:00 #2896 [verbose] > │ let v252 : UH7 = UH7_0 │
00:01:00 #2897 [verbose] > │ let v253 : int32 = 0 │
00:01:00 #2898 [verbose] > │ let struct (v254 : UH7, v255 : int32) = method34(v250, v252, v253) │
00:01:00 #2899 [verbose] > │ let v256 : UH7 = UH7_0 │
00:01:00 #2900 [verbose] > │ let v257 : UH7 = method35(v254, v256) │
00:01:00 #2901 [verbose] > │ let v258 : UH2 = UH2_0 │
00:01:00 #2902 [verbose] > │ let v259 : UH2 = method36(v245, v257, v258) │
00:01:00 #2903 [verbose] > │ let v260 : (string []) = method9(v259) │
00:01:00 #2904 [verbose] > │ v246.[int v249] <- struct (v260, v251) │
00:01:00 #2905 [verbose] > │ let v261 : uint64 = v249 + 1UL │
00:01:00 #2906 [verbose] > │ v247.l0 <- v261 │
00:01:00 #2907 [verbose] > │ () │
00:01:00 #2908 [verbose] > │ System.Console.WriteLine v2 │
00:01:00 #2909 [verbose] > │ let v262 : uint64 = System.Convert.ToUInt64 v246.Length │
00:01:00 #2910 [verbose] > │ let v263 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:00 #2911 [verbose] > │ while method4(v262, v263) do │
00:01:00 #2912 [verbose] > │ let v265 : uint64 = v263.l0 │
00:01:00 #2913 [verbose] > │ let struct (v266 : (string []), v267 : US0) = v246.[int v265] │
00:01:00 #2914 [verbose] > │ match v267 with │
00:01:00 #2915 [verbose] > │ | US0_1 -> (* None *) │
00:01:00 #2916 [verbose] > │ let v270 : unit option = None │
00:01:00 #2917 [verbose] > │ let mutable _v270 = v270 │
00:01:00 #2918 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:00 #2919 [verbose] > │ () │
00:01:00 #2920 [verbose] > │ #endif │
00:01:00 #2921 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:00 #2922 [verbose] > │ () │
00:01:00 #2923 [verbose] > │ #endif │
00:01:00 #2924 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:00 #2925 [verbose] > │ () │
00:01:00 #2926 [verbose] > │ #endif │
00:01:00 #2927 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:00 #2928 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:00 #2929 [verbose] > │ System.Console.ResetColor () │
00:01:00 #2930 [verbose] > │ () │
00:01:00 #2931 [verbose] > │ #endif │
00:01:00 #2932 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:00 #2933 [verbose] > │ () │
00:01:00 #2934 [verbose] > │ #endif │
00:01:00 #2935 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:00 #2936 [verbose] > │ FABLE_COMPILER_DART │
00:01:00 #2937 [verbose] > │ Unchecked.defaultof<unit> │
00:01:00 #2938 [verbose] > │ #endif │
00:01:00 #2939 [verbose] > │ |> fun x -> _v270 <- Some x │
00:01:00 #2940 [verbose] > │ _v270.Value │
00:01:00 #2941 [verbose] > │ () │
00:01:00 #2942 [verbose] > │ | US0_0(v268) -> (* Some *) │
00:01:00 #2943 [verbose] > │ let v269 : unit option = None │
00:01:00 #2944 [verbose] > │ let mutable _v269 = v269 │
00:01:00 #2945 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:00 #2946 [verbose] > │ () │
00:01:00 #2947 [verbose] > │ #endif │
00:01:00 #2948 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:00 #2949 [verbose] > │ () │
00:01:00 #2950 [verbose] > │ #endif │
00:01:00 #2951 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:00 #2952 [verbose] > │ () │
00:01:00 #2953 [verbose] > │ #endif │
00:01:00 #2954 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:00 #2955 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:00 #2956 [verbose] > │ System.Console.ForegroundColor <- v268 │
00:01:00 #2957 [verbose] > │ () │
00:01:00 #2958 [verbose] > │ #endif │
00:01:00 #2959 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:00 #2960 [verbose] > │ () │
00:01:00 #2961 [verbose] > │ #endif │
00:01:00 #2962 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:00 #2963 [verbose] > │ FABLE_COMPILER_DART │
00:01:00 #2964 [verbose] > │ Unchecked.defaultof<unit> │
00:01:00 #2965 [verbose] > │ #endif │
00:01:00 #2966 [verbose] > │ |> fun x -> _v269 <- Some x │
00:01:00 #2967 [verbose] > │ _v269.Value │
00:01:00 #2968 [verbose] > │ () │
00:01:00 #2969 [verbose] > │ let v271 : string = "\t| " │
00:01:00 #2970 [verbose] > │ let v272 : string = System.String.Join (v271, v266) │
00:01:00 #2971 [verbose] > │ System.Console.WriteLine v272 │
00:01:00 #2972 [verbose] > │ let v273 : unit option = None │
00:01:00 #2973 [verbose] > │ let mutable _v273 = v273 │
00:01:00 #2974 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:00 #2975 [verbose] > │ () │
00:01:00 #2976 [verbose] > │ #endif │
00:01:00 #2977 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:00 #2978 [verbose] > │ () │
00:01:00 #2979 [verbose] > │ #endif │
00:01:00 #2980 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:00 #2981 [verbose] > │ () │
00:01:00 #2982 [verbose] > │ #endif │
00:01:00 #2983 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:00 #2984 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:01 #2985 [verbose] > │ System.Console.ResetColor () │
00:01:01 #2986 [verbose] > │ () │
00:01:01 #2987 [verbose] > │ #endif │
00:01:01 #2988 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:01 #2989 [verbose] > │ () │
00:01:01 #2990 [verbose] > │ #endif │
00:01:01 #2991 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:01 #2992 [verbose] > │ FABLE_COMPILER_DART │
00:01:01 #2993 [verbose] > │ Unchecked.defaultof<unit> │
00:01:01 #2994 [verbose] > │ #endif │
00:01:01 #2995 [verbose] > │ |> fun x -> _v273 <- Some x │
00:01:01 #2996 [verbose] > │ _v273.Value │
00:01:01 #2997 [verbose] > │ let v274 : uint64 = v265 + 1UL │
00:01:01 #2998 [verbose] > │ v263.l0 <- v274 │
00:01:01 #2999 [verbose] > │ () │
00:01:01 #3000 [verbose] > │ let v275 : ((float []) []) = Array.zeroCreate<(float [])> │
00:01:01 #3001 [verbose] > │ (System.Convert.ToInt32(v102)) │
00:01:01 #3002 [verbose] > │ let v276 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:01 #3003 [verbose] > │ while method4(v102, v276) do │
00:01:01 #3004 [verbose] > │ let v278 : uint64 = v276.l0 │
00:01:01 #3005 [verbose] > │ let struct (v279 : string, v280 : string, v281 : string, v282 : │
00:01:01 #3006 [verbose] > │ (int64 [])) = v24.[int v278] │
00:01:01 #3007 [verbose] > │ let v283 : (int64 -> float) = float │
00:01:01 #3008 [verbose] > │ let v284 : uint64 = System.Convert.ToUInt64 v282.Length │
00:01:01 #3009 [verbose] > │ let v285 : (float []) = Array.zeroCreate<float> │
00:01:01 #3010 [verbose] > │ (System.Convert.ToInt32(v284)) │
00:01:01 #3011 [verbose] > │ let v286 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:01 #3012 [verbose] > │ while method4(v284, v286) do │
00:01:01 #3013 [verbose] > │ let v288 : uint64 = v286.l0 │
00:01:01 #3014 [verbose] > │ let v289 : int64 = v282.[int v288] │
00:01:01 #3015 [verbose] > │ let v290 : float = v283 v289 │
00:01:01 #3016 [verbose] > │ v285.[int v288] <- v290 │
00:01:01 #3017 [verbose] > │ let v291 : uint64 = v288 + 1UL │
00:01:01 #3018 [verbose] > │ v286.l0 <- v291 │
00:01:01 #3019 [verbose] > │ () │
00:01:01 #3020 [verbose] > │ v275.[int v278] <- v285 │
00:01:01 #3021 [verbose] > │ let v292 : uint64 = v278 + 1UL │
00:01:01 #3022 [verbose] > │ v276.l0 <- v292 │
00:01:01 #3023 [verbose] > │ () │
00:01:01 #3024 [verbose] > │ let v293 : (((float []) []) -> ((float []) [])) = Array.transpose │
00:01:01 #3025 [verbose] > │ let v294 : ((float []) []) = v293 v275 │
00:01:01 #3026 [verbose] > │ let v295 : uint64 = System.Convert.ToUInt64 v294.Length │
00:01:01 #3027 [verbose] > │ let v296 : (float []) = Array.zeroCreate<float> │
00:01:01 #3028 [verbose] > │ (System.Convert.ToInt32(v295)) │
00:01:01 #3029 [verbose] > │ let v297 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:01 #3030 [verbose] > │ while method4(v295, v297) do │
00:01:01 #3031 [verbose] > │ let v299 : uint64 = v297.l0 │
00:01:01 #3032 [verbose] > │ let v300 : (float []) = v294.[int v299] │
00:01:01 #3033 [verbose] > │ let v301 : ((float []) -> float) = Array.average │
00:01:01 #3034 [verbose] > │ let v302 : float = v301 v300 │
00:01:01 #3035 [verbose] > │ v296.[int v299] <- v302 │
00:01:01 #3036 [verbose] > │ let v303 : uint64 = v299 + 1UL │
00:01:01 #3037 [verbose] > │ v297.l0 <- v303 │
00:01:01 #3038 [verbose] > │ () │
00:01:01 #3039 [verbose] > │ let v304 : (float -> int64) = int64 │
00:01:01 #3040 [verbose] > │ let v305 : uint64 = System.Convert.ToUInt64 v296.Length │
00:01:01 #3041 [verbose] > │ let v306 : (int64 []) = Array.zeroCreate<int64> │
00:01:01 #3042 [verbose] > │ (System.Convert.ToInt32(v305)) │
00:01:01 #3043 [verbose] > │ let v307 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:01 #3044 [verbose] > │ while method4(v305, v307) do │
00:01:01 #3045 [verbose] > │ let v309 : uint64 = v307.l0 │
00:01:01 #3046 [verbose] > │ let v310 : float = v296.[int v309] │
00:01:01 #3047 [verbose] > │ let v311 : int64 = v304 v310 │
00:01:01 #3048 [verbose] > │ v306.[int v309] <- v311 │
00:01:01 #3049 [verbose] > │ let v312 : uint64 = v309 + 1UL │
00:01:01 #3050 [verbose] > │ v307.l0 <- v312 │
00:01:01 #3051 [verbose] > │ () │
00:01:01 #3052 [verbose] > │ let v313 : uint64 = System.Convert.ToUInt64 v306.Length │
00:01:01 #3053 [verbose] > │ let v314 : UH6 = UH6_0 │
00:01:01 #3054 [verbose] > │ let v315 : Mut3 = {l0 = 0UL; l1 = v314; l2 = 0} : Mut3 │
00:01:01 #3055 [verbose] > │ while method29(v313, v315) do │
00:01:01 #3056 [verbose] > │ let v317 : uint64 = v315.l0 │
00:01:01 #3057 [verbose] > │ let struct (v318 : UH6, v319 : int32) = v315.l1, v315.l2 │
00:01:01 #3058 [verbose] > │ let v320 : int64 = v306.[int v317] │
00:01:01 #3059 [verbose] > │ let v321 : int32 = v319 + 1 │
00:01:01 #3060 [verbose] > │ let v322 : uint64 = v317 + 1UL │
00:01:01 #3061 [verbose] > │ let v323 : UH6 = UH6_1(v319, v320, v318) │
00:01:01 #3062 [verbose] > │ v315.l0 <- v322 │
00:01:01 #3063 [verbose] > │ v315.l1 <- v323 │
00:01:01 #3064 [verbose] > │ v315.l2 <- v321 │
00:01:01 #3065 [verbose] > │ () │
00:01:01 #3066 [verbose] > │ let struct (v324 : UH6, v325 : int32) = v315.l1, v315.l2 │
00:01:01 #3067 [verbose] > │ let v326 : UH6 = UH6_0 │
00:01:01 #3068 [verbose] > │ let v327 : UH6 = method30(v324, v326) │
00:01:01 #3069 [verbose] > │ let v328 : (struct (int32 * int64) []) = method37(v327) │
00:01:01 #3070 [verbose] > │ System.Console.WriteLine v2 │
00:01:01 #3071 [verbose] > │ let v329 : string = "Average Ranking " │
00:01:01 #3072 [verbose] > │ System.Console.WriteLine v329 │
00:01:01 #3073 [verbose] > │ let v330 : ((struct (int32 * int64) -> int64) -> ((struct (int32 * │
00:01:01 #3074 [verbose] > │ int64) []) -> (struct (int32 * int64) []))) = Array.sortBy │
00:01:01 #3075 [verbose] > │ let v331 : (struct (int32 * int64) -> int64) = closure6() │
00:01:01 #3076 [verbose] > │ let v332 : ((struct (int32 * int64) []) -> (struct (int32 * int64) [])) │
00:01:01 #3077 [verbose] > │ = v330 v331 │
00:01:01 #3078 [verbose] > │ let v333 : (struct (int32 * int64) []) = v332 v328 │
00:01:01 #3079 [verbose] > │ let v334 : uint64 = System.Convert.ToUInt64 v333.Length │
00:01:01 #3080 [verbose] > │ let v335 : Mut0 = {l0 = 0UL} : Mut0 │
00:01:01 #3081 [verbose] > │ while method4(v334, v335) do │
00:01:01 #3082 [verbose] > │ let v337 : uint64 = v335.l0 │
00:01:01 #3083 [verbose] > │ let struct (v338 : int32, v339 : int64) = v333.[int v337] │
00:01:01 #3084 [verbose] > │ let v340 : string = $"Test case %d{v338 + 1}. Average Time: %A{v339} │
00:01:01 #3085 [verbose] > │ " │
00:01:01 #3086 [verbose] > │ System.Console.WriteLine v340 │
00:01:01 #3087 [verbose] > │ let v341 : uint64 = v337 + 1UL │
00:01:01 #3088 [verbose] > │ v335.l0 <- v341 │
00:01:01 #3089 [verbose] > │ () │
00:01:01 #3090 [verbose] > │ () │
00:01:01 #3091 [verbose] > │ method0() │
00:01:01 #3092 [verbose] > │ │
00:01:01 #3093 [verbose] > │ │
00:01:01 #3094 [verbose] > │ │
00:01:01 #3095 [verbose] > │ Test: v0 │
00:01:01 #3096 [verbose] > │ │
00:01:01 #3097 [verbose] > │ Solution: "abc" │
00:01:01 #3098 [verbose] > │ Test case 1. F. Time: 1090 │
00:01:01 #3099 [verbose] > │ Test case 2. FA. Time: 1427 │
00:01:01 #3100 [verbose] > │ │
00:01:01 #3101 [verbose] > │ Solution: "abcde" │
00:01:01 #3102 [verbose] > │ Test case 1. F. Time: 1685 │
00:01:01 #3103 [verbose] > │ Test case 2. FA. Time: 2178 │
00:01:01 #3104 [verbose] > │ │
00:01:01 #3105 [verbose] > │ Solution: "abcdefghi" │
00:01:01 #3106 [verbose] > │ Test case 1. F. Time: 2195 │
00:01:01 #3107 [verbose] > │ Test case 2. FA. Time: 2371 │
00:01:01 #3108 [verbose] > │ │
00:01:01 #3109 [verbose] > │ Solution: "abab" │
00:01:01 #3110 [verbose] > │ Test case 1. F. Time: 1263 │
00:01:01 #3111 [verbose] > │ Test case 2. FA. Time: 1128 │
00:01:01 #3112 [verbose] > │ │
00:01:01 #3113 [verbose] > │ Solution: "aa" │
00:01:01 #3114 [verbose] > │ Test case 1. F. Time: 805 │
00:01:01 #3115 [verbose] > │ Test case 2. FA. Time: 773 │
00:01:01 #3116 [verbose] > │ │
00:01:01 #3117 [verbose] > │ Solution: "z" │
00:01:01 #3118 [verbose] > │ Test case 1. F. Time: 198 │
00:01:01 #3119 [verbose] > │ Test case 2. FA. Time: 190 │
00:01:01 #3120 [verbose] > │ │
00:01:01 #3121 [verbose] > │ Input | Expected │
00:01:01 #3122 [verbose] > │ │
00:01:01 #3123 [verbose] > │ | Result │
00:01:01 #3124 [verbose] > │ │
00:01:01 #3125 [verbose] > │ | Best │
00:01:01 #3126 [verbose] > │ --- | --- │
00:01:01 #3127 [verbose] > │ │
00:01:01 #3128 [verbose] > │ | --- │
00:01:01 #3129 [verbose] > │ │
00:01:01 #3130 [verbose] > │ | --- │
00:01:01 #3131 [verbose] > │ "abc" | "bca cab abc" │
00:01:01 #3132 [verbose] > │ │
00:01:01 #3133 [verbose] > │ | "bca cab abc" │
00:01:01 #3134 [verbose] > │ │
00:01:01 #3135 [verbose] > │ | struct (1L, 1090L) │
00:01:01 #3136 [verbose] > │ "abcde" | "bcdea cdeab deabc eabcd abcde" │
00:01:01 #3137 [verbose] > │ | "bcdea cdeab deabc eabcd abcde" │
00:01:01 #3138 [verbose] > │ | struct (1L, 1685L) │
00:01:01 #3139 [verbose] > │ "abcdefghi" | "bcdefghia cdefghiab defghiabc efghiabcd fghiabcde ghiabcdef │
00:01:01 #3140 [verbose] > │ hiabcdefg iabcdefgh abcdefghi" | "bcdefghia cdefghiab defghiabc efghiabcd │
00:01:01 #3141 [verbose] > │ fghiabcde ghiabcdef hiabcdefg iabcdefgh abcdefghi" | struct (1L, 2195L) │
00:01:01 #3142 [verbose] > │ "abab" | "baba abab baba abab" │
00:01:01 #3143 [verbose] > │ | "baba abab baba abab" │
00:01:01 #3144 [verbose] > │ | struct (2L, 1128L) │
00:01:01 #3145 [verbose] > │ "aa" | "aa aa" │
00:01:01 #3146 [verbose] > │ │
00:01:01 #3147 [verbose] > │ | "aa aa" │
00:01:01 #3148 [verbose] > │ │
00:01:01 #3149 [verbose] > │ | struct (2L, 773L) │
00:01:01 #3150 [verbose] > │ "z" | "z" │
00:01:01 #3151 [verbose] > │ │
00:01:01 #3152 [verbose] > │ | "z" │
00:01:01 #3153 [verbose] > │ │
00:01:01 #3154 [verbose] > │ | struct (2L, 190L) │
00:01:01 #3155 [verbose] > │ │
00:01:01 #3156 [verbose] > │ Average Ranking │
00:01:01 #3157 [verbose] > │ Test case 1. Average Time: 1206L │
00:01:01 #3158 [verbose] > │ Test case 2. Average Time: 1344L │
00:01:01 #3159 [verbose] > │ │
00:01:01 #3160 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:01 #3161 [verbose] >
00:01:01 #3162 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:01 #3163 [verbose] > // // test
00:01:01 #3164 [verbose] > // // rust=
00:01:01 #3165 [verbose] > // // print_code=false
00:01:01 #3166 [verbose] >
00:01:01 #3167 [verbose] > // rotate_strings_tests ()
00:01:01 #3168 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\2baedc80fd0ccb38f314423ad51257774a895780bb4bcc5a04a1b9d6e1c38a8f\main.spi
00:01:01 #3169 [verbose] >
00:01:01 #3170 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:01 #3171 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:01 #3172 [verbose] > │ ## binary_search_tests │
00:01:01 #3173 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:01 #3174 [verbose] >
00:01:01 #3175 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:01 #3176 [verbose] > // // test
00:01:01 #3177 [verbose] > // // timeout=90000
00:01:01 #3178 [verbose] > // // print_code=true
00:01:01 #3179 [verbose] >
00:01:01 #3180 [verbose] > inl binary_search_semi_open_1 arr target left right =
00:01:01 #3181 [verbose] > inl rec body left right =
00:01:01 #3182 [verbose] > if left >= right
00:01:01 #3183 [verbose] > then None
00:01:01 #3184 [verbose] > else
00:01:01 #3185 [verbose] > inl mid = (left + right) / 2
00:01:01 #3186 [verbose] > inl item = index arr mid
00:01:01 #3187 [verbose] > if item = target
00:01:01 #3188 [verbose] > then Some mid
00:01:01 #3189 [verbose] > elif item < target
00:01:01 #3190 [verbose] > then loop (mid + 1) right
00:01:01 #3191 [verbose] > else loop left mid
00:01:01 #3192 [verbose] > and inl loop left right =
00:01:01 #3193 [verbose] > if var_is right |> not
00:01:01 #3194 [verbose] > then body left right
00:01:01 #3195 [verbose] > else
00:01:01 #3196 [verbose] > inl left = dyn left
00:01:01 #3197 [verbose] > join body left right
00:01:01 #3198 [verbose] > loop left right
00:01:01 #3199 [verbose] >
00:01:01 #3200 [verbose] > inl binary_search_closed_1 arr target left right =
00:01:01 #3201 [verbose] > inl rec body left right =
00:01:01 #3202 [verbose] > if left > right
00:01:01 #3203 [verbose] > then None
00:01:01 #3204 [verbose] > else
00:01:01 #3205 [verbose] > inl mid = (left + right) / 2
00:01:01 #3206 [verbose] > inl item = index arr mid
00:01:01 #3207 [verbose] > if item = target
00:01:01 #3208 [verbose] > then Some mid
00:01:01 #3209 [verbose] > elif item < target
00:01:01 #3210 [verbose] > then loop (mid + 1) right
00:01:01 #3211 [verbose] > else loop left (mid - 1)
00:01:01 #3212 [verbose] > and inl loop left right =
00:01:01 #3213 [verbose] > if var_is right |> not
00:01:01 #3214 [verbose] > then body left right
00:01:01 #3215 [verbose] > else
00:01:01 #3216 [verbose] > inl left = dyn left
00:01:01 #3217 [verbose] > join body left right
00:01:01 #3218 [verbose] > loop left right
00:01:01 #3219 [verbose] >
00:01:01 #3220 [verbose] > inl binary_search_semi_open_2 arr target left right =
00:01:01 #3221 [verbose] > let rec body left right =
00:01:01 #3222 [verbose] > if left >= right
00:01:01 #3223 [verbose] > then None
00:01:01 #3224 [verbose] > else
00:01:01 #3225 [verbose] > inl mid = (left + right) / 2
00:01:01 #3226 [verbose] > inl item = index arr mid
00:01:01 #3227 [verbose] > if item = target
00:01:01 #3228 [verbose] > then Some mid
00:01:01 #3229 [verbose] > elif item < target
00:01:01 #3230 [verbose] > then loop (mid + 1) right
00:01:01 #3231 [verbose] > else loop left mid
00:01:01 #3232 [verbose] > and inl loop left right = body left right
00:01:01 #3233 [verbose] > loop left right
00:01:01 #3234 [verbose] >
00:01:01 #3235 [verbose] > inl binary_search_closed_2 arr target left right =
00:01:01 #3236 [verbose] > let rec body left right =
00:01:01 #3237 [verbose] > if left > right
00:01:01 #3238 [verbose] > then None
00:01:01 #3239 [verbose] > else
00:01:01 #3240 [verbose] > inl mid = (left + right) / 2
00:01:01 #3241 [verbose] > inl item = index arr mid
00:01:01 #3242 [verbose] > if item = target
00:01:01 #3243 [verbose] > then Some mid
00:01:01 #3244 [verbose] > elif item < target
00:01:01 #3245 [verbose] > then loop (mid + 1) right
00:01:01 #3246 [verbose] > else loop left (mid - 1)
00:01:01 #3247 [verbose] > and inl loop left right = body left right
00:01:01 #3248 [verbose] > loop left right
00:01:01 #3249 [verbose] >
00:01:01 #3250 [verbose] > inl get_solutions () =
00:01:01 #3251 [verbose] > [[
00:01:01 #3252 [verbose] > "semi_open_1",
00:01:01 #3253 [verbose] > fun (arr, (target, len)) =>
00:01:01 #3254 [verbose] > binary_search_semi_open_1 arr target 0 len
00:01:01 #3255 [verbose] >
00:01:01 #3256 [verbose] > "closed_1",
00:01:01 #3257 [verbose] > fun (arr, (target, len)) =>
00:01:01 #3258 [verbose] > binary_search_closed_1 arr target 0 (len - 1)
00:01:01 #3259 [verbose] >
00:01:01 #3260 [verbose] > "semi_open_2",
00:01:01 #3261 [verbose] > fun (arr, (target, len)) =>
00:01:01 #3262 [verbose] > binary_search_semi_open_2 arr target 0 len
00:01:01 #3263 [verbose] >
00:01:01 #3264 [verbose] > "closed_2",
00:01:01 #3265 [verbose] > fun (arr, (target, len)) =>
00:01:01 #3266 [verbose] > binary_search_closed_2 arr target 0 (len - 1)
00:01:01 #3267 [verbose] > ]]
00:01:01 #3268 [verbose] >
00:01:01 #3269 [verbose] > inl rec binary_search_tests () =
00:01:01 #3270 [verbose] > inl arr_with_len target len arr =
00:01:01 #3271 [verbose] > arr, (target, (len |> optionm'.default_with fun () => length arr))
00:01:01 #3272 [verbose] >
00:01:01 #3273 [verbose] > inl test_cases = [[
00:01:01 #3274 [verbose] > (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 6 None), (Some 3i32)
00:01:01 #3275 [verbose] > (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 1 None), (Some 0i32)
00:01:01 #3276 [verbose] > (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 11 None), (Some 6i32)
00:01:01 #3277 [verbose] > (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 12 None), None
00:01:01 #3278 [verbose] > ((am'.init_series 1i32 100 1) |> arr_with_len 60 None), (Some 59)
00:01:01 #3279 [verbose] >
00:01:01 #3280 [verbose] > (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 6 (Some 7)), (Some
00:01:01 #3281 [verbose] > 3i32)
00:01:01 #3282 [verbose] > (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 1 (Some 7)), (Some
00:01:01 #3283 [verbose] > 0i32)
00:01:01 #3284 [verbose] > (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 11 (Some 7)), (Some
00:01:01 #3285 [verbose] > 6i32)
00:01:01 #3286 [verbose] > (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 12 (Some 7)), None
00:01:01 #3287 [verbose] > ((am'.init_series 1i32 100 1) |> arr_with_len 60 (Some 100)), (Some 59)
00:01:01 #3288 [verbose] > ]]
00:01:01 #3289 [verbose] >
00:01:01 #3290 [verbose] > inl solutions = get_solutions ()
00:01:01 #3291 [verbose] >
00:01:01 #3292 [verbose] > // inl is_fast () = true
00:01:01 #3293 [verbose] >
00:01:01 #3294 [verbose] > inl count =
00:01:01 #3295 [verbose] > if is_fast ()
00:01:01 #3296 [verbose] > then 1000i32
00:01:01 #3297 [verbose] > else 8000000i32
00:01:01 #3298 [verbose] >
00:01:01 #3299 [verbose] > run_all (nameof binary_search_tests) count solutions test_cases
00:01:01 #3300 [verbose] > |> sort_result_list
00:01:01 #3301 [verbose] >
00:01:01 #3302 [verbose] >
00:01:01 #3303 [verbose] > let main () =
00:01:01 #3304 [verbose] > binary_search_tests ()
00:01:01 #3305 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\11813c38f8e45986382057254f110b885bd9e2b5a252c3ec6b9e7106723daadd\main.spi
00:01:32 #3306 [verbose] >
00:01:32 #3307 [verbose] > ╭─[ 30.69s - stdout ]──────────────────────────────────────────────────────────╮
00:01:32 #3308 [verbose] > │ type Mut0 = {mutable l0 : int32} │
00:01:32 #3309 [verbose] > │ and [<Struct>] US0 = │
00:01:32 #3310 [verbose] > │ | US0_0 of f0_0 : int32 │
00:01:32 #3311 [verbose] > │ | US0_1 │
00:01:32 #3312 [verbose] > │ and UH0 = │
00:01:32 #3313 [verbose] > │ | UH0_0 │
00:01:32 #3314 [verbose] > │ | UH0_1 of (int32 []) * int32 * int32 * US0 * UH0 │
00:01:32 #3315 [verbose] > │ and Mut1 = {mutable l0 : uint64} │
00:01:32 #3316 [verbose] > │ and UH1 = │
00:01:32 #3317 [verbose] > │ | UH1_0 │
00:01:32 #3318 [verbose] > │ | UH1_1 of int32 * string * (struct ((int32 []) * int32 * int32) -> US0) │
00:01:32 #3319 [verbose] > │ * UH1 │
00:01:32 #3320 [verbose] > │ and UH2 = │
00:01:32 #3321 [verbose] > │ | UH2_0 │
00:01:32 #3322 [verbose] > │ | UH2_1 of string * UH2 │
00:01:32 #3323 [verbose] > │ and [<Struct>] US1 = │
00:01:32 #3324 [verbose] > │ | US1_0 of f0_0 : System.ConsoleColor │
00:01:32 #3325 [verbose] > │ | US1_1 │
00:01:32 #3326 [verbose] > │ and UH3 = │
00:01:32 #3327 [verbose] > │ | UH3_0 │
00:01:32 #3328 [verbose] > │ | UH3_1 of int64 * int64 * UH3 │
00:01:32 #3329 [verbose] > │ and Mut2 = {mutable l0 : uint64; mutable l1 : UH3; mutable l2 : int64} │
00:01:32 #3330 [verbose] > │ and UH4 = │
00:01:32 #3331 [verbose] > │ | UH4_0 │
00:01:32 #3332 [verbose] > │ | UH4_1 of UH2 * US1 * UH4 │
00:01:32 #3333 [verbose] > │ and [<Struct>] US2 = │
00:01:32 #3334 [verbose] > │ | US2_0 of f0_0 : int64 │
00:01:32 #3335 [verbose] > │ | US2_1 │
00:01:32 #3336 [verbose] > │ and UH5 = │
00:01:32 #3337 [verbose] > │ | UH5_0 │
00:01:32 #3338 [verbose] > │ | UH5_1 of int32 * int64 * UH5 │
00:01:32 #3339 [verbose] > │ and Mut3 = {mutable l0 : uint64; mutable l1 : UH5; mutable l2 : int32} │
00:01:32 #3340 [verbose] > │ and UH6 = │
00:01:32 #3341 [verbose] > │ | UH6_0 │
00:01:32 #3342 [verbose] > │ | UH6_1 of int32 * string * UH6 │
00:01:32 #3343 [verbose] > │ let rec method1 (v0 : Mut0) : bool = │
00:01:32 #3344 [verbose] > │ let v1 : int32 = v0.l0 │
00:01:32 #3345 [verbose] > │ let v2 : bool = v1 < 100 │
00:01:32 #3346 [verbose] > │ v2 │
00:01:32 #3347 [verbose] > │ and method3 (v0 : UH0, v1 : uint64) : uint64 = │
00:01:32 #3348 [verbose] > │ match v0 with │
00:01:32 #3349 [verbose] > │ | UH0_1(v2, v3, v4, v5, v6) -> (* Cons *) │
00:01:32 #3350 [verbose] > │ let v7 : uint64 = v1 + 1UL │
00:01:32 #3351 [verbose] > │ method3(v6, v7) │
00:01:32 #3352 [verbose] > │ | UH0_0 -> (* Nil *) │
00:01:32 #3353 [verbose] > │ v1 │
00:01:32 #3354 [verbose] > │ and method4 (v0 : (struct ((int32 []) * int32 * int32 * US0) []), v1 : UH0, │
00:01:32 #3355 [verbose] > │ v2 : uint64) : uint64 = │
00:01:32 #3356 [verbose] > │ match v1 with │
00:01:32 #3357 [verbose] > │ | UH0_1(v3, v4, v5, v6, v7) -> (* Cons *) │
00:01:32 #3358 [verbose] > │ v0.[int v2] <- struct (v3, v4, v5, v6) │
00:01:32 #3359 [verbose] > │ let v8 : uint64 = v2 + 1UL │
00:01:32 #3360 [verbose] > │ method4(v0, v7, v8) │
00:01:32 #3361 [verbose] > │ | UH0_0 -> (* Nil *) │
00:01:32 #3362 [verbose] > │ v2 │
00:01:32 #3363 [verbose] > │ and method2 (v0 : UH0) : (struct ((int32 []) * int32 * int32 * US0) []) = │
00:01:32 #3364 [verbose] > │ let v1 : uint64 = 0UL │
00:01:32 #3365 [verbose] > │ let v2 : uint64 = method3(v0, v1) │
00:01:32 #3366 [verbose] > │ let v3 : (struct ((int32 []) * int32 * int32 * US0) []) = │
00:01:32 #3367 [verbose] > │ Array.zeroCreate<struct ((int32 []) * int32 * int32 * US0)> │
00:01:32 #3368 [verbose] > │ (System.Convert.ToInt32(v2)) │
00:01:32 #3369 [verbose] > │ let v4 : uint64 = 0UL │
00:01:32 #3370 [verbose] > │ let v5 : uint64 = method4(v3, v0, v4) │
00:01:32 #3371 [verbose] > │ v3 │
00:01:32 #3372 [verbose] > │ and method5 (v0 : uint64, v1 : Mut1) : bool = │
00:01:32 #3373 [verbose] > │ let v2 : uint64 = v1.l0 │
00:01:32 #3374 [verbose] > │ let v3 : bool = v2 < v0 │
00:01:32 #3375 [verbose] > │ v3 │
00:01:32 #3376 [verbose] > │ and method6 (v0 : (int32 []), v1 : int32, v2 : int32, v3 : int32) : US0 = │
00:01:32 #3377 [verbose] > │ let v4 : bool = v3 >= v2 │
00:01:32 #3378 [verbose] > │ if v4 then │
00:01:32 #3379 [verbose] > │ US0_1 │
00:01:32 #3380 [verbose] > │ else │
00:01:32 #3381 [verbose] > │ let v6 : int32 = v3 + v2 │
00:01:32 #3382 [verbose] > │ let v7 : int32 = v6 / 2 │
00:01:32 #3383 [verbose] > │ let v8 : int32 = v0.[int v7] │
00:01:32 #3384 [verbose] > │ let v9 : bool = v8 = v1 │
00:01:32 #3385 [verbose] > │ if v9 then │
00:01:32 #3386 [verbose] > │ US0_0(v7) │
00:01:32 #3387 [verbose] > │ else │
00:01:32 #3388 [verbose] > │ let v11 : bool = v8 < v1 │
00:01:32 #3389 [verbose] > │ if v11 then │
00:01:32 #3390 [verbose] > │ let v12 : int32 = v7 + 1 │
00:01:32 #3391 [verbose] > │ method6(v0, v1, v2, v12) │
00:01:32 #3392 [verbose] > │ else │
00:01:32 #3393 [verbose] > │ method6(v0, v1, v7, v3) │
00:01:32 #3394 [verbose] > │ and closure1 () struct (v0 : (int32 []), v1 : int32, v2 : int32) : US0 = │
00:01:32 #3395 [verbose] > │ let v3 : int32 = 0 │
00:01:32 #3396 [verbose] > │ method6(v0, v1, v2, v3) │
00:01:32 #3397 [verbose] > │ and method7 (v0 : (int32 []), v1 : int32, v2 : int32, v3 : int32) : US0 = │
00:01:32 #3398 [verbose] > │ let v4 : bool = v3 > v2 │
00:01:32 #3399 [verbose] > │ if v4 then │
00:01:32 #3400 [verbose] > │ US0_1 │
00:01:32 #3401 [verbose] > │ else │
00:01:32 #3402 [verbose] > │ let v6 : int32 = v3 + v2 │
00:01:32 #3403 [verbose] > │ let v7 : int32 = v6 / 2 │
00:01:32 #3404 [verbose] > │ let v8 : int32 = v0.[int v7] │
00:01:32 #3405 [verbose] > │ let v9 : bool = v8 = v1 │
00:01:32 #3406 [verbose] > │ if v9 then │
00:01:32 #3407 [verbose] > │ US0_0(v7) │
00:01:32 #3408 [verbose] > │ else │
00:01:32 #3409 [verbose] > │ let v11 : bool = v8 < v1 │
00:01:32 #3410 [verbose] > │ if v11 then │
00:01:32 #3411 [verbose] > │ let v12 : int32 = v7 + 1 │
00:01:32 #3412 [verbose] > │ method7(v0, v1, v2, v12) │
00:01:32 #3413 [verbose] > │ else │
00:01:32 #3414 [verbose] > │ let v14 : int32 = v7 - 1 │
00:01:32 #3415 [verbose] > │ method7(v0, v1, v14, v3) │
00:01:32 #3416 [verbose] > │ and closure2 () struct (v0 : (int32 []), v1 : int32, v2 : int32) : US0 = │
00:01:32 #3417 [verbose] > │ let v3 : int32 = v2 - 1 │
00:01:32 #3418 [verbose] > │ let v4 : int32 = 0 │
00:01:32 #3419 [verbose] > │ method7(v0, v1, v3, v4) │
00:01:32 #3420 [verbose] > │ and method8 (v0 : (int32 []), v1 : int32, v2 : int32, v3 : int32) : US0 = │
00:01:32 #3421 [verbose] > │ let v4 : bool = v2 >= v3 │
00:01:32 #3422 [verbose] > │ if v4 then │
00:01:32 #3423 [verbose] > │ US0_1 │
00:01:32 #3424 [verbose] > │ else │
00:01:32 #3425 [verbose] > │ let v6 : int32 = v2 + v3 │
00:01:32 #3426 [verbose] > │ let v7 : int32 = v6 / 2 │
00:01:32 #3427 [verbose] > │ let v8 : int32 = v0.[int v7] │
00:01:32 #3428 [verbose] > │ let v9 : bool = v8 = v1 │
00:01:32 #3429 [verbose] > │ if v9 then │
00:01:32 #3430 [verbose] > │ US0_0(v7) │
00:01:32 #3431 [verbose] > │ else │
00:01:32 #3432 [verbose] > │ let v11 : bool = v8 < v1 │
00:01:32 #3433 [verbose] > │ if v11 then │
00:01:32 #3434 [verbose] > │ let v12 : int32 = v7 + 1 │
00:01:32 #3435 [verbose] > │ method8(v0, v1, v12, v3) │
00:01:32 #3436 [verbose] > │ else │
00:01:32 #3437 [verbose] > │ method8(v0, v1, v2, v7) │
00:01:32 #3438 [verbose] > │ and closure3 () struct (v0 : (int32 []), v1 : int32, v2 : int32) : US0 = │
00:01:32 #3439 [verbose] > │ let v3 : int32 = 0 │
00:01:32 #3440 [verbose] > │ method8(v0, v1, v3, v2) │
00:01:32 #3441 [verbose] > │ and method9 (v0 : (int32 []), v1 : int32, v2 : int32, v3 : int32) : US0 = │
00:01:32 #3442 [verbose] > │ let v4 : bool = v2 > v3 │
00:01:32 #3443 [verbose] > │ if v4 then │
00:01:32 #3444 [verbose] > │ US0_1 │
00:01:32 #3445 [verbose] > │ else │
00:01:32 #3446 [verbose] > │ let v6 : int32 = v2 + v3 │
00:01:32 #3447 [verbose] > │ let v7 : int32 = v6 / 2 │
00:01:32 #3448 [verbose] > │ let v8 : int32 = v0.[int v7] │
00:01:32 #3449 [verbose] > │ let v9 : bool = v8 = v1 │
00:01:32 #3450 [verbose] > │ if v9 then │
00:01:32 #3451 [verbose] > │ US0_0(v7) │
00:01:32 #3452 [verbose] > │ else │
00:01:32 #3453 [verbose] > │ let v11 : bool = v8 < v1 │
00:01:32 #3454 [verbose] > │ if v11 then │
00:01:32 #3455 [verbose] > │ let v12 : int32 = v7 + 1 │
00:01:32 #3456 [verbose] > │ method9(v0, v1, v12, v3) │
00:01:32 #3457 [verbose] > │ else │
00:01:32 #3458 [verbose] > │ let v14 : int32 = v7 - 1 │
00:01:32 #3459 [verbose] > │ method9(v0, v1, v2, v14) │
00:01:32 #3460 [verbose] > │ and closure4 () struct (v0 : (int32 []), v1 : int32, v2 : int32) : US0 = │
00:01:32 #3461 [verbose] > │ let v3 : int32 = v2 - 1 │
00:01:32 #3462 [verbose] > │ let v4 : int32 = 0 │
00:01:32 #3463 [verbose] > │ method9(v0, v1, v4, v3) │
00:01:32 #3464 [verbose] > │ and method11 (v0 : UH1, v1 : uint64) : uint64 = │
00:01:32 #3465 [verbose] > │ match v0 with │
00:01:32 #3466 [verbose] > │ | UH1_1(v2, v3, v4, v5) -> (* Cons *) │
00:01:32 #3467 [verbose] > │ let v6 : uint64 = v1 + 1UL │
00:01:32 #3468 [verbose] > │ method11(v5, v6) │
00:01:32 #3469 [verbose] > │ | UH1_0 -> (* Nil *) │
00:01:32 #3470 [verbose] > │ v1 │
00:01:32 #3471 [verbose] > │ and method12 (v0 : (struct (int32 * string * (struct ((int32 []) * int32 * │
00:01:32 #3472 [verbose] > │ int32) -> US0)) []), v1 : UH1, v2 : uint64) : uint64 = │
00:01:32 #3473 [verbose] > │ match v1 with │
00:01:32 #3474 [verbose] > │ | UH1_1(v3, v4, v5, v6) -> (* Cons *) │
00:01:32 #3475 [verbose] > │ v0.[int v2] <- struct (v3, v4, v5) │
00:01:32 #3476 [verbose] > │ let v7 : uint64 = v2 + 1UL │
00:01:32 #3477 [verbose] > │ method12(v0, v6, v7) │
00:01:32 #3478 [verbose] > │ | UH1_0 -> (* Nil *) │
00:01:32 #3479 [verbose] > │ v2 │
00:01:32 #3480 [verbose] > │ and method10 (v0 : UH1) : (struct (int32 * string * (struct ((int32 []) * │
00:01:32 #3481 [verbose] > │ int32 * int32) -> US0)) []) = │
00:01:32 #3482 [verbose] > │ let v1 : uint64 = 0UL │
00:01:32 #3483 [verbose] > │ let v2 : uint64 = method11(v0, v1) │
00:01:32 #3484 [verbose] > │ let v3 : (struct (int32 * string * (struct ((int32 []) * int32 * int32) │
00:01:32 #3485 [verbose] > │ -> US0)) []) = Array.zeroCreate<struct (int32 * string * (struct ((int32 []) │
00:01:32 #3486 [verbose] > │ * int32 * int32) -> US0))> (System.Convert.ToInt32(v2)) │
00:01:32 #3487 [verbose] > │ let v4 : uint64 = 0UL │
00:01:32 #3488 [verbose] > │ let v5 : uint64 = method12(v3, v0, v4) │
00:01:32 #3489 [verbose] > │ v3 │
00:01:32 #3490 [verbose] > │ and method13 (v0 : Mut0) : bool = │
00:01:32 #3491 [verbose] > │ let v1 : int32 = v0.l0 │
00:01:32 #3492 [verbose] > │ let v2 : bool = v1 < 8000001 │
00:01:32 #3493 [verbose] > │ v2 │
00:01:32 #3494 [verbose] > │ and closure5 (v0 : (int32 []), v1 : int32, v2 : int32, v3 : (struct ((int32 │
00:01:32 #3495 [verbose] > │ []) * int32 * int32) -> US0)) (v4 : int32) : US0 = │
00:01:32 #3496 [verbose] > │ v3 struct (v0, v1, v2) │
00:01:32 #3497 [verbose] > │ and method14 (v0 : US0, v1 : (US0 []), v2 : uint64) : bool = │
00:01:32 #3498 [verbose] > │ let v3 : uint64 = System.Convert.ToUInt64 v1.Length │
00:01:32 #3499 [verbose] > │ let v4 : bool = v2 < v3 │
00:01:32 #3500 [verbose] > │ if v4 then │
00:01:32 #3501 [verbose] > │ let v5 : US0 = v1.[int v2] │
00:01:32 #3502 [verbose] > │ let v9 : bool = │
00:01:32 #3503 [verbose] > │ match v0, v5 with │
00:01:32 #3504 [verbose] > │ | US0_1, US0_1 -> (* None *) │
00:01:32 #3505 [verbose] > │ true │
00:01:32 #3506 [verbose] > │ | US0_0(v6), US0_0(v7) -> (* Some *) │
00:01:32 #3507 [verbose] > │ let v8 : bool = v6 = v7 │
00:01:32 #3508 [verbose] > │ v8 │
00:01:32 #3509 [verbose] > │ | _ -> │
00:01:32 #3510 [verbose] > │ false │
00:01:32 #3511 [verbose] > │ if v9 then │
00:01:32 #3512 [verbose] > │ let v10 : uint64 = v2 + 1UL │
00:01:32 #3513 [verbose] > │ method14(v0, v1, v10) │
00:01:32 #3514 [verbose] > │ else │
00:01:32 #3515 [verbose] > │ false │
00:01:32 #3516 [verbose] > │ else │
00:01:32 #3517 [verbose] > │ true │
00:01:32 #3518 [verbose] > │ and method15 (v0 : uint64, v1 : Mut2) : bool = │
00:01:32 #3519 [verbose] > │ let v2 : uint64 = v1.l0 │
00:01:32 #3520 [verbose] > │ let v3 : bool = v2 < v0 │
00:01:32 #3521 [verbose] > │ v3 │
00:01:32 #3522 [verbose] > │ and method16 (v0 : UH3, v1 : UH3) : UH3 = │
00:01:32 #3523 [verbose] > │ match v0 with │
00:01:32 #3524 [verbose] > │ | UH3_1(v2, v3, v4) -> (* Cons *) │
00:01:32 #3525 [verbose] > │ let v5 : UH3 = UH3_1(v2, v3, v1) │
00:01:32 #3526 [verbose] > │ method16(v4, v5) │
00:01:32 #3527 [verbose] > │ | UH3_0 -> (* Nil *) │
00:01:32 #3528 [verbose] > │ v1 │
00:01:32 #3529 [verbose] > │ and method18 (v0 : UH3, v1 : int32) : int32 = │
00:01:32 #3530 [verbose] > │ match v0 with │
00:01:32 #3531 [verbose] > │ | UH3_1(v2, v3, v4) -> (* Cons *) │
00:01:32 #3532 [verbose] > │ let v5 : int32 = v1 + 1 │
00:01:32 #3533 [verbose] > │ method18(v4, v5) │
00:01:32 #3534 [verbose] > │ | UH3_0 -> (* Nil *) │
00:01:32 #3535 [verbose] > │ v1 │
00:01:32 #3536 [verbose] > │ and method19 (v0 : (struct (int64 * int64) []), v1 : UH3, v2 : int32) : │
00:01:32 #3537 [verbose] > │ int32 = │
00:01:32 #3538 [verbose] > │ match v1 with │
00:01:32 #3539 [verbose] > │ | UH3_1(v3, v4, v5) -> (* Cons *) │
00:01:32 #3540 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:01:32 #3541 [verbose] > │ let v6 : int32 = v2 + 1 │
00:01:32 #3542 [verbose] > │ method19(v0, v5, v6) │
00:01:32 #3543 [verbose] > │ | UH3_0 -> (* Nil *) │
00:01:32 #3544 [verbose] > │ v2 │
00:01:32 #3545 [verbose] > │ and method17 (v0 : UH3) : (struct (int64 * int64) []) = │
00:01:32 #3546 [verbose] > │ let v1 : int32 = 0 │
00:01:32 #3547 [verbose] > │ let v2 : int32 = method18(v0, v1) │
00:01:32 #3548 [verbose] > │ let v3 : (struct (int64 * int64) []) = Array.zeroCreate<struct (int64 * │
00:01:32 #3549 [verbose] > │ int64)> (v2) │
00:01:32 #3550 [verbose] > │ let v4 : int32 = 0 │
00:01:32 #3551 [verbose] > │ let v5 : int32 = method19(v3, v0, v4) │
00:01:32 #3552 [verbose] > │ v3 │
00:01:32 #3553 [verbose] > │ and method20 (v0 : int32, v1 : Mut0) : bool = │
00:01:32 #3554 [verbose] > │ let v2 : int32 = v1.l0 │
00:01:32 #3555 [verbose] > │ let v3 : bool = v2 < v0 │
00:01:32 #3556 [verbose] > │ v3 │
00:01:32 #3557 [verbose] > │ and closure6 () struct (v0 : int64, v1 : int64) : int64 = │
00:01:32 #3558 [verbose] > │ v1 │
00:01:32 #3559 [verbose] > │ and method22 (v0 : UH4, v1 : uint64) : uint64 = │
00:01:32 #3560 [verbose] > │ match v0 with │
00:01:32 #3561 [verbose] > │ | UH4_1(v2, v3, v4) -> (* Cons *) │
00:01:32 #3562 [verbose] > │ let v5 : uint64 = v1 + 1UL │
00:01:32 #3563 [verbose] > │ method22(v4, v5) │
00:01:32 #3564 [verbose] > │ | UH4_0 -> (* Nil *) │
00:01:32 #3565 [verbose] > │ v1 │
00:01:32 #3566 [verbose] > │ and method23 (v0 : (struct (UH2 * US1) []), v1 : UH4, v2 : uint64) : uint64 │
00:01:32 #3567 [verbose] > │ = │
00:01:32 #3568 [verbose] > │ match v1 with │
00:01:32 #3569 [verbose] > │ | UH4_1(v3, v4, v5) -> (* Cons *) │
00:01:32 #3570 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:01:32 #3571 [verbose] > │ let v6 : uint64 = v2 + 1UL │
00:01:32 #3572 [verbose] > │ method23(v0, v5, v6) │
00:01:32 #3573 [verbose] > │ | UH4_0 -> (* Nil *) │
00:01:32 #3574 [verbose] > │ v2 │
00:01:32 #3575 [verbose] > │ and method21 (v0 : UH4) : (struct (UH2 * US1) []) = │
00:01:32 #3576 [verbose] > │ let v1 : uint64 = 0UL │
00:01:32 #3577 [verbose] > │ let v2 : uint64 = method22(v0, v1) │
00:01:32 #3578 [verbose] > │ let v3 : (struct (UH2 * US1) []) = Array.zeroCreate<struct (UH2 * US1)> │
00:01:32 #3579 [verbose] > │ (System.Convert.ToInt32(v2)) │
00:01:32 #3580 [verbose] > │ let v4 : uint64 = 0UL │
00:01:32 #3581 [verbose] > │ let v5 : uint64 = method23(v3, v0, v4) │
00:01:32 #3582 [verbose] > │ v3 │
00:01:32 #3583 [verbose] > │ and method25 (v0 : UH2, v1 : uint64) : uint64 = │
00:01:32 #3584 [verbose] > │ match v0 with │
00:01:32 #3585 [verbose] > │ | UH2_1(v2, v3) -> (* Cons *) │
00:01:32 #3586 [verbose] > │ let v4 : uint64 = v1 + 1UL │
00:01:32 #3587 [verbose] > │ method25(v3, v4) │
00:01:32 #3588 [verbose] > │ | UH2_0 -> (* Nil *) │
00:01:32 #3589 [verbose] > │ v1 │
00:01:32 #3590 [verbose] > │ and method26 (v0 : (string []), v1 : UH2, v2 : uint64) : uint64 = │
00:01:32 #3591 [verbose] > │ match v1 with │
00:01:32 #3592 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:01:32 #3593 [verbose] > │ v0.[int v2] <- v3 │
00:01:32 #3594 [verbose] > │ let v5 : uint64 = v2 + 1UL │
00:01:32 #3595 [verbose] > │ method26(v0, v4, v5) │
00:01:32 #3596 [verbose] > │ | UH2_0 -> (* Nil *) │
00:01:32 #3597 [verbose] > │ v2 │
00:01:32 #3598 [verbose] > │ and method24 (v0 : UH2) : (string []) = │
00:01:32 #3599 [verbose] > │ let v1 : uint64 = 0UL │
00:01:32 #3600 [verbose] > │ let v2 : uint64 = method25(v0, v1) │
00:01:32 #3601 [verbose] > │ let v3 : (string []) = Array.zeroCreate<string> │
00:01:32 #3602 [verbose] > │ (System.Convert.ToInt32(v2)) │
00:01:32 #3603 [verbose] > │ let v4 : uint64 = 0UL │
00:01:32 #3604 [verbose] > │ let v5 : uint64 = method26(v3, v0, v4) │
00:01:32 #3605 [verbose] > │ v3 │
00:01:32 #3606 [verbose] > │ and closure7 () (v0 : int64) : US2 = │
00:01:32 #3607 [verbose] > │ US2_0(v0) │
00:01:32 #3608 [verbose] > │ and method27 () : (int64 -> US2) = │
00:01:32 #3609 [verbose] > │ closure7() │
00:01:32 #3610 [verbose] > │ and method28 (v0 : uint64, v1 : Mut3) : bool = │
00:01:32 #3611 [verbose] > │ let v2 : uint64 = v1.l0 │
00:01:32 #3612 [verbose] > │ let v3 : bool = v2 < v0 │
00:01:32 #3613 [verbose] > │ v3 │
00:01:32 #3614 [verbose] > │ and method29 (v0 : UH5, v1 : UH5) : UH5 = │
00:01:32 #3615 [verbose] > │ match v0 with │
00:01:32 #3616 [verbose] > │ | UH5_1(v2, v3, v4) -> (* Cons *) │
00:01:32 #3617 [verbose] > │ let v5 : UH5 = UH5_1(v2, v3, v1) │
00:01:32 #3618 [verbose] > │ method29(v4, v5) │
00:01:32 #3619 [verbose] > │ | UH5_0 -> (* Nil *) │
00:01:32 #3620 [verbose] > │ v1 │
00:01:32 #3621 [verbose] > │ and method31 (v0 : UH5, v1 : int32) : int32 = │
00:01:32 #3622 [verbose] > │ match v0 with │
00:01:32 #3623 [verbose] > │ | UH5_1(v2, v3, v4) -> (* Cons *) │
00:01:32 #3624 [verbose] > │ let v5 : int32 = v1 + 1 │
00:01:32 #3625 [verbose] > │ method31(v4, v5) │
00:01:32 #3626 [verbose] > │ | UH5_0 -> (* Nil *) │
00:01:32 #3627 [verbose] > │ v1 │
00:01:32 #3628 [verbose] > │ and method32 (v0 : (struct (int32 * int64) []), v1 : UH5, v2 : int32) : │
00:01:32 #3629 [verbose] > │ int32 = │
00:01:32 #3630 [verbose] > │ match v1 with │
00:01:32 #3631 [verbose] > │ | UH5_1(v3, v4, v5) -> (* Cons *) │
00:01:32 #3632 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:01:32 #3633 [verbose] > │ let v6 : int32 = v2 + 1 │
00:01:32 #3634 [verbose] > │ method32(v0, v5, v6) │
00:01:32 #3635 [verbose] > │ | UH5_0 -> (* Nil *) │
00:01:32 #3636 [verbose] > │ v2 │
00:01:32 #3637 [verbose] > │ and method30 (v0 : UH5) : (struct (int32 * int64) []) = │
00:01:32 #3638 [verbose] > │ let v1 : int32 = 0 │
00:01:32 #3639 [verbose] > │ let v2 : int32 = method31(v0, v1) │
00:01:32 #3640 [verbose] > │ let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 * │
00:01:32 #3641 [verbose] > │ int64)> (v2) │
00:01:32 #3642 [verbose] > │ let v4 : int32 = 0 │
00:01:32 #3643 [verbose] > │ let v5 : int32 = method32(v3, v0, v4) │
00:01:32 #3644 [verbose] > │ v3 │
00:01:32 #3645 [verbose] > │ and method33 (v0 : UH2, v1 : UH6, v2 : int32) : struct (UH6 * int32) = │
00:01:32 #3646 [verbose] > │ match v0 with │
00:01:32 #3647 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:01:32 #3648 [verbose] > │ let v5 : int32 = v2 + 1 │
00:01:32 #3649 [verbose] > │ let v6 : UH6 = UH6_1(v2, v3, v1) │
00:01:32 #3650 [verbose] > │ method33(v4, v6, v5) │
00:01:32 #3651 [verbose] > │ | UH2_0 -> (* Nil *) │
00:01:32 #3652 [verbose] > │ struct (v1, v2) │
00:01:32 #3653 [verbose] > │ and method34 (v0 : UH6, v1 : UH6) : UH6 = │
00:01:32 #3654 [verbose] > │ match v0 with │
00:01:32 #3655 [verbose] > │ | UH6_1(v2, v3, v4) -> (* Cons *) │
00:01:32 #3656 [verbose] > │ let v5 : UH6 = UH6_1(v2, v3, v1) │
00:01:32 #3657 [verbose] > │ method34(v4, v5) │
00:01:32 #3658 [verbose] > │ | UH6_0 -> (* Nil *) │
00:01:32 #3659 [verbose] > │ v1 │
00:01:32 #3660 [verbose] > │ and method35 (v0 : Map<int32, int64>, v1 : UH6, v2 : UH2) : UH2 = │
00:01:32 #3661 [verbose] > │ match v1 with │
00:01:32 #3662 [verbose] > │ | UH6_1(v3, v4, v5) -> (* Cons *) │
00:01:32 #3663 [verbose] > │ let v6 : UH2 = method35(v0, v5, v2) │
00:01:32 #3664 [verbose] > │ let v7 : int64 = v0.[v3] │
00:01:32 #3665 [verbose] > │ let v8 : int32 = int32 v7 │
00:01:32 #3666 [verbose] > │ let v9 : string = v4.PadRight v8 │
00:01:32 #3667 [verbose] > │ UH2_1(v9, v6) │
00:01:32 #3668 [verbose] > │ | UH6_0 -> (* Nil *) │
00:01:32 #3669 [verbose] > │ v2 │
00:01:32 #3670 [verbose] > │ and method37 (v0 : UH2, v1 : int32) : int32 = │
00:01:32 #3671 [verbose] > │ match v0 with │
00:01:32 #3672 [verbose] > │ | UH2_1(v2, v3) -> (* Cons *) │
00:01:32 #3673 [verbose] > │ let v4 : int32 = v1 + 1 │
00:01:32 #3674 [verbose] > │ method37(v3, v4) │
00:01:32 #3675 [verbose] > │ | UH2_0 -> (* Nil *) │
00:01:32 #3676 [verbose] > │ v1 │
00:01:32 #3677 [verbose] > │ and method38 (v0 : (string []), v1 : UH2, v2 : int32) : int32 = │
00:01:32 #3678 [verbose] > │ match v1 with │
00:01:32 #3679 [verbose] > │ | UH2_1(v3, v4) -> (* Cons *) │
00:01:32 #3680 [verbose] > │ v0.[int v2] <- v3 │
00:01:32 #3681 [verbose] > │ let v5 : int32 = v2 + 1 │
00:01:32 #3682 [verbose] > │ method38(v0, v4, v5) │
00:01:32 #3683 [verbose] > │ | UH2_0 -> (* Nil *) │
00:01:32 #3684 [verbose] > │ v2 │
00:01:32 #3685 [verbose] > │ and method36 (v0 : UH2) : (string []) = │
00:01:32 #3686 [verbose] > │ let v1 : int32 = 0 │
00:01:32 #3687 [verbose] > │ let v2 : int32 = method37(v0, v1) │
00:01:32 #3688 [verbose] > │ let v3 : (string []) = Array.zeroCreate<string> (v2) │
00:01:32 #3689 [verbose] > │ let v4 : int32 = 0 │
00:01:32 #3690 [verbose] > │ let v5 : int32 = method38(v3, v0, v4) │
00:01:32 #3691 [verbose] > │ v3 │
00:01:32 #3692 [verbose] > │ and method40 (v0 : UH5, v1 : uint64) : uint64 = │
00:01:32 #3693 [verbose] > │ match v0 with │
00:01:32 #3694 [verbose] > │ | UH5_1(v2, v3, v4) -> (* Cons *) │
00:01:32 #3695 [verbose] > │ let v5 : uint64 = v1 + 1UL │
00:01:32 #3696 [verbose] > │ method40(v4, v5) │
00:01:32 #3697 [verbose] > │ | UH5_0 -> (* Nil *) │
00:01:32 #3698 [verbose] > │ v1 │
00:01:32 #3699 [verbose] > │ and method41 (v0 : (struct (int32 * int64) []), v1 : UH5, v2 : uint64) : │
00:01:32 #3700 [verbose] > │ uint64 = │
00:01:32 #3701 [verbose] > │ match v1 with │
00:01:32 #3702 [verbose] > │ | UH5_1(v3, v4, v5) -> (* Cons *) │
00:01:32 #3703 [verbose] > │ v0.[int v2] <- struct (v3, v4) │
00:01:32 #3704 [verbose] > │ let v6 : uint64 = v2 + 1UL │
00:01:32 #3705 [verbose] > │ method41(v0, v5, v6) │
00:01:32 #3706 [verbose] > │ | UH5_0 -> (* Nil *) │
00:01:32 #3707 [verbose] > │ v2 │
00:01:32 #3708 [verbose] > │ and method39 (v0 : UH5) : (struct (int32 * int64) []) = │
00:01:32 #3709 [verbose] > │ let v1 : uint64 = 0UL │
00:01:32 #3710 [verbose] > │ let v2 : uint64 = method40(v0, v1) │
00:01:32 #3711 [verbose] > │ let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 * │
00:01:32 #3712 [verbose] > │ int64)> (System.Convert.ToInt32(v2)) │
00:01:32 #3713 [verbose] > │ let v4 : uint64 = 0UL │
00:01:32 #3714 [verbose] > │ let v5 : uint64 = method41(v3, v0, v4) │
00:01:32 #3715 [verbose] > │ v3 │
00:01:32 #3716 [verbose] > │ and closure8 () struct (v0 : int32, v1 : int64) : int64 = │
00:01:32 #3717 [verbose] > │ v1 │
00:01:32 #3718 [verbose] > │ and closure0 () () : unit = │
00:01:32 #3719 [verbose] > │ let v0 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #3720 [verbose] > │ let v1 : int32 = v0.Length │
00:01:32 #3721 [verbose] > │ let v2 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #3722 [verbose] > │ let v3 : int32 = v2.Length │
00:01:32 #3723 [verbose] > │ let v4 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #3724 [verbose] > │ let v5 : int32 = v4.Length │
00:01:32 #3725 [verbose] > │ let v6 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #3726 [verbose] > │ let v7 : int32 = v6.Length │
00:01:32 #3727 [verbose] > │ let v8 : (int32 []) = Array.zeroCreate<int32> (100) │
00:01:32 #3728 [verbose] > │ let v9 : Mut0 = {l0 = 0} : Mut0 │
00:01:32 #3729 [verbose] > │ while method1(v9) do │
00:01:32 #3730 [verbose] > │ let v11 : int32 = v9.l0 │
00:01:32 #3731 [verbose] > │ let v12 : int32 = 1 + v11 │
00:01:32 #3732 [verbose] > │ v8.[int v11] <- v12 │
00:01:32 #3733 [verbose] > │ let v13 : int32 = v11 + 1 │
00:01:32 #3734 [verbose] > │ v9.l0 <- v13 │
00:01:32 #3735 [verbose] > │ () │
00:01:32 #3736 [verbose] > │ let v14 : int32 = v8.Length │
00:01:32 #3737 [verbose] > │ let v15 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #3738 [verbose] > │ let v16 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #3739 [verbose] > │ let v17 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #3740 [verbose] > │ let v18 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #3741 [verbose] > │ let v19 : (int32 []) = Array.zeroCreate<int32> (100) │
00:01:32 #3742 [verbose] > │ let v20 : Mut0 = {l0 = 0} : Mut0 │
00:01:32 #3743 [verbose] > │ while method1(v20) do │
00:01:32 #3744 [verbose] > │ let v22 : int32 = v20.l0 │
00:01:32 #3745 [verbose] > │ let v23 : int32 = 1 + v22 │
00:01:32 #3746 [verbose] > │ v19.[int v22] <- v23 │
00:01:32 #3747 [verbose] > │ let v24 : int32 = v22 + 1 │
00:01:32 #3748 [verbose] > │ v20.l0 <- v24 │
00:01:32 #3749 [verbose] > │ () │
00:01:32 #3750 [verbose] > │ let v25 : (unit -> unit) = closure0() │
00:01:32 #3751 [verbose] > │ let v26 : string = nameof v25 │
00:01:32 #3752 [verbose] > │ let v27 : string = "" │
00:01:32 #3753 [verbose] > │ System.Console.WriteLine v27 │
00:01:32 #3754 [verbose] > │ System.Console.WriteLine v27 │
00:01:32 #3755 [verbose] > │ let v28 : string = $"Test: {v26}" │
00:01:32 #3756 [verbose] > │ System.Console.WriteLine v28 │
00:01:32 #3757 [verbose] > │ let v29 : int32 = 6 │
00:01:32 #3758 [verbose] > │ let v30 : int32 = 3 │
00:01:32 #3759 [verbose] > │ let v31 : US0 = US0_0(v30) │
00:01:32 #3760 [verbose] > │ let v32 : int32 = 1 │
00:01:32 #3761 [verbose] > │ let v33 : int32 = 0 │
00:01:32 #3762 [verbose] > │ let v34 : US0 = US0_0(v33) │
00:01:32 #3763 [verbose] > │ let v35 : int32 = 11 │
00:01:32 #3764 [verbose] > │ let v36 : int32 = 6 │
00:01:32 #3765 [verbose] > │ let v37 : US0 = US0_0(v36) │
00:01:32 #3766 [verbose] > │ let v38 : int32 = 12 │
00:01:32 #3767 [verbose] > │ let v39 : US0 = US0_1 │
00:01:32 #3768 [verbose] > │ let v40 : int32 = 60 │
00:01:32 #3769 [verbose] > │ let v41 : int32 = 59 │
00:01:32 #3770 [verbose] > │ let v42 : US0 = US0_0(v41) │
00:01:32 #3771 [verbose] > │ let v43 : int32 = 6 │
00:01:32 #3772 [verbose] > │ let v44 : int32 = 7 │
00:01:32 #3773 [verbose] > │ let v45 : int32 = 3 │
00:01:32 #3774 [verbose] > │ let v46 : US0 = US0_0(v45) │
00:01:32 #3775 [verbose] > │ let v47 : int32 = 1 │
00:01:32 #3776 [verbose] > │ let v48 : int32 = 7 │
00:01:32 #3777 [verbose] > │ let v49 : int32 = 0 │
00:01:32 #3778 [verbose] > │ let v50 : US0 = US0_0(v49) │
00:01:32 #3779 [verbose] > │ let v51 : int32 = 11 │
00:01:32 #3780 [verbose] > │ let v52 : int32 = 7 │
00:01:32 #3781 [verbose] > │ let v53 : int32 = 6 │
00:01:32 #3782 [verbose] > │ let v54 : US0 = US0_0(v53) │
00:01:32 #3783 [verbose] > │ let v55 : int32 = 12 │
00:01:32 #3784 [verbose] > │ let v56 : int32 = 7 │
00:01:32 #3785 [verbose] > │ let v57 : US0 = US0_1 │
00:01:32 #3786 [verbose] > │ let v58 : int32 = 60 │
00:01:32 #3787 [verbose] > │ let v59 : int32 = 100 │
00:01:32 #3788 [verbose] > │ let v60 : int32 = 59 │
00:01:32 #3789 [verbose] > │ let v61 : US0 = US0_0(v60) │
00:01:32 #3790 [verbose] > │ let v62 : UH0 = UH0_0 │
00:01:32 #3791 [verbose] > │ let v63 : UH0 = UH0_1(v19, v58, v59, v61, v62) │
00:01:32 #3792 [verbose] > │ let v64 : UH0 = UH0_1(v18, v55, v56, v57, v63) │
00:01:32 #3793 [verbose] > │ let v65 : UH0 = UH0_1(v17, v51, v52, v54, v64) │
00:01:32 #3794 [verbose] > │ let v66 : UH0 = UH0_1(v16, v47, v48, v50, v65) │
00:01:32 #3795 [verbose] > │ let v67 : UH0 = UH0_1(v15, v43, v44, v46, v66) │
00:01:32 #3796 [verbose] > │ let v68 : UH0 = UH0_1(v8, v40, v14, v42, v67) │
00:01:32 #3797 [verbose] > │ let v69 : UH0 = UH0_1(v6, v38, v7, v39, v68) │
00:01:32 #3798 [verbose] > │ let v70 : UH0 = UH0_1(v4, v35, v5, v37, v69) │
00:01:32 #3799 [verbose] > │ let v71 : UH0 = UH0_1(v2, v32, v3, v34, v70) │
00:01:32 #3800 [verbose] > │ let v72 : UH0 = UH0_1(v0, v29, v1, v31, v71) │
00:01:32 #3801 [verbose] > │ let v73 : (struct ((int32 []) * int32 * int32 * US0) []) = method2(v72) │
00:01:32 #3802 [verbose] > │ let v74 : uint64 = System.Convert.ToUInt64 v73.Length │
00:01:32 #3803 [verbose] > │ let v75 : (struct (string * string * string * (int64 [])) []) = │
00:01:32 #3804 [verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))> │
00:01:32 #3805 [verbose] > │ (System.Convert.ToInt32(v74)) │
00:01:32 #3806 [verbose] > │ let v76 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #3807 [verbose] > │ while method5(v74, v76) do │
00:01:32 #3808 [verbose] > │ let v78 : uint64 = v76.l0 │
00:01:32 #3809 [verbose] > │ let struct (v79 : (int32 []), v80 : int32, v81 : int32, v82 : US0) = │
00:01:32 #3810 [verbose] > │ v73.[int v78] │
00:01:32 #3811 [verbose] > │ let v83 : string = $"%A{struct (v79, v80, v81)}" │
00:01:32 #3812 [verbose] > │ System.Console.WriteLine v27 │
00:01:32 #3813 [verbose] > │ let v84 : string = $"Solution: {v83} " │
00:01:32 #3814 [verbose] > │ System.Console.WriteLine v84 │
00:01:32 #3815 [verbose] > │ let v85 : int32 = 0 │
00:01:32 #3816 [verbose] > │ let v86 : string = "semi_open_1" │
00:01:32 #3817 [verbose] > │ let v87 : (struct ((int32 []) * int32 * int32) -> US0) = closure1() │
00:01:32 #3818 [verbose] > │ let v88 : int32 = 1 │
00:01:32 #3819 [verbose] > │ let v89 : string = "closed_1" │
00:01:32 #3820 [verbose] > │ let v90 : (struct ((int32 []) * int32 * int32) -> US0) = closure2() │
00:01:32 #3821 [verbose] > │ let v91 : int32 = 2 │
00:01:32 #3822 [verbose] > │ let v92 : string = "semi_open_2" │
00:01:32 #3823 [verbose] > │ let v93 : (struct ((int32 []) * int32 * int32) -> US0) = closure3() │
00:01:32 #3824 [verbose] > │ let v94 : int32 = 3 │
00:01:32 #3825 [verbose] > │ let v95 : string = "closed_2" │
00:01:32 #3826 [verbose] > │ let v96 : (struct ((int32 []) * int32 * int32) -> US0) = closure4() │
00:01:32 #3827 [verbose] > │ let v97 : UH1 = UH1_0 │
00:01:32 #3828 [verbose] > │ let v98 : UH1 = UH1_1(v94, v95, v96, v97) │
00:01:32 #3829 [verbose] > │ let v99 : UH1 = UH1_1(v91, v92, v93, v98) │
00:01:32 #3830 [verbose] > │ let v100 : UH1 = UH1_1(v88, v89, v90, v99) │
00:01:32 #3831 [verbose] > │ let v101 : UH1 = UH1_1(v85, v86, v87, v100) │
00:01:32 #3832 [verbose] > │ let v102 : (struct (int32 * string * (struct ((int32 []) * int32 * │
00:01:32 #3833 [verbose] > │ int32) -> US0)) []) = method10(v101) │
00:01:32 #3834 [verbose] > │ let v103 : uint64 = System.Convert.ToUInt64 v102.Length │
00:01:32 #3835 [verbose] > │ let v104 : (struct (US0 * int64) []) = Array.zeroCreate<struct (US0 │
00:01:32 #3836 [verbose] > │ * int64)> (System.Convert.ToInt32(v103)) │
00:01:32 #3837 [verbose] > │ let v105 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #3838 [verbose] > │ while method5(v103, v105) do │
00:01:32 #3839 [verbose] > │ let v107 : uint64 = v105.l0 │
00:01:32 #3840 [verbose] > │ let struct (v108 : int32, v109 : string, v110 : (struct ((int32 │
00:01:32 #3841 [verbose] > │ []) * int32 * int32) -> US0)) = v102.[int v107] │
00:01:32 #3842 [verbose] > │ let v111 : unit option = None │
00:01:32 #3843 [verbose] > │ let mutable _v111 = v111 │
00:01:32 #3844 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:32 #3845 [verbose] > │ () │
00:01:32 #3846 [verbose] > │ #endif │
00:01:32 #3847 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:32 #3848 [verbose] > │ () │
00:01:32 #3849 [verbose] > │ #endif │
00:01:32 #3850 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:32 #3851 [verbose] > │ () │
00:01:32 #3852 [verbose] > │ #endif │
00:01:32 #3853 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:32 #3854 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:32 #3855 [verbose] > │ System.GC.Collect () │
00:01:32 #3856 [verbose] > │ () │
00:01:32 #3857 [verbose] > │ #endif │
00:01:32 #3858 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:32 #3859 [verbose] > │ () │
00:01:32 #3860 [verbose] > │ #endif │
00:01:32 #3861 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:32 #3862 [verbose] > │ FABLE_COMPILER_DART │
00:01:32 #3863 [verbose] > │ Unchecked.defaultof<unit> │
00:01:32 #3864 [verbose] > │ #endif │
00:01:32 #3865 [verbose] > │ |> fun x -> _v111 <- Some x │
00:01:32 #3866 [verbose] > │ _v111.Value │
00:01:32 #3867 [verbose] > │ let v112 : (unit -> System.Diagnostics.Stopwatch) = │
00:01:32 #3868 [verbose] > │ System.Diagnostics.Stopwatch │
00:01:32 #3869 [verbose] > │ let v113 : System.Diagnostics.Stopwatch = v112 () │
00:01:32 #3870 [verbose] > │ v113.Start () │
00:01:32 #3871 [verbose] > │ let v114 : int64 = v113.ElapsedMilliseconds │
00:01:32 #3872 [verbose] > │ let v115 : (int32 []) = Array.zeroCreate<int32> (8000001) │
00:01:32 #3873 [verbose] > │ let v116 : Mut0 = {l0 = 0} : Mut0 │
00:01:32 #3874 [verbose] > │ while method13(v116) do │
00:01:32 #3875 [verbose] > │ let v118 : int32 = v116.l0 │
00:01:32 #3876 [verbose] > │ v115.[int v118] <- v118 │
00:01:32 #3877 [verbose] > │ let v119 : int32 = v118 + 1 │
00:01:32 #3878 [verbose] > │ v116.l0 <- v119 │
00:01:32 #3879 [verbose] > │ () │
00:01:32 #3880 [verbose] > │ let v120 : ((int32 -> US0) -> ((int32 []) -> (US0 []))) = │
00:01:32 #3881 [verbose] > │ Array.Parallel.map │
00:01:32 #3882 [verbose] > │ let v121 : (int32 -> US0) = closure5(v79, v80, v81, v110) │
00:01:32 #3883 [verbose] > │ let v122 : ((int32 []) -> (US0 [])) = v120 v121 │
00:01:32 #3884 [verbose] > │ let v123 : (US0 []) = v122 v115 │
00:01:32 #3885 [verbose] > │ let v124 : int32 = v123.Length │
00:01:32 #3886 [verbose] > │ let v125 : int32 = v124 - 1 │
00:01:32 #3887 [verbose] > │ let v126 : US0 = v123.[int v125] │
00:01:32 #3888 [verbose] > │ let v127 : int64 = v113.ElapsedMilliseconds │
00:01:32 #3889 [verbose] > │ let v128 : int64 = v127 - v114 │
00:01:32 #3890 [verbose] > │ let v129 : string = $"Test case {v108 + 1}. {v109}. Time: {v128} │
00:01:32 #3891 [verbose] > │ " │
00:01:32 #3892 [verbose] > │ System.Console.WriteLine v129 │
00:01:32 #3893 [verbose] > │ v104.[int v107] <- struct (v126, v128) │
00:01:32 #3894 [verbose] > │ let v130 : uint64 = v107 + 1UL │
00:01:32 #3895 [verbose] > │ v105.l0 <- v130 │
00:01:32 #3896 [verbose] > │ () │
00:01:32 #3897 [verbose] > │ let v131 : uint64 = System.Convert.ToUInt64 v104.Length │
00:01:32 #3898 [verbose] > │ let v132 : (US0 []) = Array.zeroCreate<US0> │
00:01:32 #3899 [verbose] > │ (System.Convert.ToInt32(v131)) │
00:01:32 #3900 [verbose] > │ let v133 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #3901 [verbose] > │ while method5(v131, v133) do │
00:01:32 #3902 [verbose] > │ let v135 : uint64 = v133.l0 │
00:01:32 #3903 [verbose] > │ let struct (v136 : US0, v137 : int64) = v104.[int v135] │
00:01:32 #3904 [verbose] > │ v132.[int v135] <- v136 │
00:01:32 #3905 [verbose] > │ let v138 : uint64 = v135 + 1UL │
00:01:32 #3906 [verbose] > │ v133.l0 <- v138 │
00:01:32 #3907 [verbose] > │ () │
00:01:32 #3908 [verbose] > │ let v139 : uint64 = System.Convert.ToUInt64 v132.Length │
00:01:32 #3909 [verbose] > │ let v140 : bool = v139 <= 1UL │
00:01:32 #3910 [verbose] > │ if v140 then │
00:01:32 #3911 [verbose] > │ () │
00:01:32 #3912 [verbose] > │ else │
00:01:32 #3913 [verbose] > │ let v141 : US0 = v132.[int 0UL] │
00:01:32 #3914 [verbose] > │ let v142 : uint64 = 0UL │
00:01:32 #3915 [verbose] > │ let v143 : bool = method14(v141, v132, v142) │
00:01:32 #3916 [verbose] > │ if v143 then │
00:01:32 #3917 [verbose] > │ () │
00:01:32 #3918 [verbose] > │ else │
00:01:32 #3919 [verbose] > │ let v144 : string = $"Challenge error: {v132}" │
00:01:32 #3920 [verbose] > │ failwith<unit> v144 │
00:01:32 #3921 [verbose] > │ let v145 : string = $"%A{v82}" │
00:01:32 #3922 [verbose] > │ let v146 : (US0 []) = Array.zeroCreate<US0> │
00:01:32 #3923 [verbose] > │ (System.Convert.ToInt32(v131)) │
00:01:32 #3924 [verbose] > │ let v147 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #3925 [verbose] > │ while method5(v131, v147) do │
00:01:32 #3926 [verbose] > │ let v149 : uint64 = v147.l0 │
00:01:32 #3927 [verbose] > │ let struct (v150 : US0, v151 : int64) = v104.[int v149] │
00:01:32 #3928 [verbose] > │ v146.[int v149] <- v150 │
00:01:32 #3929 [verbose] > │ let v152 : uint64 = v149 + 1UL │
00:01:32 #3930 [verbose] > │ v147.l0 <- v152 │
00:01:32 #3931 [verbose] > │ () │
00:01:32 #3932 [verbose] > │ let v153 : US0 = v146.[int 0UL] │
00:01:32 #3933 [verbose] > │ let v154 : string = $"%A{v153}" │
00:01:32 #3934 [verbose] > │ let v155 : (int64 []) = Array.zeroCreate<int64> │
00:01:32 #3935 [verbose] > │ (System.Convert.ToInt32(v131)) │
00:01:32 #3936 [verbose] > │ let v156 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #3937 [verbose] > │ while method5(v131, v156) do │
00:01:32 #3938 [verbose] > │ let v158 : uint64 = v156.l0 │
00:01:32 #3939 [verbose] > │ let struct (v159 : US0, v160 : int64) = v104.[int v158] │
00:01:32 #3940 [verbose] > │ v155.[int v158] <- v160 │
00:01:32 #3941 [verbose] > │ let v161 : uint64 = v158 + 1UL │
00:01:32 #3942 [verbose] > │ v156.l0 <- v161 │
00:01:32 #3943 [verbose] > │ () │
00:01:32 #3944 [verbose] > │ v75.[int v78] <- struct (v145, v83, v154, v155) │
00:01:32 #3945 [verbose] > │ let v162 : uint64 = v78 + 1UL │
00:01:32 #3946 [verbose] > │ v76.l0 <- v162 │
00:01:32 #3947 [verbose] > │ () │
00:01:32 #3948 [verbose] > │ let v163 : uint64 = System.Convert.ToUInt64 v75.Length │
00:01:32 #3949 [verbose] > │ let v164 : (struct (UH2 * US1) []) = Array.zeroCreate<struct (UH2 * │
00:01:32 #3950 [verbose] > │ US1)> (System.Convert.ToInt32(v163)) │
00:01:32 #3951 [verbose] > │ let v165 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #3952 [verbose] > │ while method5(v163, v165) do │
00:01:32 #3953 [verbose] > │ let v167 : uint64 = v165.l0 │
00:01:32 #3954 [verbose] > │ let struct (v168 : string, v169 : string, v170 : string, v171 : │
00:01:32 #3955 [verbose] > │ (int64 [])) = v75.[int v167] │
00:01:32 #3956 [verbose] > │ let v172 : uint64 = System.Convert.ToUInt64 v171.Length │
00:01:32 #3957 [verbose] > │ let v173 : UH3 = UH3_0 │
00:01:32 #3958 [verbose] > │ let v174 : Mut2 = {l0 = 0UL; l1 = v173; l2 = 0L} : Mut2 │
00:01:32 #3959 [verbose] > │ while method15(v172, v174) do │
00:01:32 #3960 [verbose] > │ let v176 : uint64 = v174.l0 │
00:01:32 #3961 [verbose] > │ let struct (v177 : UH3, v178 : int64) = v174.l1, v174.l2 │
00:01:32 #3962 [verbose] > │ let v179 : int64 = v171.[int v176] │
00:01:32 #3963 [verbose] > │ let v180 : int64 = v178 + 1L │
00:01:32 #3964 [verbose] > │ let v181 : uint64 = v176 + 1UL │
00:01:32 #3965 [verbose] > │ let v182 : UH3 = UH3_1(v178, v179, v177) │
00:01:32 #3966 [verbose] > │ v174.l0 <- v181 │
00:01:32 #3967 [verbose] > │ v174.l1 <- v182 │
00:01:32 #3968 [verbose] > │ v174.l2 <- v180 │
00:01:32 #3969 [verbose] > │ () │
00:01:32 #3970 [verbose] > │ let struct (v183 : UH3, v184 : int64) = v174.l1, v174.l2 │
00:01:32 #3971 [verbose] > │ let v185 : UH3 = UH3_0 │
00:01:32 #3972 [verbose] > │ let v186 : UH3 = method16(v183, v185) │
00:01:32 #3973 [verbose] > │ let v187 : (struct (int64 * int64) []) = method17(v186) │
00:01:32 #3974 [verbose] > │ let v188 : int32 = v187.Length │
00:01:32 #3975 [verbose] > │ let v189 : (struct (int64 * int64) []) = Array.zeroCreate<struct │
00:01:32 #3976 [verbose] > │ (int64 * int64)> (v188) │
00:01:32 #3977 [verbose] > │ let v190 : Mut0 = {l0 = 0} : Mut0 │
00:01:32 #3978 [verbose] > │ while method20(v188, v190) do │
00:01:32 #3979 [verbose] > │ let v192 : int32 = v190.l0 │
00:01:32 #3980 [verbose] > │ let struct (v193 : int64, v194 : int64) = v187.[int v192] │
00:01:32 #3981 [verbose] > │ let v195 : int64 = v193 + 1L │
00:01:32 #3982 [verbose] > │ v189.[int v192] <- struct (v195, v194) │
00:01:32 #3983 [verbose] > │ let v196 : int32 = v192 + 1 │
00:01:32 #3984 [verbose] > │ v190.l0 <- v196 │
00:01:32 #3985 [verbose] > │ () │
00:01:32 #3986 [verbose] > │ let v197 : ((struct (int64 * int64) -> int64) -> ((struct (int64 * │
00:01:32 #3987 [verbose] > │ int64) []) -> (struct (int64 * int64) []))) = Array.sortBy │
00:01:32 #3988 [verbose] > │ let v198 : (struct (int64 * int64) -> int64) = closure6() │
00:01:32 #3989 [verbose] > │ let v199 : ((struct (int64 * int64) []) -> (struct (int64 * int64) [ │
00:01:32 #3990 [verbose] > │ ])) = v197 v198 │
00:01:32 #3991 [verbose] > │ let v200 : (struct (int64 * int64) []) = v199 v189 │
00:01:32 #3992 [verbose] > │ let struct (v201 : int64, v202 : int64) = v200.[int 0] │
00:01:32 #3993 [verbose] > │ let v203 : string = $"%A{struct (v201, v202)}" │
00:01:32 #3994 [verbose] > │ let v204 : bool = v168 = v170 │
00:01:32 #3995 [verbose] > │ let v209 : US1 = │
00:01:32 #3996 [verbose] > │ if v204 then │
00:01:32 #3997 [verbose] > │ let v205 : System.ConsoleColor = │
00:01:32 #3998 [verbose] > │ System.ConsoleColor.DarkGreen │
00:01:32 #3999 [verbose] > │ US1_0(v205) │
00:01:32 #4000 [verbose] > │ else │
00:01:32 #4001 [verbose] > │ let v207 : System.ConsoleColor = System.ConsoleColor.DarkRed │
00:01:32 #4002 [verbose] > │ US1_0(v207) │
00:01:32 #4003 [verbose] > │ let v210 : UH2 = UH2_0 │
00:01:32 #4004 [verbose] > │ let v211 : UH2 = UH2_1(v203, v210) │
00:01:32 #4005 [verbose] > │ let v212 : UH2 = UH2_1(v170, v211) │
00:01:32 #4006 [verbose] > │ let v213 : UH2 = UH2_1(v168, v212) │
00:01:32 #4007 [verbose] > │ let v214 : UH2 = UH2_1(v169, v213) │
00:01:32 #4008 [verbose] > │ v164.[int v167] <- struct (v214, v209) │
00:01:32 #4009 [verbose] > │ let v215 : uint64 = v167 + 1UL │
00:01:32 #4010 [verbose] > │ v165.l0 <- v215 │
00:01:32 #4011 [verbose] > │ () │
00:01:32 #4012 [verbose] > │ let v216 : string = "Input" │
00:01:32 #4013 [verbose] > │ let v217 : string = "Expected" │
00:01:32 #4014 [verbose] > │ let v218 : string = "Result" │
00:01:32 #4015 [verbose] > │ let v219 : string = "Best" │
00:01:32 #4016 [verbose] > │ let v220 : UH2 = UH2_0 │
00:01:32 #4017 [verbose] > │ let v221 : UH2 = UH2_1(v219, v220) │
00:01:32 #4018 [verbose] > │ let v222 : UH2 = UH2_1(v218, v221) │
00:01:32 #4019 [verbose] > │ let v223 : UH2 = UH2_1(v217, v222) │
00:01:32 #4020 [verbose] > │ let v224 : UH2 = UH2_1(v216, v223) │
00:01:32 #4021 [verbose] > │ let v225 : US1 = US1_1 │
00:01:32 #4022 [verbose] > │ let v226 : string = "---" │
00:01:32 #4023 [verbose] > │ let v227 : UH2 = UH2_0 │
00:01:32 #4024 [verbose] > │ let v228 : UH2 = UH2_1(v226, v227) │
00:01:32 #4025 [verbose] > │ let v229 : UH2 = UH2_1(v226, v228) │
00:01:32 #4026 [verbose] > │ let v230 : UH2 = UH2_1(v226, v229) │
00:01:32 #4027 [verbose] > │ let v231 : UH2 = UH2_1(v226, v230) │
00:01:32 #4028 [verbose] > │ let v232 : US1 = US1_1 │
00:01:32 #4029 [verbose] > │ let v233 : UH4 = UH4_0 │
00:01:32 #4030 [verbose] > │ let v234 : UH4 = UH4_1(v231, v232, v233) │
00:01:32 #4031 [verbose] > │ let v235 : UH4 = UH4_1(v224, v225, v234) │
00:01:32 #4032 [verbose] > │ let v236 : (struct (UH2 * US1) []) = method21(v235) │
00:01:32 #4033 [verbose] > │ let v237 : uint64 = System.Convert.ToUInt64 v236.Length │
00:01:32 #4034 [verbose] > │ let v238 : uint64 = System.Convert.ToUInt64 v164.Length │
00:01:32 #4035 [verbose] > │ let v239 : uint64 = v237 + v238 │
00:01:32 #4036 [verbose] > │ let v240 : (struct (UH2 * US1) []) = Array.zeroCreate<struct (UH2 * │
00:01:32 #4037 [verbose] > │ US1)> (System.Convert.ToInt32(v239)) │
00:01:32 #4038 [verbose] > │ let v241 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4039 [verbose] > │ while method5(v239, v241) do │
00:01:32 #4040 [verbose] > │ let v243 : uint64 = v241.l0 │
00:01:32 #4041 [verbose] > │ let v244 : bool = v243 < v237 │
00:01:32 #4042 [verbose] > │ let struct (v250 : UH2, v251 : US1) = │
00:01:32 #4043 [verbose] > │ if v244 then │
00:01:32 #4044 [verbose] > │ let struct (v245 : UH2, v246 : US1) = v236.[int v243] │
00:01:32 #4045 [verbose] > │ struct (v245, v246) │
00:01:32 #4046 [verbose] > │ else │
00:01:32 #4047 [verbose] > │ let v247 : uint64 = v243 - v237 │
00:01:32 #4048 [verbose] > │ let struct (v248 : UH2, v249 : US1) = v164.[int v247] │
00:01:32 #4049 [verbose] > │ struct (v248, v249) │
00:01:32 #4050 [verbose] > │ v240.[int v243] <- struct (v250, v251) │
00:01:32 #4051 [verbose] > │ let v252 : uint64 = v243 + 1UL │
00:01:32 #4052 [verbose] > │ v241.l0 <- v252 │
00:01:32 #4053 [verbose] > │ () │
00:01:32 #4054 [verbose] > │ let v253 : uint64 = System.Convert.ToUInt64 v240.Length │
00:01:32 #4055 [verbose] > │ let v254 : ((string []) []) = Array.zeroCreate<(string [])> │
00:01:32 #4056 [verbose] > │ (System.Convert.ToInt32(v253)) │
00:01:32 #4057 [verbose] > │ let v255 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4058 [verbose] > │ while method5(v253, v255) do │
00:01:32 #4059 [verbose] > │ let v257 : uint64 = v255.l0 │
00:01:32 #4060 [verbose] > │ let struct (v258 : UH2, v259 : US1) = v240.[int v257] │
00:01:32 #4061 [verbose] > │ let v260 : (string []) = method24(v258) │
00:01:32 #4062 [verbose] > │ v254.[int v257] <- v260 │
00:01:32 #4063 [verbose] > │ let v261 : uint64 = v257 + 1UL │
00:01:32 #4064 [verbose] > │ v255.l0 <- v261 │
00:01:32 #4065 [verbose] > │ () │
00:01:32 #4066 [verbose] > │ let v262 : (((string []) []) -> ((string []) [])) = Array.transpose │
00:01:32 #4067 [verbose] > │ let v263 : ((string []) []) = v262 v254 │
00:01:32 #4068 [verbose] > │ let v264 : uint64 = System.Convert.ToUInt64 v263.Length │
00:01:32 #4069 [verbose] > │ let v265 : (int64 []) = Array.zeroCreate<int64> │
00:01:32 #4070 [verbose] > │ (System.Convert.ToInt32(v264)) │
00:01:32 #4071 [verbose] > │ let v266 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4072 [verbose] > │ while method5(v264, v266) do │
00:01:32 #4073 [verbose] > │ let v268 : uint64 = v266.l0 │
00:01:32 #4074 [verbose] > │ let v269 : (string []) = v263.[int v268] │
00:01:32 #4075 [verbose] > │ let v270 : uint64 = System.Convert.ToUInt64 v269.Length │
00:01:32 #4076 [verbose] > │ let v271 : (int64 []) = Array.zeroCreate<int64> │
00:01:32 #4077 [verbose] > │ (System.Convert.ToInt32(v270)) │
00:01:32 #4078 [verbose] > │ let v272 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4079 [verbose] > │ while method5(v270, v272) do │
00:01:32 #4080 [verbose] > │ let v274 : uint64 = v272.l0 │
00:01:32 #4081 [verbose] > │ let v275 : string = v269.[int v274] │
00:01:32 #4082 [verbose] > │ let v276 : int64 = System.Convert.ToInt64 v275.Length │
00:01:32 #4083 [verbose] > │ v271.[int v274] <- v276 │
00:01:32 #4084 [verbose] > │ let v277 : uint64 = v274 + 1UL │
00:01:32 #4085 [verbose] > │ v272.l0 <- v277 │
00:01:32 #4086 [verbose] > │ () │
00:01:32 #4087 [verbose] > │ let v278 : ((int64 []) -> (int64 [])) = Array.sortDescending │
00:01:32 #4088 [verbose] > │ let v279 : (int64 []) = v278 v271 │
00:01:32 #4089 [verbose] > │ let v280 : (int32 -> ((int64 []) -> int64 option)) = Array.tryItem │
00:01:32 #4090 [verbose] > │ let v281 : ((int64 []) -> int64 option) = v280 0 │
00:01:32 #4091 [verbose] > │ let v282 : int64 option = v281 v279 │
00:01:32 #4092 [verbose] > │ let v283 : (int64 -> US2) = method27() │
00:01:32 #4093 [verbose] > │ let v284 : US2 = US2_1 │
00:01:32 #4094 [verbose] > │ let v285 : US2 = v282 |> Option.map v283 |> Option.defaultValue v284 │
00:01:32 #4095 [verbose] > │ let v288 : int64 = │
00:01:32 #4096 [verbose] > │ match v285 with │
00:01:32 #4097 [verbose] > │ | US2_1 -> (* None *) │
00:01:32 #4098 [verbose] > │ 0L │
00:01:32 #4099 [verbose] > │ | US2_0(v286) -> (* Some *) │
00:01:32 #4100 [verbose] > │ v286 │
00:01:32 #4101 [verbose] > │ v265.[int v268] <- v288 │
00:01:32 #4102 [verbose] > │ let v289 : uint64 = v268 + 1UL │
00:01:32 #4103 [verbose] > │ v266.l0 <- v289 │
00:01:32 #4104 [verbose] > │ () │
00:01:32 #4105 [verbose] > │ let v290 : uint64 = System.Convert.ToUInt64 v265.Length │
00:01:32 #4106 [verbose] > │ let v291 : UH5 = UH5_0 │
00:01:32 #4107 [verbose] > │ let v292 : Mut3 = {l0 = 0UL; l1 = v291; l2 = 0} : Mut3 │
00:01:32 #4108 [verbose] > │ while method28(v290, v292) do │
00:01:32 #4109 [verbose] > │ let v294 : uint64 = v292.l0 │
00:01:32 #4110 [verbose] > │ let struct (v295 : UH5, v296 : int32) = v292.l1, v292.l2 │
00:01:32 #4111 [verbose] > │ let v297 : int64 = v265.[int v294] │
00:01:32 #4112 [verbose] > │ let v298 : int32 = v296 + 1 │
00:01:32 #4113 [verbose] > │ let v299 : uint64 = v294 + 1UL │
00:01:32 #4114 [verbose] > │ let v300 : UH5 = UH5_1(v296, v297, v295) │
00:01:32 #4115 [verbose] > │ v292.l0 <- v299 │
00:01:32 #4116 [verbose] > │ v292.l1 <- v300 │
00:01:32 #4117 [verbose] > │ v292.l2 <- v298 │
00:01:32 #4118 [verbose] > │ () │
00:01:32 #4119 [verbose] > │ let struct (v301 : UH5, v302 : int32) = v292.l1, v292.l2 │
00:01:32 #4120 [verbose] > │ let v303 : UH5 = UH5_0 │
00:01:32 #4121 [verbose] > │ let v304 : UH5 = method29(v301, v303) │
00:01:32 #4122 [verbose] > │ let v305 : (struct (int32 * int64) []) = method30(v304) │
00:01:32 #4123 [verbose] > │ let v306 : Map<int32, int64> = v305 |> Array.map (fun (struct (a, b)) -> │
00:01:32 #4124 [verbose] > │ a, b) |> Map.ofArray │
00:01:32 #4125 [verbose] > │ let v307 : (struct ((string []) * US1) []) = Array.zeroCreate<struct │
00:01:32 #4126 [verbose] > │ ((string []) * US1)> (System.Convert.ToInt32(v253)) │
00:01:32 #4127 [verbose] > │ let v308 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4128 [verbose] > │ while method5(v253, v308) do │
00:01:32 #4129 [verbose] > │ let v310 : uint64 = v308.l0 │
00:01:32 #4130 [verbose] > │ let struct (v311 : UH2, v312 : US1) = v240.[int v310] │
00:01:32 #4131 [verbose] > │ let v313 : UH6 = UH6_0 │
00:01:32 #4132 [verbose] > │ let v314 : int32 = 0 │
00:01:32 #4133 [verbose] > │ let struct (v315 : UH6, v316 : int32) = method33(v311, v313, v314) │
00:01:32 #4134 [verbose] > │ let v317 : UH6 = UH6_0 │
00:01:32 #4135 [verbose] > │ let v318 : UH6 = method34(v315, v317) │
00:01:32 #4136 [verbose] > │ let v319 : UH2 = UH2_0 │
00:01:32 #4137 [verbose] > │ let v320 : UH2 = method35(v306, v318, v319) │
00:01:32 #4138 [verbose] > │ let v321 : (string []) = method36(v320) │
00:01:32 #4139 [verbose] > │ v307.[int v310] <- struct (v321, v312) │
00:01:32 #4140 [verbose] > │ let v322 : uint64 = v310 + 1UL │
00:01:32 #4141 [verbose] > │ v308.l0 <- v322 │
00:01:32 #4142 [verbose] > │ () │
00:01:32 #4143 [verbose] > │ System.Console.WriteLine v27 │
00:01:32 #4144 [verbose] > │ let v323 : uint64 = System.Convert.ToUInt64 v307.Length │
00:01:32 #4145 [verbose] > │ let v324 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4146 [verbose] > │ while method5(v323, v324) do │
00:01:32 #4147 [verbose] > │ let v326 : uint64 = v324.l0 │
00:01:32 #4148 [verbose] > │ let struct (v327 : (string []), v328 : US1) = v307.[int v326] │
00:01:32 #4149 [verbose] > │ match v328 with │
00:01:32 #4150 [verbose] > │ | US1_1 -> (* None *) │
00:01:32 #4151 [verbose] > │ let v331 : unit option = None │
00:01:32 #4152 [verbose] > │ let mutable _v331 = v331 │
00:01:32 #4153 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:32 #4154 [verbose] > │ () │
00:01:32 #4155 [verbose] > │ #endif │
00:01:32 #4156 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:32 #4157 [verbose] > │ () │
00:01:32 #4158 [verbose] > │ #endif │
00:01:32 #4159 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:32 #4160 [verbose] > │ () │
00:01:32 #4161 [verbose] > │ #endif │
00:01:32 #4162 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:32 #4163 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:32 #4164 [verbose] > │ System.Console.ResetColor () │
00:01:32 #4165 [verbose] > │ () │
00:01:32 #4166 [verbose] > │ #endif │
00:01:32 #4167 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:32 #4168 [verbose] > │ () │
00:01:32 #4169 [verbose] > │ #endif │
00:01:32 #4170 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:32 #4171 [verbose] > │ FABLE_COMPILER_DART │
00:01:32 #4172 [verbose] > │ Unchecked.defaultof<unit> │
00:01:32 #4173 [verbose] > │ #endif │
00:01:32 #4174 [verbose] > │ |> fun x -> _v331 <- Some x │
00:01:32 #4175 [verbose] > │ _v331.Value │
00:01:32 #4176 [verbose] > │ () │
00:01:32 #4177 [verbose] > │ | US1_0(v329) -> (* Some *) │
00:01:32 #4178 [verbose] > │ let v330 : unit option = None │
00:01:32 #4179 [verbose] > │ let mutable _v330 = v330 │
00:01:32 #4180 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:32 #4181 [verbose] > │ () │
00:01:32 #4182 [verbose] > │ #endif │
00:01:32 #4183 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:32 #4184 [verbose] > │ () │
00:01:32 #4185 [verbose] > │ #endif │
00:01:32 #4186 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:32 #4187 [verbose] > │ () │
00:01:32 #4188 [verbose] > │ #endif │
00:01:32 #4189 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:32 #4190 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:32 #4191 [verbose] > │ System.Console.ForegroundColor <- v329 │
00:01:32 #4192 [verbose] > │ () │
00:01:32 #4193 [verbose] > │ #endif │
00:01:32 #4194 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:32 #4195 [verbose] > │ () │
00:01:32 #4196 [verbose] > │ #endif │
00:01:32 #4197 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:32 #4198 [verbose] > │ FABLE_COMPILER_DART │
00:01:32 #4199 [verbose] > │ Unchecked.defaultof<unit> │
00:01:32 #4200 [verbose] > │ #endif │
00:01:32 #4201 [verbose] > │ |> fun x -> _v330 <- Some x │
00:01:32 #4202 [verbose] > │ _v330.Value │
00:01:32 #4203 [verbose] > │ () │
00:01:32 #4204 [verbose] > │ let v332 : string = "\t| " │
00:01:32 #4205 [verbose] > │ let v333 : string = System.String.Join (v332, v327) │
00:01:32 #4206 [verbose] > │ System.Console.WriteLine v333 │
00:01:32 #4207 [verbose] > │ let v334 : unit option = None │
00:01:32 #4208 [verbose] > │ let mutable _v334 = v334 │
00:01:32 #4209 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:32 #4210 [verbose] > │ () │
00:01:32 #4211 [verbose] > │ #endif │
00:01:32 #4212 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:32 #4213 [verbose] > │ () │
00:01:32 #4214 [verbose] > │ #endif │
00:01:32 #4215 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:32 #4216 [verbose] > │ () │
00:01:32 #4217 [verbose] > │ #endif │
00:01:32 #4218 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:32 #4219 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:32 #4220 [verbose] > │ System.Console.ResetColor () │
00:01:32 #4221 [verbose] > │ () │
00:01:32 #4222 [verbose] > │ #endif │
00:01:32 #4223 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:32 #4224 [verbose] > │ () │
00:01:32 #4225 [verbose] > │ #endif │
00:01:32 #4226 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:32 #4227 [verbose] > │ FABLE_COMPILER_DART │
00:01:32 #4228 [verbose] > │ Unchecked.defaultof<unit> │
00:01:32 #4229 [verbose] > │ #endif │
00:01:32 #4230 [verbose] > │ |> fun x -> _v334 <- Some x │
00:01:32 #4231 [verbose] > │ _v334.Value │
00:01:32 #4232 [verbose] > │ let v335 : uint64 = v326 + 1UL │
00:01:32 #4233 [verbose] > │ v324.l0 <- v335 │
00:01:32 #4234 [verbose] > │ () │
00:01:32 #4235 [verbose] > │ let v336 : ((float []) []) = Array.zeroCreate<(float [])> │
00:01:32 #4236 [verbose] > │ (System.Convert.ToInt32(v163)) │
00:01:32 #4237 [verbose] > │ let v337 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4238 [verbose] > │ while method5(v163, v337) do │
00:01:32 #4239 [verbose] > │ let v339 : uint64 = v337.l0 │
00:01:32 #4240 [verbose] > │ let struct (v340 : string, v341 : string, v342 : string, v343 : │
00:01:32 #4241 [verbose] > │ (int64 [])) = v75.[int v339] │
00:01:32 #4242 [verbose] > │ let v344 : (int64 -> float) = float │
00:01:32 #4243 [verbose] > │ let v345 : uint64 = System.Convert.ToUInt64 v343.Length │
00:01:32 #4244 [verbose] > │ let v346 : (float []) = Array.zeroCreate<float> │
00:01:32 #4245 [verbose] > │ (System.Convert.ToInt32(v345)) │
00:01:32 #4246 [verbose] > │ let v347 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4247 [verbose] > │ while method5(v345, v347) do │
00:01:32 #4248 [verbose] > │ let v349 : uint64 = v347.l0 │
00:01:32 #4249 [verbose] > │ let v350 : int64 = v343.[int v349] │
00:01:32 #4250 [verbose] > │ let v351 : float = v344 v350 │
00:01:32 #4251 [verbose] > │ v346.[int v349] <- v351 │
00:01:32 #4252 [verbose] > │ let v352 : uint64 = v349 + 1UL │
00:01:32 #4253 [verbose] > │ v347.l0 <- v352 │
00:01:32 #4254 [verbose] > │ () │
00:01:32 #4255 [verbose] > │ v336.[int v339] <- v346 │
00:01:32 #4256 [verbose] > │ let v353 : uint64 = v339 + 1UL │
00:01:32 #4257 [verbose] > │ v337.l0 <- v353 │
00:01:32 #4258 [verbose] > │ () │
00:01:32 #4259 [verbose] > │ let v354 : (((float []) []) -> ((float []) [])) = Array.transpose │
00:01:32 #4260 [verbose] > │ let v355 : ((float []) []) = v354 v336 │
00:01:32 #4261 [verbose] > │ let v356 : uint64 = System.Convert.ToUInt64 v355.Length │
00:01:32 #4262 [verbose] > │ let v357 : (float []) = Array.zeroCreate<float> │
00:01:32 #4263 [verbose] > │ (System.Convert.ToInt32(v356)) │
00:01:32 #4264 [verbose] > │ let v358 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4265 [verbose] > │ while method5(v356, v358) do │
00:01:32 #4266 [verbose] > │ let v360 : uint64 = v358.l0 │
00:01:32 #4267 [verbose] > │ let v361 : (float []) = v355.[int v360] │
00:01:32 #4268 [verbose] > │ let v362 : ((float []) -> float) = Array.average │
00:01:32 #4269 [verbose] > │ let v363 : float = v362 v361 │
00:01:32 #4270 [verbose] > │ v357.[int v360] <- v363 │
00:01:32 #4271 [verbose] > │ let v364 : uint64 = v360 + 1UL │
00:01:32 #4272 [verbose] > │ v358.l0 <- v364 │
00:01:32 #4273 [verbose] > │ () │
00:01:32 #4274 [verbose] > │ let v365 : (float -> int64) = int64 │
00:01:32 #4275 [verbose] > │ let v366 : uint64 = System.Convert.ToUInt64 v357.Length │
00:01:32 #4276 [verbose] > │ let v367 : (int64 []) = Array.zeroCreate<int64> │
00:01:32 #4277 [verbose] > │ (System.Convert.ToInt32(v366)) │
00:01:32 #4278 [verbose] > │ let v368 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4279 [verbose] > │ while method5(v366, v368) do │
00:01:32 #4280 [verbose] > │ let v370 : uint64 = v368.l0 │
00:01:32 #4281 [verbose] > │ let v371 : float = v357.[int v370] │
00:01:32 #4282 [verbose] > │ let v372 : int64 = v365 v371 │
00:01:32 #4283 [verbose] > │ v367.[int v370] <- v372 │
00:01:32 #4284 [verbose] > │ let v373 : uint64 = v370 + 1UL │
00:01:32 #4285 [verbose] > │ v368.l0 <- v373 │
00:01:32 #4286 [verbose] > │ () │
00:01:32 #4287 [verbose] > │ let v374 : uint64 = System.Convert.ToUInt64 v367.Length │
00:01:32 #4288 [verbose] > │ let v375 : UH5 = UH5_0 │
00:01:32 #4289 [verbose] > │ let v376 : Mut3 = {l0 = 0UL; l1 = v375; l2 = 0} : Mut3 │
00:01:32 #4290 [verbose] > │ while method28(v374, v376) do │
00:01:32 #4291 [verbose] > │ let v378 : uint64 = v376.l0 │
00:01:32 #4292 [verbose] > │ let struct (v379 : UH5, v380 : int32) = v376.l1, v376.l2 │
00:01:32 #4293 [verbose] > │ let v381 : int64 = v367.[int v378] │
00:01:32 #4294 [verbose] > │ let v382 : int32 = v380 + 1 │
00:01:32 #4295 [verbose] > │ let v383 : uint64 = v378 + 1UL │
00:01:32 #4296 [verbose] > │ let v384 : UH5 = UH5_1(v380, v381, v379) │
00:01:32 #4297 [verbose] > │ v376.l0 <- v383 │
00:01:32 #4298 [verbose] > │ v376.l1 <- v384 │
00:01:32 #4299 [verbose] > │ v376.l2 <- v382 │
00:01:32 #4300 [verbose] > │ () │
00:01:32 #4301 [verbose] > │ let struct (v385 : UH5, v386 : int32) = v376.l1, v376.l2 │
00:01:32 #4302 [verbose] > │ let v387 : UH5 = UH5_0 │
00:01:32 #4303 [verbose] > │ let v388 : UH5 = method29(v385, v387) │
00:01:32 #4304 [verbose] > │ let v389 : (struct (int32 * int64) []) = method39(v388) │
00:01:32 #4305 [verbose] > │ System.Console.WriteLine v27 │
00:01:32 #4306 [verbose] > │ let v390 : string = "Average Ranking " │
00:01:32 #4307 [verbose] > │ System.Console.WriteLine v390 │
00:01:32 #4308 [verbose] > │ let v391 : ((struct (int32 * int64) -> int64) -> ((struct (int32 * │
00:01:32 #4309 [verbose] > │ int64) []) -> (struct (int32 * int64) []))) = Array.sortBy │
00:01:32 #4310 [verbose] > │ let v392 : (struct (int32 * int64) -> int64) = closure8() │
00:01:32 #4311 [verbose] > │ let v393 : ((struct (int32 * int64) []) -> (struct (int32 * int64) [])) │
00:01:32 #4312 [verbose] > │ = v391 v392 │
00:01:32 #4313 [verbose] > │ let v394 : (struct (int32 * int64) []) = v393 v389 │
00:01:32 #4314 [verbose] > │ let v395 : uint64 = System.Convert.ToUInt64 v394.Length │
00:01:32 #4315 [verbose] > │ let v396 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4316 [verbose] > │ while method5(v395, v396) do │
00:01:32 #4317 [verbose] > │ let v398 : uint64 = v396.l0 │
00:01:32 #4318 [verbose] > │ let struct (v399 : int32, v400 : int64) = v394.[int v398] │
00:01:32 #4319 [verbose] > │ let v401 : string = $"Test case %d{v399 + 1}. Average Time: %A{v400} │
00:01:32 #4320 [verbose] > │ " │
00:01:32 #4321 [verbose] > │ System.Console.WriteLine v401 │
00:01:32 #4322 [verbose] > │ let v402 : uint64 = v398 + 1UL │
00:01:32 #4323 [verbose] > │ v396.l0 <- v402 │
00:01:32 #4324 [verbose] > │ () │
00:01:32 #4325 [verbose] > │ () │
00:01:32 #4326 [verbose] > │ and method0 () : unit = │
00:01:32 #4327 [verbose] > │ let v0 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #4328 [verbose] > │ let v1 : int32 = v0.Length │
00:01:32 #4329 [verbose] > │ let v2 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #4330 [verbose] > │ let v3 : int32 = v2.Length │
00:01:32 #4331 [verbose] > │ let v4 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #4332 [verbose] > │ let v5 : int32 = v4.Length │
00:01:32 #4333 [verbose] > │ let v6 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #4334 [verbose] > │ let v7 : int32 = v6.Length │
00:01:32 #4335 [verbose] > │ let v8 : (int32 []) = Array.zeroCreate<int32> (100) │
00:01:32 #4336 [verbose] > │ let v9 : Mut0 = {l0 = 0} : Mut0 │
00:01:32 #4337 [verbose] > │ while method1(v9) do │
00:01:32 #4338 [verbose] > │ let v11 : int32 = v9.l0 │
00:01:32 #4339 [verbose] > │ let v12 : int32 = 1 + v11 │
00:01:32 #4340 [verbose] > │ v8.[int v11] <- v12 │
00:01:32 #4341 [verbose] > │ let v13 : int32 = v11 + 1 │
00:01:32 #4342 [verbose] > │ v9.l0 <- v13 │
00:01:32 #4343 [verbose] > │ () │
00:01:32 #4344 [verbose] > │ let v14 : int32 = v8.Length │
00:01:32 #4345 [verbose] > │ let v15 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #4346 [verbose] > │ let v16 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #4347 [verbose] > │ let v17 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #4348 [verbose] > │ let v18 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|] │
00:01:32 #4349 [verbose] > │ let v19 : (int32 []) = Array.zeroCreate<int32> (100) │
00:01:32 #4350 [verbose] > │ let v20 : Mut0 = {l0 = 0} : Mut0 │
00:01:32 #4351 [verbose] > │ while method1(v20) do │
00:01:32 #4352 [verbose] > │ let v22 : int32 = v20.l0 │
00:01:32 #4353 [verbose] > │ let v23 : int32 = 1 + v22 │
00:01:32 #4354 [verbose] > │ v19.[int v22] <- v23 │
00:01:32 #4355 [verbose] > │ let v24 : int32 = v22 + 1 │
00:01:32 #4356 [verbose] > │ v20.l0 <- v24 │
00:01:32 #4357 [verbose] > │ () │
00:01:32 #4358 [verbose] > │ let v25 : (unit -> unit) = closure0() │
00:01:32 #4359 [verbose] > │ let v26 : string = nameof v25 │
00:01:32 #4360 [verbose] > │ let v27 : string = "" │
00:01:32 #4361 [verbose] > │ System.Console.WriteLine v27 │
00:01:32 #4362 [verbose] > │ System.Console.WriteLine v27 │
00:01:32 #4363 [verbose] > │ let v28 : string = $"Test: {v26}" │
00:01:32 #4364 [verbose] > │ System.Console.WriteLine v28 │
00:01:32 #4365 [verbose] > │ let v29 : int32 = 6 │
00:01:32 #4366 [verbose] > │ let v30 : int32 = 3 │
00:01:32 #4367 [verbose] > │ let v31 : US0 = US0_0(v30) │
00:01:32 #4368 [verbose] > │ let v32 : int32 = 1 │
00:01:32 #4369 [verbose] > │ let v33 : int32 = 0 │
00:01:32 #4370 [verbose] > │ let v34 : US0 = US0_0(v33) │
00:01:32 #4371 [verbose] > │ let v35 : int32 = 11 │
00:01:32 #4372 [verbose] > │ let v36 : int32 = 6 │
00:01:32 #4373 [verbose] > │ let v37 : US0 = US0_0(v36) │
00:01:32 #4374 [verbose] > │ let v38 : int32 = 12 │
00:01:32 #4375 [verbose] > │ let v39 : US0 = US0_1 │
00:01:32 #4376 [verbose] > │ let v40 : int32 = 60 │
00:01:32 #4377 [verbose] > │ let v41 : int32 = 59 │
00:01:32 #4378 [verbose] > │ let v42 : US0 = US0_0(v41) │
00:01:32 #4379 [verbose] > │ let v43 : int32 = 6 │
00:01:32 #4380 [verbose] > │ let v44 : int32 = 7 │
00:01:32 #4381 [verbose] > │ let v45 : int32 = 3 │
00:01:32 #4382 [verbose] > │ let v46 : US0 = US0_0(v45) │
00:01:32 #4383 [verbose] > │ let v47 : int32 = 1 │
00:01:32 #4384 [verbose] > │ let v48 : int32 = 7 │
00:01:32 #4385 [verbose] > │ let v49 : int32 = 0 │
00:01:32 #4386 [verbose] > │ let v50 : US0 = US0_0(v49) │
00:01:32 #4387 [verbose] > │ let v51 : int32 = 11 │
00:01:32 #4388 [verbose] > │ let v52 : int32 = 7 │
00:01:32 #4389 [verbose] > │ let v53 : int32 = 6 │
00:01:32 #4390 [verbose] > │ let v54 : US0 = US0_0(v53) │
00:01:32 #4391 [verbose] > │ let v55 : int32 = 12 │
00:01:32 #4392 [verbose] > │ let v56 : int32 = 7 │
00:01:32 #4393 [verbose] > │ let v57 : US0 = US0_1 │
00:01:32 #4394 [verbose] > │ let v58 : int32 = 60 │
00:01:32 #4395 [verbose] > │ let v59 : int32 = 100 │
00:01:32 #4396 [verbose] > │ let v60 : int32 = 59 │
00:01:32 #4397 [verbose] > │ let v61 : US0 = US0_0(v60) │
00:01:32 #4398 [verbose] > │ let v62 : UH0 = UH0_0 │
00:01:32 #4399 [verbose] > │ let v63 : UH0 = UH0_1(v19, v58, v59, v61, v62) │
00:01:32 #4400 [verbose] > │ let v64 : UH0 = UH0_1(v18, v55, v56, v57, v63) │
00:01:32 #4401 [verbose] > │ let v65 : UH0 = UH0_1(v17, v51, v52, v54, v64) │
00:01:32 #4402 [verbose] > │ let v66 : UH0 = UH0_1(v16, v47, v48, v50, v65) │
00:01:32 #4403 [verbose] > │ let v67 : UH0 = UH0_1(v15, v43, v44, v46, v66) │
00:01:32 #4404 [verbose] > │ let v68 : UH0 = UH0_1(v8, v40, v14, v42, v67) │
00:01:32 #4405 [verbose] > │ let v69 : UH0 = UH0_1(v6, v38, v7, v39, v68) │
00:01:32 #4406 [verbose] > │ let v70 : UH0 = UH0_1(v4, v35, v5, v37, v69) │
00:01:32 #4407 [verbose] > │ let v71 : UH0 = UH0_1(v2, v32, v3, v34, v70) │
00:01:32 #4408 [verbose] > │ let v72 : UH0 = UH0_1(v0, v29, v1, v31, v71) │
00:01:32 #4409 [verbose] > │ let v73 : (struct ((int32 []) * int32 * int32 * US0) []) = method2(v72) │
00:01:32 #4410 [verbose] > │ let v74 : uint64 = System.Convert.ToUInt64 v73.Length │
00:01:32 #4411 [verbose] > │ let v75 : (struct (string * string * string * (int64 [])) []) = │
00:01:32 #4412 [verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))> │
00:01:32 #4413 [verbose] > │ (System.Convert.ToInt32(v74)) │
00:01:32 #4414 [verbose] > │ let v76 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4415 [verbose] > │ while method5(v74, v76) do │
00:01:32 #4416 [verbose] > │ let v78 : uint64 = v76.l0 │
00:01:32 #4417 [verbose] > │ let struct (v79 : (int32 []), v80 : int32, v81 : int32, v82 : US0) = │
00:01:32 #4418 [verbose] > │ v73.[int v78] │
00:01:32 #4419 [verbose] > │ let v83 : string = $"%A{struct (v79, v80, v81)}" │
00:01:32 #4420 [verbose] > │ System.Console.WriteLine v27 │
00:01:32 #4421 [verbose] > │ let v84 : string = $"Solution: {v83} " │
00:01:32 #4422 [verbose] > │ System.Console.WriteLine v84 │
00:01:32 #4423 [verbose] > │ let v85 : int32 = 0 │
00:01:32 #4424 [verbose] > │ let v86 : string = "semi_open_1" │
00:01:32 #4425 [verbose] > │ let v87 : (struct ((int32 []) * int32 * int32) -> US0) = closure1() │
00:01:32 #4426 [verbose] > │ let v88 : int32 = 1 │
00:01:32 #4427 [verbose] > │ let v89 : string = "closed_1" │
00:01:32 #4428 [verbose] > │ let v90 : (struct ((int32 []) * int32 * int32) -> US0) = closure2() │
00:01:32 #4429 [verbose] > │ let v91 : int32 = 2 │
00:01:32 #4430 [verbose] > │ let v92 : string = "semi_open_2" │
00:01:32 #4431 [verbose] > │ let v93 : (struct ((int32 []) * int32 * int32) -> US0) = closure3() │
00:01:32 #4432 [verbose] > │ let v94 : int32 = 3 │
00:01:32 #4433 [verbose] > │ let v95 : string = "closed_2" │
00:01:32 #4434 [verbose] > │ let v96 : (struct ((int32 []) * int32 * int32) -> US0) = closure4() │
00:01:32 #4435 [verbose] > │ let v97 : UH1 = UH1_0 │
00:01:32 #4436 [verbose] > │ let v98 : UH1 = UH1_1(v94, v95, v96, v97) │
00:01:32 #4437 [verbose] > │ let v99 : UH1 = UH1_1(v91, v92, v93, v98) │
00:01:32 #4438 [verbose] > │ let v100 : UH1 = UH1_1(v88, v89, v90, v99) │
00:01:32 #4439 [verbose] > │ let v101 : UH1 = UH1_1(v85, v86, v87, v100) │
00:01:32 #4440 [verbose] > │ let v102 : (struct (int32 * string * (struct ((int32 []) * int32 * │
00:01:32 #4441 [verbose] > │ int32) -> US0)) []) = method10(v101) │
00:01:32 #4442 [verbose] > │ let v103 : uint64 = System.Convert.ToUInt64 v102.Length │
00:01:32 #4443 [verbose] > │ let v104 : (struct (US0 * int64) []) = Array.zeroCreate<struct (US0 │
00:01:32 #4444 [verbose] > │ * int64)> (System.Convert.ToInt32(v103)) │
00:01:32 #4445 [verbose] > │ let v105 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4446 [verbose] > │ while method5(v103, v105) do │
00:01:32 #4447 [verbose] > │ let v107 : uint64 = v105.l0 │
00:01:32 #4448 [verbose] > │ let struct (v108 : int32, v109 : string, v110 : (struct ((int32 │
00:01:32 #4449 [verbose] > │ []) * int32 * int32) -> US0)) = v102.[int v107] │
00:01:32 #4450 [verbose] > │ let v111 : unit option = None │
00:01:32 #4451 [verbose] > │ let mutable _v111 = v111 │
00:01:32 #4452 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:32 #4453 [verbose] > │ () │
00:01:32 #4454 [verbose] > │ #endif │
00:01:32 #4455 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:32 #4456 [verbose] > │ () │
00:01:32 #4457 [verbose] > │ #endif │
00:01:32 #4458 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:32 #4459 [verbose] > │ () │
00:01:32 #4460 [verbose] > │ #endif │
00:01:32 #4461 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:32 #4462 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:32 #4463 [verbose] > │ System.GC.Collect () │
00:01:32 #4464 [verbose] > │ () │
00:01:32 #4465 [verbose] > │ #endif │
00:01:32 #4466 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:32 #4467 [verbose] > │ () │
00:01:32 #4468 [verbose] > │ #endif │
00:01:32 #4469 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:32 #4470 [verbose] > │ FABLE_COMPILER_DART │
00:01:32 #4471 [verbose] > │ Unchecked.defaultof<unit> │
00:01:32 #4472 [verbose] > │ #endif │
00:01:32 #4473 [verbose] > │ |> fun x -> _v111 <- Some x │
00:01:32 #4474 [verbose] > │ _v111.Value │
00:01:32 #4475 [verbose] > │ let v112 : (unit -> System.Diagnostics.Stopwatch) = │
00:01:32 #4476 [verbose] > │ System.Diagnostics.Stopwatch │
00:01:32 #4477 [verbose] > │ let v113 : System.Diagnostics.Stopwatch = v112 () │
00:01:32 #4478 [verbose] > │ v113.Start () │
00:01:32 #4479 [verbose] > │ let v114 : int64 = v113.ElapsedMilliseconds │
00:01:32 #4480 [verbose] > │ let v115 : (int32 []) = Array.zeroCreate<int32> (8000001) │
00:01:32 #4481 [verbose] > │ let v116 : Mut0 = {l0 = 0} : Mut0 │
00:01:32 #4482 [verbose] > │ while method13(v116) do │
00:01:32 #4483 [verbose] > │ let v118 : int32 = v116.l0 │
00:01:32 #4484 [verbose] > │ v115.[int v118] <- v118 │
00:01:32 #4485 [verbose] > │ let v119 : int32 = v118 + 1 │
00:01:32 #4486 [verbose] > │ v116.l0 <- v119 │
00:01:32 #4487 [verbose] > │ () │
00:01:32 #4488 [verbose] > │ let v120 : ((int32 -> US0) -> ((int32 []) -> (US0 []))) = │
00:01:32 #4489 [verbose] > │ Array.Parallel.map │
00:01:32 #4490 [verbose] > │ let v121 : (int32 -> US0) = closure5(v79, v80, v81, v110) │
00:01:32 #4491 [verbose] > │ let v122 : ((int32 []) -> (US0 [])) = v120 v121 │
00:01:32 #4492 [verbose] > │ let v123 : (US0 []) = v122 v115 │
00:01:32 #4493 [verbose] > │ let v124 : int32 = v123.Length │
00:01:32 #4494 [verbose] > │ let v125 : int32 = v124 - 1 │
00:01:32 #4495 [verbose] > │ let v126 : US0 = v123.[int v125] │
00:01:32 #4496 [verbose] > │ let v127 : int64 = v113.ElapsedMilliseconds │
00:01:32 #4497 [verbose] > │ let v128 : int64 = v127 - v114 │
00:01:32 #4498 [verbose] > │ let v129 : string = $"Test case {v108 + 1}. {v109}. Time: {v128} │
00:01:32 #4499 [verbose] > │ " │
00:01:32 #4500 [verbose] > │ System.Console.WriteLine v129 │
00:01:32 #4501 [verbose] > │ v104.[int v107] <- struct (v126, v128) │
00:01:32 #4502 [verbose] > │ let v130 : uint64 = v107 + 1UL │
00:01:32 #4503 [verbose] > │ v105.l0 <- v130 │
00:01:32 #4504 [verbose] > │ () │
00:01:32 #4505 [verbose] > │ let v131 : uint64 = System.Convert.ToUInt64 v104.Length │
00:01:32 #4506 [verbose] > │ let v132 : (US0 []) = Array.zeroCreate<US0> │
00:01:32 #4507 [verbose] > │ (System.Convert.ToInt32(v131)) │
00:01:32 #4508 [verbose] > │ let v133 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4509 [verbose] > │ while method5(v131, v133) do │
00:01:32 #4510 [verbose] > │ let v135 : uint64 = v133.l0 │
00:01:32 #4511 [verbose] > │ let struct (v136 : US0, v137 : int64) = v104.[int v135] │
00:01:32 #4512 [verbose] > │ v132.[int v135] <- v136 │
00:01:32 #4513 [verbose] > │ let v138 : uint64 = v135 + 1UL │
00:01:32 #4514 [verbose] > │ v133.l0 <- v138 │
00:01:32 #4515 [verbose] > │ () │
00:01:32 #4516 [verbose] > │ let v139 : uint64 = System.Convert.ToUInt64 v132.Length │
00:01:32 #4517 [verbose] > │ let v140 : bool = v139 <= 1UL │
00:01:32 #4518 [verbose] > │ if v140 then │
00:01:32 #4519 [verbose] > │ () │
00:01:32 #4520 [verbose] > │ else │
00:01:32 #4521 [verbose] > │ let v141 : US0 = v132.[int 0UL] │
00:01:32 #4522 [verbose] > │ let v142 : uint64 = 0UL │
00:01:32 #4523 [verbose] > │ let v143 : bool = method14(v141, v132, v142) │
00:01:32 #4524 [verbose] > │ if v143 then │
00:01:32 #4525 [verbose] > │ () │
00:01:32 #4526 [verbose] > │ else │
00:01:32 #4527 [verbose] > │ let v144 : string = $"Challenge error: {v132}" │
00:01:32 #4528 [verbose] > │ failwith<unit> v144 │
00:01:32 #4529 [verbose] > │ let v145 : string = $"%A{v82}" │
00:01:32 #4530 [verbose] > │ let v146 : (US0 []) = Array.zeroCreate<US0> │
00:01:32 #4531 [verbose] > │ (System.Convert.ToInt32(v131)) │
00:01:32 #4532 [verbose] > │ let v147 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4533 [verbose] > │ while method5(v131, v147) do │
00:01:32 #4534 [verbose] > │ let v149 : uint64 = v147.l0 │
00:01:32 #4535 [verbose] > │ let struct (v150 : US0, v151 : int64) = v104.[int v149] │
00:01:32 #4536 [verbose] > │ v146.[int v149] <- v150 │
00:01:32 #4537 [verbose] > │ let v152 : uint64 = v149 + 1UL │
00:01:32 #4538 [verbose] > │ v147.l0 <- v152 │
00:01:32 #4539 [verbose] > │ () │
00:01:32 #4540 [verbose] > │ let v153 : US0 = v146.[int 0UL] │
00:01:32 #4541 [verbose] > │ let v154 : string = $"%A{v153}" │
00:01:32 #4542 [verbose] > │ let v155 : (int64 []) = Array.zeroCreate<int64> │
00:01:32 #4543 [verbose] > │ (System.Convert.ToInt32(v131)) │
00:01:32 #4544 [verbose] > │ let v156 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4545 [verbose] > │ while method5(v131, v156) do │
00:01:32 #4546 [verbose] > │ let v158 : uint64 = v156.l0 │
00:01:32 #4547 [verbose] > │ let struct (v159 : US0, v160 : int64) = v104.[int v158] │
00:01:32 #4548 [verbose] > │ v155.[int v158] <- v160 │
00:01:32 #4549 [verbose] > │ let v161 : uint64 = v158 + 1UL │
00:01:32 #4550 [verbose] > │ v156.l0 <- v161 │
00:01:32 #4551 [verbose] > │ () │
00:01:32 #4552 [verbose] > │ v75.[int v78] <- struct (v145, v83, v154, v155) │
00:01:32 #4553 [verbose] > │ let v162 : uint64 = v78 + 1UL │
00:01:32 #4554 [verbose] > │ v76.l0 <- v162 │
00:01:32 #4555 [verbose] > │ () │
00:01:32 #4556 [verbose] > │ let v163 : uint64 = System.Convert.ToUInt64 v75.Length │
00:01:32 #4557 [verbose] > │ let v164 : (struct (UH2 * US1) []) = Array.zeroCreate<struct (UH2 * │
00:01:32 #4558 [verbose] > │ US1)> (System.Convert.ToInt32(v163)) │
00:01:32 #4559 [verbose] > │ let v165 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4560 [verbose] > │ while method5(v163, v165) do │
00:01:32 #4561 [verbose] > │ let v167 : uint64 = v165.l0 │
00:01:32 #4562 [verbose] > │ let struct (v168 : string, v169 : string, v170 : string, v171 : │
00:01:32 #4563 [verbose] > │ (int64 [])) = v75.[int v167] │
00:01:32 #4564 [verbose] > │ let v172 : uint64 = System.Convert.ToUInt64 v171.Length │
00:01:32 #4565 [verbose] > │ let v173 : UH3 = UH3_0 │
00:01:32 #4566 [verbose] > │ let v174 : Mut2 = {l0 = 0UL; l1 = v173; l2 = 0L} : Mut2 │
00:01:32 #4567 [verbose] > │ while method15(v172, v174) do │
00:01:32 #4568 [verbose] > │ let v176 : uint64 = v174.l0 │
00:01:32 #4569 [verbose] > │ let struct (v177 : UH3, v178 : int64) = v174.l1, v174.l2 │
00:01:32 #4570 [verbose] > │ let v179 : int64 = v171.[int v176] │
00:01:32 #4571 [verbose] > │ let v180 : int64 = v178 + 1L │
00:01:32 #4572 [verbose] > │ let v181 : uint64 = v176 + 1UL │
00:01:32 #4573 [verbose] > │ let v182 : UH3 = UH3_1(v178, v179, v177) │
00:01:32 #4574 [verbose] > │ v174.l0 <- v181 │
00:01:32 #4575 [verbose] > │ v174.l1 <- v182 │
00:01:32 #4576 [verbose] > │ v174.l2 <- v180 │
00:01:32 #4577 [verbose] > │ () │
00:01:32 #4578 [verbose] > │ let struct (v183 : UH3, v184 : int64) = v174.l1, v174.l2 │
00:01:32 #4579 [verbose] > │ let v185 : UH3 = UH3_0 │
00:01:32 #4580 [verbose] > │ let v186 : UH3 = method16(v183, v185) │
00:01:32 #4581 [verbose] > │ let v187 : (struct (int64 * int64) []) = method17(v186) │
00:01:32 #4582 [verbose] > │ let v188 : int32 = v187.Length │
00:01:32 #4583 [verbose] > │ let v189 : (struct (int64 * int64) []) = Array.zeroCreate<struct │
00:01:32 #4584 [verbose] > │ (int64 * int64)> (v188) │
00:01:32 #4585 [verbose] > │ let v190 : Mut0 = {l0 = 0} : Mut0 │
00:01:32 #4586 [verbose] > │ while method20(v188, v190) do │
00:01:32 #4587 [verbose] > │ let v192 : int32 = v190.l0 │
00:01:32 #4588 [verbose] > │ let struct (v193 : int64, v194 : int64) = v187.[int v192] │
00:01:32 #4589 [verbose] > │ let v195 : int64 = v193 + 1L │
00:01:32 #4590 [verbose] > │ v189.[int v192] <- struct (v195, v194) │
00:01:32 #4591 [verbose] > │ let v196 : int32 = v192 + 1 │
00:01:32 #4592 [verbose] > │ v190.l0 <- v196 │
00:01:32 #4593 [verbose] > │ () │
00:01:32 #4594 [verbose] > │ let v197 : ((struct (int64 * int64) -> int64) -> ((struct (int64 * │
00:01:32 #4595 [verbose] > │ int64) []) -> (struct (int64 * int64) []))) = Array.sortBy │
00:01:32 #4596 [verbose] > │ let v198 : (struct (int64 * int64) -> int64) = closure6() │
00:01:32 #4597 [verbose] > │ let v199 : ((struct (int64 * int64) []) -> (struct (int64 * int64) [ │
00:01:32 #4598 [verbose] > │ ])) = v197 v198 │
00:01:32 #4599 [verbose] > │ let v200 : (struct (int64 * int64) []) = v199 v189 │
00:01:32 #4600 [verbose] > │ let struct (v201 : int64, v202 : int64) = v200.[int 0] │
00:01:32 #4601 [verbose] > │ let v203 : string = $"%A{struct (v201, v202)}" │
00:01:32 #4602 [verbose] > │ let v204 : bool = v168 = v170 │
00:01:32 #4603 [verbose] > │ let v209 : US1 = │
00:01:32 #4604 [verbose] > │ if v204 then │
00:01:32 #4605 [verbose] > │ let v205 : System.ConsoleColor = │
00:01:32 #4606 [verbose] > │ System.ConsoleColor.DarkGreen │
00:01:32 #4607 [verbose] > │ US1_0(v205) │
00:01:32 #4608 [verbose] > │ else │
00:01:32 #4609 [verbose] > │ let v207 : System.ConsoleColor = System.ConsoleColor.DarkRed │
00:01:32 #4610 [verbose] > │ US1_0(v207) │
00:01:32 #4611 [verbose] > │ let v210 : UH2 = UH2_0 │
00:01:32 #4612 [verbose] > │ let v211 : UH2 = UH2_1(v203, v210) │
00:01:32 #4613 [verbose] > │ let v212 : UH2 = UH2_1(v170, v211) │
00:01:32 #4614 [verbose] > │ let v213 : UH2 = UH2_1(v168, v212) │
00:01:32 #4615 [verbose] > │ let v214 : UH2 = UH2_1(v169, v213) │
00:01:32 #4616 [verbose] > │ v164.[int v167] <- struct (v214, v209) │
00:01:32 #4617 [verbose] > │ let v215 : uint64 = v167 + 1UL │
00:01:32 #4618 [verbose] > │ v165.l0 <- v215 │
00:01:32 #4619 [verbose] > │ () │
00:01:32 #4620 [verbose] > │ let v216 : string = "Input" │
00:01:32 #4621 [verbose] > │ let v217 : string = "Expected" │
00:01:32 #4622 [verbose] > │ let v218 : string = "Result" │
00:01:32 #4623 [verbose] > │ let v219 : string = "Best" │
00:01:32 #4624 [verbose] > │ let v220 : UH2 = UH2_0 │
00:01:32 #4625 [verbose] > │ let v221 : UH2 = UH2_1(v219, v220) │
00:01:32 #4626 [verbose] > │ let v222 : UH2 = UH2_1(v218, v221) │
00:01:32 #4627 [verbose] > │ let v223 : UH2 = UH2_1(v217, v222) │
00:01:32 #4628 [verbose] > │ let v224 : UH2 = UH2_1(v216, v223) │
00:01:32 #4629 [verbose] > │ let v225 : US1 = US1_1 │
00:01:32 #4630 [verbose] > │ let v226 : string = "---" │
00:01:32 #4631 [verbose] > │ let v227 : UH2 = UH2_0 │
00:01:32 #4632 [verbose] > │ let v228 : UH2 = UH2_1(v226, v227) │
00:01:32 #4633 [verbose] > │ let v229 : UH2 = UH2_1(v226, v228) │
00:01:32 #4634 [verbose] > │ let v230 : UH2 = UH2_1(v226, v229) │
00:01:32 #4635 [verbose] > │ let v231 : UH2 = UH2_1(v226, v230) │
00:01:32 #4636 [verbose] > │ let v232 : US1 = US1_1 │
00:01:32 #4637 [verbose] > │ let v233 : UH4 = UH4_0 │
00:01:32 #4638 [verbose] > │ let v234 : UH4 = UH4_1(v231, v232, v233) │
00:01:32 #4639 [verbose] > │ let v235 : UH4 = UH4_1(v224, v225, v234) │
00:01:32 #4640 [verbose] > │ let v236 : (struct (UH2 * US1) []) = method21(v235) │
00:01:32 #4641 [verbose] > │ let v237 : uint64 = System.Convert.ToUInt64 v236.Length │
00:01:32 #4642 [verbose] > │ let v238 : uint64 = System.Convert.ToUInt64 v164.Length │
00:01:32 #4643 [verbose] > │ let v239 : uint64 = v237 + v238 │
00:01:32 #4644 [verbose] > │ let v240 : (struct (UH2 * US1) []) = Array.zeroCreate<struct (UH2 * │
00:01:32 #4645 [verbose] > │ US1)> (System.Convert.ToInt32(v239)) │
00:01:32 #4646 [verbose] > │ let v241 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4647 [verbose] > │ while method5(v239, v241) do │
00:01:32 #4648 [verbose] > │ let v243 : uint64 = v241.l0 │
00:01:32 #4649 [verbose] > │ let v244 : bool = v243 < v237 │
00:01:32 #4650 [verbose] > │ let struct (v250 : UH2, v251 : US1) = │
00:01:32 #4651 [verbose] > │ if v244 then │
00:01:32 #4652 [verbose] > │ let struct (v245 : UH2, v246 : US1) = v236.[int v243] │
00:01:32 #4653 [verbose] > │ struct (v245, v246) │
00:01:32 #4654 [verbose] > │ else │
00:01:32 #4655 [verbose] > │ let v247 : uint64 = v243 - v237 │
00:01:32 #4656 [verbose] > │ let struct (v248 : UH2, v249 : US1) = v164.[int v247] │
00:01:32 #4657 [verbose] > │ struct (v248, v249) │
00:01:32 #4658 [verbose] > │ v240.[int v243] <- struct (v250, v251) │
00:01:32 #4659 [verbose] > │ let v252 : uint64 = v243 + 1UL │
00:01:32 #4660 [verbose] > │ v241.l0 <- v252 │
00:01:32 #4661 [verbose] > │ () │
00:01:32 #4662 [verbose] > │ let v253 : uint64 = System.Convert.ToUInt64 v240.Length │
00:01:32 #4663 [verbose] > │ let v254 : ((string []) []) = Array.zeroCreate<(string [])> │
00:01:32 #4664 [verbose] > │ (System.Convert.ToInt32(v253)) │
00:01:32 #4665 [verbose] > │ let v255 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4666 [verbose] > │ while method5(v253, v255) do │
00:01:32 #4667 [verbose] > │ let v257 : uint64 = v255.l0 │
00:01:32 #4668 [verbose] > │ let struct (v258 : UH2, v259 : US1) = v240.[int v257] │
00:01:32 #4669 [verbose] > │ let v260 : (string []) = method24(v258) │
00:01:32 #4670 [verbose] > │ v254.[int v257] <- v260 │
00:01:32 #4671 [verbose] > │ let v261 : uint64 = v257 + 1UL │
00:01:32 #4672 [verbose] > │ v255.l0 <- v261 │
00:01:32 #4673 [verbose] > │ () │
00:01:32 #4674 [verbose] > │ let v262 : (((string []) []) -> ((string []) [])) = Array.transpose │
00:01:32 #4675 [verbose] > │ let v263 : ((string []) []) = v262 v254 │
00:01:32 #4676 [verbose] > │ let v264 : uint64 = System.Convert.ToUInt64 v263.Length │
00:01:32 #4677 [verbose] > │ let v265 : (int64 []) = Array.zeroCreate<int64> │
00:01:32 #4678 [verbose] > │ (System.Convert.ToInt32(v264)) │
00:01:32 #4679 [verbose] > │ let v266 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4680 [verbose] > │ while method5(v264, v266) do │
00:01:32 #4681 [verbose] > │ let v268 : uint64 = v266.l0 │
00:01:32 #4682 [verbose] > │ let v269 : (string []) = v263.[int v268] │
00:01:32 #4683 [verbose] > │ let v270 : uint64 = System.Convert.ToUInt64 v269.Length │
00:01:32 #4684 [verbose] > │ let v271 : (int64 []) = Array.zeroCreate<int64> │
00:01:32 #4685 [verbose] > │ (System.Convert.ToInt32(v270)) │
00:01:32 #4686 [verbose] > │ let v272 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4687 [verbose] > │ while method5(v270, v272) do │
00:01:32 #4688 [verbose] > │ let v274 : uint64 = v272.l0 │
00:01:32 #4689 [verbose] > │ let v275 : string = v269.[int v274] │
00:01:32 #4690 [verbose] > │ let v276 : int64 = System.Convert.ToInt64 v275.Length │
00:01:32 #4691 [verbose] > │ v271.[int v274] <- v276 │
00:01:32 #4692 [verbose] > │ let v277 : uint64 = v274 + 1UL │
00:01:32 #4693 [verbose] > │ v272.l0 <- v277 │
00:01:32 #4694 [verbose] > │ () │
00:01:32 #4695 [verbose] > │ let v278 : ((int64 []) -> (int64 [])) = Array.sortDescending │
00:01:32 #4696 [verbose] > │ let v279 : (int64 []) = v278 v271 │
00:01:32 #4697 [verbose] > │ let v280 : (int32 -> ((int64 []) -> int64 option)) = Array.tryItem │
00:01:32 #4698 [verbose] > │ let v281 : ((int64 []) -> int64 option) = v280 0 │
00:01:32 #4699 [verbose] > │ let v282 : int64 option = v281 v279 │
00:01:32 #4700 [verbose] > │ let v283 : (int64 -> US2) = method27() │
00:01:32 #4701 [verbose] > │ let v284 : US2 = US2_1 │
00:01:32 #4702 [verbose] > │ let v285 : US2 = v282 |> Option.map v283 |> Option.defaultValue v284 │
00:01:32 #4703 [verbose] > │ let v288 : int64 = │
00:01:32 #4704 [verbose] > │ match v285 with │
00:01:32 #4705 [verbose] > │ | US2_1 -> (* None *) │
00:01:32 #4706 [verbose] > │ 0L │
00:01:32 #4707 [verbose] > │ | US2_0(v286) -> (* Some *) │
00:01:32 #4708 [verbose] > │ v286 │
00:01:32 #4709 [verbose] > │ v265.[int v268] <- v288 │
00:01:32 #4710 [verbose] > │ let v289 : uint64 = v268 + 1UL │
00:01:32 #4711 [verbose] > │ v266.l0 <- v289 │
00:01:32 #4712 [verbose] > │ () │
00:01:32 #4713 [verbose] > │ let v290 : uint64 = System.Convert.ToUInt64 v265.Length │
00:01:32 #4714 [verbose] > │ let v291 : UH5 = UH5_0 │
00:01:32 #4715 [verbose] > │ let v292 : Mut3 = {l0 = 0UL; l1 = v291; l2 = 0} : Mut3 │
00:01:32 #4716 [verbose] > │ while method28(v290, v292) do │
00:01:32 #4717 [verbose] > │ let v294 : uint64 = v292.l0 │
00:01:32 #4718 [verbose] > │ let struct (v295 : UH5, v296 : int32) = v292.l1, v292.l2 │
00:01:32 #4719 [verbose] > │ let v297 : int64 = v265.[int v294] │
00:01:32 #4720 [verbose] > │ let v298 : int32 = v296 + 1 │
00:01:32 #4721 [verbose] > │ let v299 : uint64 = v294 + 1UL │
00:01:32 #4722 [verbose] > │ let v300 : UH5 = UH5_1(v296, v297, v295) │
00:01:32 #4723 [verbose] > │ v292.l0 <- v299 │
00:01:32 #4724 [verbose] > │ v292.l1 <- v300 │
00:01:32 #4725 [verbose] > │ v292.l2 <- v298 │
00:01:32 #4726 [verbose] > │ () │
00:01:32 #4727 [verbose] > │ let struct (v301 : UH5, v302 : int32) = v292.l1, v292.l2 │
00:01:32 #4728 [verbose] > │ let v303 : UH5 = UH5_0 │
00:01:32 #4729 [verbose] > │ let v304 : UH5 = method29(v301, v303) │
00:01:32 #4730 [verbose] > │ let v305 : (struct (int32 * int64) []) = method30(v304) │
00:01:32 #4731 [verbose] > │ let v306 : Map<int32, int64> = v305 |> Array.map (fun (struct (a, b)) -> │
00:01:32 #4732 [verbose] > │ a, b) |> Map.ofArray │
00:01:32 #4733 [verbose] > │ let v307 : (struct ((string []) * US1) []) = Array.zeroCreate<struct │
00:01:32 #4734 [verbose] > │ ((string []) * US1)> (System.Convert.ToInt32(v253)) │
00:01:32 #4735 [verbose] > │ let v308 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4736 [verbose] > │ while method5(v253, v308) do │
00:01:32 #4737 [verbose] > │ let v310 : uint64 = v308.l0 │
00:01:32 #4738 [verbose] > │ let struct (v311 : UH2, v312 : US1) = v240.[int v310] │
00:01:32 #4739 [verbose] > │ let v313 : UH6 = UH6_0 │
00:01:32 #4740 [verbose] > │ let v314 : int32 = 0 │
00:01:32 #4741 [verbose] > │ let struct (v315 : UH6, v316 : int32) = method33(v311, v313, v314) │
00:01:32 #4742 [verbose] > │ let v317 : UH6 = UH6_0 │
00:01:32 #4743 [verbose] > │ let v318 : UH6 = method34(v315, v317) │
00:01:32 #4744 [verbose] > │ let v319 : UH2 = UH2_0 │
00:01:32 #4745 [verbose] > │ let v320 : UH2 = method35(v306, v318, v319) │
00:01:32 #4746 [verbose] > │ let v321 : (string []) = method36(v320) │
00:01:32 #4747 [verbose] > │ v307.[int v310] <- struct (v321, v312) │
00:01:32 #4748 [verbose] > │ let v322 : uint64 = v310 + 1UL │
00:01:32 #4749 [verbose] > │ v308.l0 <- v322 │
00:01:32 #4750 [verbose] > │ () │
00:01:32 #4751 [verbose] > │ System.Console.WriteLine v27 │
00:01:32 #4752 [verbose] > │ let v323 : uint64 = System.Convert.ToUInt64 v307.Length │
00:01:32 #4753 [verbose] > │ let v324 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4754 [verbose] > │ while method5(v323, v324) do │
00:01:32 #4755 [verbose] > │ let v326 : uint64 = v324.l0 │
00:01:32 #4756 [verbose] > │ let struct (v327 : (string []), v328 : US1) = v307.[int v326] │
00:01:32 #4757 [verbose] > │ match v328 with │
00:01:32 #4758 [verbose] > │ | US1_1 -> (* None *) │
00:01:32 #4759 [verbose] > │ let v331 : unit option = None │
00:01:32 #4760 [verbose] > │ let mutable _v331 = v331 │
00:01:32 #4761 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:32 #4762 [verbose] > │ () │
00:01:32 #4763 [verbose] > │ #endif │
00:01:32 #4764 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:32 #4765 [verbose] > │ () │
00:01:32 #4766 [verbose] > │ #endif │
00:01:32 #4767 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:32 #4768 [verbose] > │ () │
00:01:32 #4769 [verbose] > │ #endif │
00:01:32 #4770 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:32 #4771 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:32 #4772 [verbose] > │ System.Console.ResetColor () │
00:01:32 #4773 [verbose] > │ () │
00:01:32 #4774 [verbose] > │ #endif │
00:01:32 #4775 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:32 #4776 [verbose] > │ () │
00:01:32 #4777 [verbose] > │ #endif │
00:01:32 #4778 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:32 #4779 [verbose] > │ FABLE_COMPILER_DART │
00:01:32 #4780 [verbose] > │ Unchecked.defaultof<unit> │
00:01:32 #4781 [verbose] > │ #endif │
00:01:32 #4782 [verbose] > │ |> fun x -> _v331 <- Some x │
00:01:32 #4783 [verbose] > │ _v331.Value │
00:01:32 #4784 [verbose] > │ () │
00:01:32 #4785 [verbose] > │ | US1_0(v329) -> (* Some *) │
00:01:32 #4786 [verbose] > │ let v330 : unit option = None │
00:01:32 #4787 [verbose] > │ let mutable _v330 = v330 │
00:01:32 #4788 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:32 #4789 [verbose] > │ () │
00:01:32 #4790 [verbose] > │ #endif │
00:01:32 #4791 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:32 #4792 [verbose] > │ () │
00:01:32 #4793 [verbose] > │ #endif │
00:01:32 #4794 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:32 #4795 [verbose] > │ () │
00:01:32 #4796 [verbose] > │ #endif │
00:01:32 #4797 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:32 #4798 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:32 #4799 [verbose] > │ System.Console.ForegroundColor <- v329 │
00:01:32 #4800 [verbose] > │ () │
00:01:32 #4801 [verbose] > │ #endif │
00:01:32 #4802 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:32 #4803 [verbose] > │ () │
00:01:32 #4804 [verbose] > │ #endif │
00:01:32 #4805 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:32 #4806 [verbose] > │ FABLE_COMPILER_DART │
00:01:32 #4807 [verbose] > │ Unchecked.defaultof<unit> │
00:01:32 #4808 [verbose] > │ #endif │
00:01:32 #4809 [verbose] > │ |> fun x -> _v330 <- Some x │
00:01:32 #4810 [verbose] > │ _v330.Value │
00:01:32 #4811 [verbose] > │ () │
00:01:32 #4812 [verbose] > │ let v332 : string = "\t| " │
00:01:32 #4813 [verbose] > │ let v333 : string = System.String.Join (v332, v327) │
00:01:32 #4814 [verbose] > │ System.Console.WriteLine v333 │
00:01:32 #4815 [verbose] > │ let v334 : unit option = None │
00:01:32 #4816 [verbose] > │ let mutable _v334 = v334 │
00:01:32 #4817 [verbose] > │ #if FABLE_COMPILER_RUST && !WASM && !CONTRACT │
00:01:32 #4818 [verbose] > │ () │
00:01:32 #4819 [verbose] > │ #endif │
00:01:32 #4820 [verbose] > │ #if FABLE_COMPILER_RUST && WASM │
00:01:32 #4821 [verbose] > │ () │
00:01:32 #4822 [verbose] > │ #endif │
00:01:32 #4823 [verbose] > │ #if FABLE_COMPILER_RUST && CONTRACT │
00:01:32 #4824 [verbose] > │ () │
00:01:32 #4825 [verbose] > │ #endif │
00:01:32 #4826 [verbose] > │ #if !FABLE_COMPILER && !FABLE_COMPILER_RUST && │
00:01:32 #4827 [verbose] > │ !FABLE_COMPILER_TYPESCRIPT && !WASM && !CONTRACT │
00:01:32 #4828 [verbose] > │ System.Console.ResetColor () │
00:01:32 #4829 [verbose] > │ () │
00:01:32 #4830 [verbose] > │ #endif │
00:01:32 #4831 [verbose] > │ #if FABLE_COMPILER_TYPESCRIPT │
00:01:32 #4832 [verbose] > │ () │
00:01:32 #4833 [verbose] > │ #endif │
00:01:32 #4834 [verbose] > │ #if FABLE_COMPILER_PYTHON || FABLE_COMPILER_PHP || │
00:01:32 #4835 [verbose] > │ FABLE_COMPILER_DART │
00:01:32 #4836 [verbose] > │ Unchecked.defaultof<unit> │
00:01:32 #4837 [verbose] > │ #endif │
00:01:32 #4838 [verbose] > │ |> fun x -> _v334 <- Some x │
00:01:32 #4839 [verbose] > │ _v334.Value │
00:01:32 #4840 [verbose] > │ let v335 : uint64 = v326 + 1UL │
00:01:32 #4841 [verbose] > │ v324.l0 <- v335 │
00:01:32 #4842 [verbose] > │ () │
00:01:32 #4843 [verbose] > │ let v336 : ((float []) []) = Array.zeroCreate<(float [])> │
00:01:32 #4844 [verbose] > │ (System.Convert.ToInt32(v163)) │
00:01:32 #4845 [verbose] > │ let v337 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4846 [verbose] > │ while method5(v163, v337) do │
00:01:32 #4847 [verbose] > │ let v339 : uint64 = v337.l0 │
00:01:32 #4848 [verbose] > │ let struct (v340 : string, v341 : string, v342 : string, v343 : │
00:01:32 #4849 [verbose] > │ (int64 [])) = v75.[int v339] │
00:01:32 #4850 [verbose] > │ let v344 : (int64 -> float) = float │
00:01:32 #4851 [verbose] > │ let v345 : uint64 = System.Convert.ToUInt64 v343.Length │
00:01:32 #4852 [verbose] > │ let v346 : (float []) = Array.zeroCreate<float> │
00:01:32 #4853 [verbose] > │ (System.Convert.ToInt32(v345)) │
00:01:32 #4854 [verbose] > │ let v347 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4855 [verbose] > │ while method5(v345, v347) do │
00:01:32 #4856 [verbose] > │ let v349 : uint64 = v347.l0 │
00:01:32 #4857 [verbose] > │ let v350 : int64 = v343.[int v349] │
00:01:32 #4858 [verbose] > │ let v351 : float = v344 v350 │
00:01:32 #4859 [verbose] > │ v346.[int v349] <- v351 │
00:01:32 #4860 [verbose] > │ let v352 : uint64 = v349 + 1UL │
00:01:32 #4861 [verbose] > │ v347.l0 <- v352 │
00:01:32 #4862 [verbose] > │ () │
00:01:32 #4863 [verbose] > │ v336.[int v339] <- v346 │
00:01:32 #4864 [verbose] > │ let v353 : uint64 = v339 + 1UL │
00:01:32 #4865 [verbose] > │ v337.l0 <- v353 │
00:01:32 #4866 [verbose] > │ () │
00:01:32 #4867 [verbose] > │ let v354 : (((float []) []) -> ((float []) [])) = Array.transpose │
00:01:32 #4868 [verbose] > │ let v355 : ((float []) []) = v354 v336 │
00:01:32 #4869 [verbose] > │ let v356 : uint64 = System.Convert.ToUInt64 v355.Length │
00:01:32 #4870 [verbose] > │ let v357 : (float []) = Array.zeroCreate<float> │
00:01:32 #4871 [verbose] > │ (System.Convert.ToInt32(v356)) │
00:01:32 #4872 [verbose] > │ let v358 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4873 [verbose] > │ while method5(v356, v358) do │
00:01:32 #4874 [verbose] > │ let v360 : uint64 = v358.l0 │
00:01:32 #4875 [verbose] > │ let v361 : (float []) = v355.[int v360] │
00:01:32 #4876 [verbose] > │ let v362 : ((float []) -> float) = Array.average │
00:01:32 #4877 [verbose] > │ let v363 : float = v362 v361 │
00:01:32 #4878 [verbose] > │ v357.[int v360] <- v363 │
00:01:32 #4879 [verbose] > │ let v364 : uint64 = v360 + 1UL │
00:01:32 #4880 [verbose] > │ v358.l0 <- v364 │
00:01:32 #4881 [verbose] > │ () │
00:01:32 #4882 [verbose] > │ let v365 : (float -> int64) = int64 │
00:01:32 #4883 [verbose] > │ let v366 : uint64 = System.Convert.ToUInt64 v357.Length │
00:01:32 #4884 [verbose] > │ let v367 : (int64 []) = Array.zeroCreate<int64> │
00:01:32 #4885 [verbose] > │ (System.Convert.ToInt32(v366)) │
00:01:32 #4886 [verbose] > │ let v368 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4887 [verbose] > │ while method5(v366, v368) do │
00:01:32 #4888 [verbose] > │ let v370 : uint64 = v368.l0 │
00:01:32 #4889 [verbose] > │ let v371 : float = v357.[int v370] │
00:01:32 #4890 [verbose] > │ let v372 : int64 = v365 v371 │
00:01:32 #4891 [verbose] > │ v367.[int v370] <- v372 │
00:01:32 #4892 [verbose] > │ let v373 : uint64 = v370 + 1UL │
00:01:32 #4893 [verbose] > │ v368.l0 <- v373 │
00:01:32 #4894 [verbose] > │ () │
00:01:32 #4895 [verbose] > │ let v374 : uint64 = System.Convert.ToUInt64 v367.Length │
00:01:32 #4896 [verbose] > │ let v375 : UH5 = UH5_0 │
00:01:32 #4897 [verbose] > │ let v376 : Mut3 = {l0 = 0UL; l1 = v375; l2 = 0} : Mut3 │
00:01:32 #4898 [verbose] > │ while method28(v374, v376) do │
00:01:32 #4899 [verbose] > │ let v378 : uint64 = v376.l0 │
00:01:32 #4900 [verbose] > │ let struct (v379 : UH5, v380 : int32) = v376.l1, v376.l2 │
00:01:32 #4901 [verbose] > │ let v381 : int64 = v367.[int v378] │
00:01:32 #4902 [verbose] > │ let v382 : int32 = v380 + 1 │
00:01:32 #4903 [verbose] > │ let v383 : uint64 = v378 + 1UL │
00:01:32 #4904 [verbose] > │ let v384 : UH5 = UH5_1(v380, v381, v379) │
00:01:32 #4905 [verbose] > │ v376.l0 <- v383 │
00:01:32 #4906 [verbose] > │ v376.l1 <- v384 │
00:01:32 #4907 [verbose] > │ v376.l2 <- v382 │
00:01:32 #4908 [verbose] > │ () │
00:01:32 #4909 [verbose] > │ let struct (v385 : UH5, v386 : int32) = v376.l1, v376.l2 │
00:01:32 #4910 [verbose] > │ let v387 : UH5 = UH5_0 │
00:01:32 #4911 [verbose] > │ let v388 : UH5 = method29(v385, v387) │
00:01:32 #4912 [verbose] > │ let v389 : (struct (int32 * int64) []) = method39(v388) │
00:01:32 #4913 [verbose] > │ System.Console.WriteLine v27 │
00:01:32 #4914 [verbose] > │ let v390 : string = "Average Ranking " │
00:01:32 #4915 [verbose] > │ System.Console.WriteLine v390 │
00:01:32 #4916 [verbose] > │ let v391 : ((struct (int32 * int64) -> int64) -> ((struct (int32 * │
00:01:32 #4917 [verbose] > │ int64) []) -> (struct (int32 * int64) []))) = Array.sortBy │
00:01:32 #4918 [verbose] > │ let v392 : (struct (int32 * int64) -> int64) = closure8() │
00:01:32 #4919 [verbose] > │ let v393 : ((struct (int32 * int64) []) -> (struct (int32 * int64) [])) │
00:01:32 #4920 [verbose] > │ = v391 v392 │
00:01:32 #4921 [verbose] > │ let v394 : (struct (int32 * int64) []) = v393 v389 │
00:01:32 #4922 [verbose] > │ let v395 : uint64 = System.Convert.ToUInt64 v394.Length │
00:01:32 #4923 [verbose] > │ let v396 : Mut1 = {l0 = 0UL} : Mut1 │
00:01:32 #4924 [verbose] > │ while method5(v395, v396) do │
00:01:32 #4925 [verbose] > │ let v398 : uint64 = v396.l0 │
00:01:32 #4926 [verbose] > │ let struct (v399 : int32, v400 : int64) = v394.[int v398] │
00:01:32 #4927 [verbose] > │ let v401 : string = $"Test case %d{v399 + 1}. Average Time: %A{v400} │
00:01:32 #4928 [verbose] > │ " │
00:01:32 #4929 [verbose] > │ System.Console.WriteLine v401 │
00:01:32 #4930 [verbose] > │ let v402 : uint64 = v398 + 1UL │
00:01:32 #4931 [verbose] > │ v396.l0 <- v402 │
00:01:32 #4932 [verbose] > │ () │
00:01:32 #4933 [verbose] > │ () │
00:01:32 #4934 [verbose] > │ method0() │
00:01:32 #4935 [verbose] > │ │
00:01:32 #4936 [verbose] > │ │
00:01:32 #4937 [verbose] > │ │
00:01:32 #4938 [verbose] > │ Test: v25 │
00:01:32 #4939 [verbose] > │ │
00:01:32 #4940 [verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 6, 7) │
00:01:32 #4941 [verbose] > │ Test case 1. semi_open_1. Time: 564 │
00:01:32 #4942 [verbose] > │ Test case 2. closed_1. Time: 535 │
00:01:32 #4943 [verbose] > │ Test case 3. semi_open_2. Time: 541 │
00:01:32 #4944 [verbose] > │ Test case 4. closed_2. Time: 548 │
00:01:32 #4945 [verbose] > │ │
00:01:32 #4946 [verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 1, 7) │
00:01:32 #4947 [verbose] > │ Test case 1. semi_open_1. Time: 513 │
00:01:32 #4948 [verbose] > │ Test case 2. closed_1. Time: 453 │
00:01:32 #4949 [verbose] > │ Test case 3. semi_open_2. Time: 468 │
00:01:32 #4950 [verbose] > │ Test case 4. closed_2. Time: 454 │
00:01:32 #4951 [verbose] > │ │
00:01:32 #4952 [verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 11, 7) │
00:01:32 #4953 [verbose] > │ Test case 1. semi_open_1. Time: 461 │
00:01:32 #4954 [verbose] > │ Test case 2. closed_1. Time: 437 │
00:01:32 #4955 [verbose] > │ Test case 3. semi_open_2. Time: 443 │
00:01:32 #4956 [verbose] > │ Test case 4. closed_2. Time: 449 │
00:01:32 #4957 [verbose] > │ │
00:01:32 #4958 [verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 12, 7) │
00:01:32 #4959 [verbose] > │ Test case 1. semi_open_1. Time: 661 │
00:01:32 #4960 [verbose] > │ Test case 2. closed_1. Time: 450 │
00:01:32 #4961 [verbose] > │ Test case 3. semi_open_2. Time: 457 │
00:01:32 #4962 [verbose] > │ Test case 4. closed_2. Time: 464 │
00:01:32 #4963 [verbose] > │ │
00:01:32 #4964 [verbose] > │ Solution: struct ([|1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; │
00:01:32 #4965 [verbose] > │ 17; 18; 19; 20; │
00:01:32 #4966 [verbose] > │ 21; 22; 23; 24; 25; 26; 27; 28; 29; 30; 31; 32; 33; 34; 35; 36; │
00:01:32 #4967 [verbose] > │ 37; 38; │
00:01:32 #4968 [verbose] > │ 39; 40; 41; 42; 43; 44; 45; 46; 47; 48; 49; 50; 51; 52; 53; 54; │
00:01:32 #4969 [verbose] > │ 55; 56; │
00:01:32 #4970 [verbose] > │ 57; 58; 59; 60; 61; 62; 63; 64; 65; 66; 67; 68; 69; 70; 71; 72; │
00:01:32 #4971 [verbose] > │ 73; 74; │
00:01:32 #4972 [verbose] > │ 75; 76; 77; 78; 79; 80; 81; 82; 83; 84; 85; 86; 87; 88; 89; 90; │
00:01:32 #4973 [verbose] > │ 91; 92; │
00:01:32 #4974 [verbose] > │ 93; 94; 95; 96; 97; 98; 99; 100|], 60, 100) │
00:01:32 #4975 [verbose] > │ Test case 1. semi_open_1. Time: 483 │
00:01:32 #4976 [verbose] > │ Test case 2. closed_1. Time: 479 │
00:01:32 #4977 [verbose] > │ Test case 3. semi_open_2. Time: 471 │
00:01:32 #4978 [verbose] > │ Test case 4. closed_2. Time: 489 │
00:01:32 #4979 [verbose] > │ │
00:01:32 #4980 [verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 6, 7) │
00:01:32 #4981 [verbose] > │ Test case 1. semi_open_1. Time: 453 │
00:01:32 #4982 [verbose] > │ Test case 2. closed_1. Time: 448 │
00:01:32 #4983 [verbose] > │ Test case 3. semi_open_2. Time: 457 │
00:01:32 #4984 [verbose] > │ Test case 4. closed_2. Time: 434 │
00:01:32 #4985 [verbose] > │ │
00:01:32 #4986 [verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 1, 7) │
00:01:32 #4987 [verbose] > │ Test case 1. semi_open_1. Time: 447 │
00:01:32 #4988 [verbose] > │ Test case 2. closed_1. Time: 455 │
00:01:32 #4989 [verbose] > │ Test case 3. semi_open_2. Time: 437 │
00:01:32 #4990 [verbose] > │ Test case 4. closed_2. Time: 455 │
00:01:32 #4991 [verbose] > │ │
00:01:32 #4992 [verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 11, 7) │
00:01:32 #4993 [verbose] > │ Test case 1. semi_open_1. Time: 441 │
00:01:32 #4994 [verbose] > │ Test case 2. closed_1. Time: 442 │
00:01:32 #4995 [verbose] > │ Test case 3. semi_open_2. Time: 465 │
00:01:32 #4996 [verbose] > │ Test case 4. closed_2. Time: 457 │
00:01:32 #4997 [verbose] > │ │
00:01:32 #4998 [verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 12, 7) │
00:01:32 #4999 [verbose] > │ Test case 1. semi_open_1. Time: 469 │
00:01:32 #5000 [verbose] > │ Test case 2. closed_1. Time: 445 │
00:01:32 #5001 [verbose] > │ Test case 3. semi_open_2. Time: 448 │
00:01:32 #5002 [verbose] > │ Test case 4. closed_2. Time: 462 │
00:01:32 #5003 [verbose] > │ │
00:01:32 #5004 [verbose] > │ Solution: struct ([|1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; │
00:01:32 #5005 [verbose] > │ 17; 18; 19; 20; │
00:01:32 #5006 [verbose] > │ 21; 22; 23; 24; 25; 26; 27; 28; 29; 30; 31; 32; 33; 34; 35; 36; │
00:01:32 #5007 [verbose] > │ 37; 38; │
00:01:32 #5008 [verbose] > │ 39; 40; 41; 42; 43; 44; 45; 46; 47; 48; 49; 50; 51; 52; 53; 54; │
00:01:32 #5009 [verbose] > │ 55; 56; │
00:01:32 #5010 [verbose] > │ 57; 58; 59; 60; 61; 62; 63; 64; 65; 66; 67; 68; 69; 70; 71; 72; │
00:01:32 #5011 [verbose] > │ 73; 74; │
00:01:32 #5012 [verbose] > │ 75; 76; 77; 78; 79; 80; 81; 82; 83; 84; 85; 86; 87; 88; 89; 90; │
00:01:32 #5013 [verbose] > │ 91; 92; │
00:01:32 #5014 [verbose] > │ 93; 94; 95; 96; 97; 98; 99; 100|], 60, 100) │
00:01:32 #5015 [verbose] > │ Test case 1. semi_open_1. Time: 469 │
00:01:32 #5016 [verbose] > │ Test case 2. closed_1. Time: 478 │
00:01:32 #5017 [verbose] > │ Test case 3. semi_open_2. Time: 487 │
00:01:32 #5018 [verbose] > │ Test case 4. closed_2. Time: 460 │
00:01:32 #5019 [verbose] > │ │
00:01:32 #5020 [verbose] > │ Input │
00:01:32 #5021 [verbose] > │ │
00:01:32 #5022 [verbose] > │ │
00:01:32 #5023 [verbose] > │ │
00:01:32 #5024 [verbose] > │ | Expected | Result | Best │
00:01:32 #5025 [verbose] > │ --- │
00:01:32 #5026 [verbose] > │ │
00:01:32 #5027 [verbose] > │ │
00:01:32 #5028 [verbose] > │ │
00:01:32 #5029 [verbose] > │ | --- | --- | --- │
00:01:32 #5030 [verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 6, 7) │
00:01:32 #5031 [verbose] > │ │
00:01:32 #5032 [verbose] > │ │
00:01:32 #5033 [verbose] > │ │
00:01:32 #5034 [verbose] > │ | US0_0 3 | US0_0 3 | struct (2L, 535L) │
00:01:32 #5035 [verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 1, 7) │
00:01:32 #5036 [verbose] > │ │
00:01:32 #5037 [verbose] > │ │
00:01:32 #5038 [verbose] > │ │
00:01:32 #5039 [verbose] > │ | US0_0 0 | US0_0 0 | struct (2L, 453L) │
00:01:32 #5040 [verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 11, 7) │
00:01:32 #5041 [verbose] > │ │
00:01:32 #5042 [verbose] > │ │
00:01:32 #5043 [verbose] > │ │
00:01:32 #5044 [verbose] > │ | US0_0 6 | US0_0 6 | struct (2L, 437L) │
00:01:32 #5045 [verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 12, 7) │
00:01:32 #5046 [verbose] > │ │
00:01:32 #5047 [verbose] > │ │
00:01:32 #5048 [verbose] > │ │
00:01:32 #5049 [verbose] > │ | US0_1 | US0_1 | struct (2L, 450L) │
00:01:32 #5050 [verbose] > │ struct ([|1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; │
00:01:32 #5051 [verbose] > │ 20; │
00:01:32 #5052 [verbose] > │ 21; 22; 23; 24; 25; 26; 27; 28; 29; 30; 31; 32; 33; 34; 35; 36; │
00:01:32 #5053 [verbose] > │ 37; 38; │
00:01:32 #5054 [verbose] > │ 39; 40; 41; 42; 43; 44; 45; 46; 47; 48; 49; 50; 51; 52; 53; 54; │
00:01:32 #5055 [verbose] > │ 55; 56; │
00:01:32 #5056 [verbose] > │ 57; 58; 59; 60; 61; 62; 63; 64; 65; 66; 67; 68; 69; 70; 71; 72; │
00:01:32 #5057 [verbose] > │ 73; 74; │
00:01:32 #5058 [verbose] > │ 75; 76; 77; 78; 79; 80; 81; 82; 83; 84; 85; 86; 87; 88; 89; 90; │
00:01:32 #5059 [verbose] > │ 91; 92; │
00:01:32 #5060 [verbose] > │ 93; 94; 95; 96; 97; 98; 99; 100|], 60, 100) | US0_0 59 | US0_0 59 | │
00:01:32 #5061 [verbose] > │ struct (3L, 471L) │
00:01:32 #5062 [verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 6, 7) │
00:01:32 #5063 [verbose] > │ │
00:01:32 #5064 [verbose] > │ │
00:01:32 #5065 [verbose] > │ │
00:01:32 #5066 [verbose] > │ | US0_0 3 | US0_0 3 | struct (4L, 434L) │
00:01:32 #5067 [verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 1, 7) │
00:01:32 #5068 [verbose] > │ │
00:01:32 #5069 [verbose] > │ │
00:01:32 #5070 [verbose] > │ │
00:01:32 #5071 [verbose] > │ | US0_0 0 | US0_0 0 | struct (3L, 437L) │
00:01:32 #5072 [verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 11, 7) │
00:01:32 #5073 [verbose] > │ │
00:01:32 #5074 [verbose] > │ │
00:01:32 #5075 [verbose] > │ │
00:01:32 #5076 [verbose] > │ | US0_0 6 | US0_0 6 | struct (1L, 441L) │
00:01:32 #5077 [verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 12, 7) │
00:01:32 #5078 [verbose] > │ │
00:01:32 #5079 [verbose] > │ │
00:01:32 #5080 [verbose] > │ │
00:01:32 #5081 [verbose] > │ | US0_1 | US0_1 | struct (2L, 445L) │
00:01:32 #5082 [verbose] > │ struct ([|1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; │
00:01:32 #5083 [verbose] > │ 20; │
00:01:32 #5084 [verbose] > │ 21; 22; 23; 24; 25; 26; 27; 28; 29; 30; 31; 32; 33; 34; 35; 36; │
00:01:32 #5085 [verbose] > │ 37; 38; │
00:01:32 #5086 [verbose] > │ 39; 40; 41; 42; 43; 44; 45; 46; 47; 48; 49; 50; 51; 52; 53; 54; │
00:01:32 #5087 [verbose] > │ 55; 56; │
00:01:32 #5088 [verbose] > │ 57; 58; 59; 60; 61; 62; 63; 64; 65; 66; 67; 68; 69; 70; 71; 72; │
00:01:32 #5089 [verbose] > │ 73; 74; │
00:01:32 #5090 [verbose] > │ 75; 76; 77; 78; 79; 80; 81; 82; 83; 84; 85; 86; 87; 88; 89; 90; │
00:01:32 #5091 [verbose] > │ 91; 92; │
00:01:32 #5092 [verbose] > │ 93; 94; 95; 96; 97; 98; 99; 100|], 60, 100) | US0_0 59 | US0_0 59 | │
00:01:32 #5093 [verbose] > │ struct (4L, 460L) │
00:01:32 #5094 [verbose] > │ │
00:01:32 #5095 [verbose] > │ Average Ranking │
00:01:32 #5096 [verbose] > │ Test case 2. Average Time: 462L │
00:01:32 #5097 [verbose] > │ Test case 3. Average Time: 467L │
00:01:32 #5098 [verbose] > │ Test case 4. Average Time: 467L │
00:01:32 #5099 [verbose] > │ Test case 1. Average Time: 496L │
00:01:32 #5100 [verbose] > │ │
00:01:32 #5101 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:32 #5102 [verbose] >
00:01:32 #5103 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:32 #5104 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:32 #5105 [verbose] > │ ## returnLettersWithOddCountTests │
00:01:32 #5106 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:32 #5107 [verbose] >
00:01:32 #5108 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:32 #5109 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:32 #5110 [verbose] > │ Test: ReturnLettersWithOddCount │
00:01:32 #5111 [verbose] > │ │
00:01:32 #5112 [verbose] > │ Solution: 1 │
00:01:32 #5113 [verbose] > │ Test case 1. A. Time: 645L │
00:01:32 #5114 [verbose] > │ │
00:01:32 #5115 [verbose] > │ Solution: 2 │
00:01:32 #5116 [verbose] > │ Test case 1. A. Time: 663L │
00:01:32 #5117 [verbose] > │ │
00:01:32 #5118 [verbose] > │ Solution: 3 │
00:01:32 #5119 [verbose] > │ Test case 1. A. Time: 680L │
00:01:32 #5120 [verbose] > │ │
00:01:32 #5121 [verbose] > │ Solution: 9 │
00:01:32 #5122 [verbose] > │ Test case 1. A. Time: 730L │
00:01:32 #5123 [verbose] > │ │
00:01:32 #5124 [verbose] > │ Solution: 10 │
00:01:32 #5125 [verbose] > │ Test case 1. A. Time: 815L │
00:01:32 #5126 [verbose] > │ │
00:01:32 #5127 [verbose] > │ Input | Expected | Result | Best │
00:01:32 #5128 [verbose] > │ --- | --- | --- | --- │
00:01:32 #5129 [verbose] > │ 1 | a | a | (1, 645) │
00:01:32 #5130 [verbose] > │ 2 | ba | ba | (1, 663) │
00:01:32 #5131 [verbose] > │ 3 | aaa | aaa | (1, 680) │
00:01:32 #5132 [verbose] > │ 9 | aaaaaaaaa | aaaaaaaaa | (1, 730) │
00:01:32 #5133 [verbose] > │ 10 | baaaaaaaaa | baaaaaaaaa | (1, 815) │
00:01:32 #5134 [verbose] > │ │
00:01:32 #5135 [verbose] > │ Averages │
00:01:32 #5136 [verbose] > │ Test case 1. Average Time: 706L │
00:01:32 #5137 [verbose] > │ │
00:01:32 #5138 [verbose] > │ Ranking │
00:01:32 #5139 [verbose] > │ Test case 1. Average Time: 706L │
00:01:32 #5140 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:32 #5141 [verbose] >
00:01:32 #5142 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:32 #5143 [verbose] > //// test
00:01:32 #5144 [verbose] >
00:01:32 #5145 [verbose] > let solutions = [[
00:01:32 #5146 [verbose] > "A",
00:01:32 #5147 [verbose] > fun n ->
00:01:32 #5148 [verbose] > let mutable _builder = StringBuilder (new string('a', n))
00:01:32 #5149 [verbose] > if n % 2 = 0 then
00:01:32 #5150 [verbose] > _builder.[[0]] <- 'b'
00:01:32 #5151 [verbose] >
00:01:32 #5152 [verbose] > _builder.ToString ()
00:01:32 #5153 [verbose] > ]]
00:01:32 #5154 [verbose] > let testCases = seq {
00:01:32 #5155 [verbose] > 1, "a"
00:01:32 #5156 [verbose] > 2, "ba"
00:01:32 #5157 [verbose] > 3, "aaa"
00:01:32 #5158 [verbose] > 9, "aaaaaaaaa"
00:01:32 #5159 [verbose] > 10, "baaaaaaaaa"
00:01:32 #5160 [verbose] > }
00:01:32 #5161 [verbose] > let rec returnLettersWithOddCountTests =
00:01:32 #5162 [verbose] > runAll (nameof returnLettersWithOddCountTests) _count solutions testCases
00:01:32 #5163 [verbose] > returnLettersWithOddCountTests
00:01:32 #5164 [verbose] > |> sortResultList
00:01:33 #5165 [verbose] >
00:01:33 #5166 [verbose] > ╭─[ 778.01ms - stdout ]────────────────────────────────────────────────────────╮
00:01:33 #5167 [verbose] > │ │
00:01:33 #5168 [verbose] > │ │
00:01:33 #5169 [verbose] > │ Test: returnLettersWithOddCountTests │
00:01:33 #5170 [verbose] > │ │
00:01:33 #5171 [verbose] > │ Solution: 1 │
00:01:33 #5172 [verbose] > │ Test case 1. A. Time: 0L │
00:01:33 #5173 [verbose] > │ │
00:01:33 #5174 [verbose] > │ Solution: 2 │
00:01:33 #5175 [verbose] > │ Test case 1. A. Time: 0L │
00:01:33 #5176 [verbose] > │ │
00:01:33 #5177 [verbose] > │ Solution: 3 │
00:01:33 #5178 [verbose] > │ Test case 1. A. Time: 0L │
00:01:33 #5179 [verbose] > │ │
00:01:33 #5180 [verbose] > │ Solution: 9 │
00:01:33 #5181 [verbose] > │ Test case 1. A. Time: 0L │
00:01:33 #5182 [verbose] > │ │
00:01:33 #5183 [verbose] > │ Solution: 10 │
00:01:33 #5184 [verbose] > │ Test case 1. A. Time: 1L │
00:01:33 #5185 [verbose] > │ │
00:01:33 #5186 [verbose] > │ Input | Expected | Result | Best │
00:01:33 #5187 [verbose] > │ --- | --- | --- | --- │
00:01:33 #5188 [verbose] > │ 1 | a | a | (1, 0) │
00:01:33 #5189 [verbose] > │ 2 | ba | ba | (1, 0) │
00:01:33 #5190 [verbose] > │ 3 | aaa | aaa | (1, 0) │
00:01:33 #5191 [verbose] > │ 9 | aaaaaaaaa | aaaaaaaaa | (1, 0) │
00:01:33 #5192 [verbose] > │ 10 | baaaaaaaaa | baaaaaaaaa | (1, 1) │
00:01:33 #5193 [verbose] > │ │
00:01:33 #5194 [verbose] > │ Average Ranking │
00:01:33 #5195 [verbose] > │ Test case 1. Average Time: 0L │
00:01:33 #5196 [verbose] > │ │
00:01:33 #5197 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:33 #5198 [verbose] >
00:01:33 #5199 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:33 #5200 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:33 #5201 [verbose] > │ ## hasAnyPairCloseToEachotherTests │
00:01:33 #5202 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:33 #5203 [verbose] >
00:01:33 #5204 [verbose] > ── markdown ────────────────────────────────────────────────────────────────────
00:01:33 #5205 [verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮
00:01:33 #5206 [verbose] > │ Test: HasAnyPairCloseToEachother │
00:01:33 #5207 [verbose] > │ │
00:01:33 #5208 [verbose] > │ Solution: 0 │
00:01:33 #5209 [verbose] > │ Test case 1. A. Time: 137L │
00:01:33 #5210 [verbose] > │ │
00:01:33 #5211 [verbose] > │ Solution: 1,2 │
00:01:33 #5212 [verbose] > │ Test case 1. A. Time: 186L │
00:01:33 #5213 [verbose] > │ │
00:01:33 #5214 [verbose] > │ Solution: 3,5 │
00:01:33 #5215 [verbose] > │ Test case 1. A. Time: 206L │
00:01:33 #5216 [verbose] > │ │
00:01:33 #5217 [verbose] > │ Solution: 3,4,6 │
00:01:33 #5218 [verbose] > │ Test case 1. A. Time: 149L │
00:01:33 #5219 [verbose] > │ │
00:01:33 #5220 [verbose] > │ Solution: 2,4,6 │
00:01:33 #5221 [verbose] > │ Test case 1. A. Time: 150L │
00:01:33 #5222 [verbose] > │ │
00:01:33 #5223 [verbose] > │ Input | Expected | Result | Best │
00:01:33 #5224 [verbose] > │ --- | --- | --- | --- │
00:01:33 #5225 [verbose] > │ 0 | False | False | (1, 137) │
00:01:33 #5226 [verbose] > │ 1,2 | True | True | (1, 186) │
00:01:33 #5227 [verbose] > │ 3,5 | False | False | (1, 206) │
00:01:33 #5228 [verbose] > │ 3,4,6 | True | True | (1, 149) │
00:01:33 #5229 [verbose] > │ 2,4,6 | False | False | (1, 150) │
00:01:33 #5230 [verbose] > │ │
00:01:33 #5231 [verbose] > │ Averages │
00:01:33 #5232 [verbose] > │ Test case 1. Average Time: 165L │
00:01:33 #5233 [verbose] > │ │
00:01:33 #5234 [verbose] > │ Ranking │
00:01:33 #5235 [verbose] > │ Test case 1. Average Time: 165L │
00:01:33 #5236 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:33 #5237 [verbose] >
00:01:33 #5238 [verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────
00:01:33 #5239 [verbose] > //// test
00:01:33 #5240 [verbose] >
00:01:33 #5241 [verbose] > let solutions = [[
00:01:33 #5242 [verbose] > "A",
00:01:33 #5243 [verbose] > fun (a: int[[]]) ->
00:01:33 #5244 [verbose] > let indices = System.Linq.Enumerable.Range(0, a.Length) |>
00:01:33 #5245 [verbose] > System.Linq.Enumerable.ToArray
00:01:33 #5246 [verbose] > System.Array.Sort (a, indices)
00:01:33 #5247 [verbose] >
00:01:33 #5248 [verbose] > indices
00:01:33 #5249 [verbose] > |> Array.take (a.Length - 1)
00:01:33 #5250 [verbose] > |> Array.exists (fun i -> a.[[i + 1]] - a.[[i]] = 1)
00:01:33 #5251 [verbose] > ]]
00:01:33 #5252 [verbose] > let testCases = seq {
00:01:33 #5253 [verbose] > [[| 0 |]], false
00:01:33 #5254 [verbose] > [[| 1; 2 |]], true
00:01:33 #5255 [verbose] > [[| 3; 5 |]], false
00:01:33 #5256 [verbose] > [[| 3; 4; 6 |]], true
00:01:33 #5257 [verbose] > [[| 2; 4; 6 |]], false
00:01:33 #5258 [verbose] > }
00:01:33 #5259 [verbose] > let rec hasAnyPairCloseToEachotherTests =
00:01:33 #5260 [verbose] > runAll (nameof hasAnyPairCloseToEachotherTests) _count solutions testCases
00:01:33 #5261 [verbose] > hasAnyPairCloseToEachotherTests
00:01:33 #5262 [verbose] > |> sortResultList
00:01:34 #5263 [verbose] >
00:01:34 #5264 [verbose] > ╭─[ 764.14ms - stdout ]────────────────────────────────────────────────────────╮
00:01:34 #5265 [verbose] > │ │
00:01:34 #5266 [verbose] > │ │
00:01:34 #5267 [verbose] > │ Test: hasAnyPairCloseToEachotherTests │
00:01:34 #5268 [verbose] > │ │
00:01:34 #5269 [verbose] > │ Solution: 0 │
00:01:34 #5270 [verbose] > │ Test case 1. A. Time: 2L │
00:01:34 #5271 [verbose] > │ │
00:01:34 #5272 [verbose] > │ Solution: 1,2 │
00:01:34 #5273 [verbose] > │ Test case 1. A. Time: 0L │
00:01:34 #5274 [verbose] > │ │
00:01:34 #5275 [verbose] > │ Solution: 3,5 │
00:01:34 #5276 [verbose] > │ Test case 1. A. Time: 0L │
00:01:34 #5277 [verbose] > │ │
00:01:34 #5278 [verbose] > │ Solution: 3,4,6 │
00:01:34 #5279 [verbose] > │ Test case 1. A. Time: 0L │
00:01:34 #5280 [verbose] > │ │
00:01:34 #5281 [verbose] > │ Solution: 2,4,6 │
00:01:34 #5282 [verbose] > │ Test case 1. A. Time: 0L │
00:01:34 #5283 [verbose] > │ │
00:01:34 #5284 [verbose] > │ Input | Expected | Result | Best │
00:01:34 #5285 [verbose] > │ --- | --- | --- | --- │
00:01:34 #5286 [verbose] > │ 0 | False | False | (1, 2) │
00:01:34 #5287 [verbose] > │ 1,2 | True | True | (1, 0) │
00:01:34 #5288 [verbose] > │ 3,5 | False | False | (1, 0) │
00:01:34 #5289 [verbose] > │ 3,4,6 | True | True | (1, 0) │
00:01:34 #5290 [verbose] > │ 2,4,6 | False | False | (1, 0) │
00:01:34 #5291 [verbose] > │ │
00:01:34 #5292 [verbose] > │ Average Ranking │
00:01:34 #5293 [verbose] > │ Test case 1. Average Time: 0L │
00:01:34 #5294 [verbose] > │ │
00:01:34 #5295 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:34 #5296 [verbose] >
00:01:34 #5297 [verbose] > ── spiral ──────────────────────────────────────────────────────────────────────
00:01:34 #5298 [verbose] > // // test
00:01:34 #5299 [verbose] >
00:01:34 #5300 [verbose] > ()
00:01:34 #5301 [verbose] > Building c:\home\git\polyglot\target\polyglot\spiral_eval\packages\8014057efde7e134b1cff739bd09ed6e4a1f298b31dc495e67550ecb034721ec\main.spi
00:01:34 #5302 [verbose] >
00:01:34 #5303 [verbose] > ╭─[ 268.69ms - stdout ]────────────────────────────────────────────────────────╮
00:01:34 #5304 [verbose] > │ let rec method0 () : unit = │
00:01:34 #5305 [verbose] > │ () │
00:01:34 #5306 [verbose] > │ method0() │
00:01:34 #5307 [verbose] > │ │
00:01:34 #5308 [verbose] > │ │
00:01:34 #5309 [verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯
00:01:36 #5310 [verbose] > [NbConvertApp] Converting notebook Perf.dib.ipynb to html
00:01:36 #5311 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
00:01:36 #5312 [verbose] > validate(nb)
00:01:37 #5313 [verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
00:01:37 #5314 [verbose] > return _pygments_highlight(
00:01:38 #5315 [verbose] > [NbConvertApp] Writing 567251 bytes to Perf.dib.html
00:01:38 #5316 [debug] executeAsync / exitCode: 0 / output.Length: 370144
00:01:38 #5317 [debug] main / executeCommand / exitCode: 0
00:01:40 #5318 [debug] runWithTimeoutChildAsync / timeout: 2000
00:00:00 #1 [debug] writeDibCode / output: Fs / path: Perf.dib
00:00:00 #2 [debug] parseDibCode / output: Fs / file: Perf.dib
In [ ]:
{ . "$ScriptDir/../apps/dir-tree-html/build.ps1" } | Invoke-Block
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ # DirTreeHtml (Polyglot) │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/fsharp/Notebooks.dib
#!import ../../lib/fsharp/Testing.dib
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A
spNetCore.Html.Abstractions.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.Formatting.dll"
open System
open System.IO
open System.Text
open Microsoft.DotNet.Interactive.Formatting
── fsharp - import ─────────────────────────────────────────────────────────────
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.FSharp.dll"
open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers
#r
"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D
otNet.Interactive.dll"
open type Microsoft.DotNet.Interactive.Kernel
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
Formatter.ListExpansionLimit <- 100
── fsharp - import ─────────────────────────────────────────────────────────────
#r @"../../../../../../../.nuget/packages/expecto/10.2.1/lib/net6.0/Expecto.dll"
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
type AssertExceptionFormatter (ex) =
member _.Text =
ex.ToString()
.Replace("32m", "<span style=\"color: green;\">")
.Replace("36m", "</span>")
.Replace("31m", "<span style=\"color: red;\">")
.Replace("\n", "<br/>\n")
Formatter.Register<AssertExceptionFormatter> ((fun (x :
AssertExceptionFormatter) -> x.Text), "text/html")
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __expect fn log expected actual =
if log then printfn $"{actual.ToDisplayString ()}"
try
"Testing.__expect" |> fn actual expected
with :? Expecto.AssertException as ex ->
AssertExceptionFormatter(ex).Display () |> ignore
failwith (ex.GetType().FullName)
let inline __contains log expected actual = __expect Expecto.Expect.contains log
expected actual
let inline _contains expected actual = __contains true expected actual
let inline __assertEqual log expected actual = __expect Expecto.Expect.equal log
expected actual
let inline _assertEqual expected actual = __assertEqual true expected actual
let inline __isGreaterThan log expected actual = __expect
Expecto.Expect.isGreaterThan log ex...
── fsharp - import ─────────────────────────────────────────────────────────────
//// test
let inline __isBetween log a b actual =
let inline isBetween actual (a, b) _ =
__isGreaterThanOrEqual log a actual
__isLessThanOrEqual log b actual
__expect isBetween log (a, b) actual
let inline _isBetween a b actual = __isBetween true a b actual
── fsharp ──────────────────────────────────────────────────────────────────────
#r
@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan
dard2.1/FSharp.Control.AsyncSeq.dll"
#r
@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.
0/System.Reactive.dll"
#r
@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/
netstandard2.0/System.Reactive.Linq.dll"
#r
@"../../../../../../../.nuget/packages/argu/6.2.2/lib/netstandard2.0/Argu.dll"
#r
@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li
b/net6.0/System.CommandLine.dll"
#r
@"../../../../../../../.nuget/packages/falco.markup/1.1.1/lib/netstandard2.0/Fal
co.Markup.dll"
── fsharp ──────────────────────────────────────────────────────────────────────
#!import ../../lib/spiral/common.fsx
#!import ../../lib/spiral/sm.fsx
#!import ../../lib/spiral/date_time.fsx
#!import ../../lib/spiral/file_system.fsx
#!import ../../lib/spiral/trace.fsx
#!import ../../lib/spiral/lib.fsx
#!import ../../lib/fsharp/Common.fs
#!import ../../lib/fsharp/CommonFSharp.fs
#!import ../../lib/fsharp/Async.fs
#!import ../../lib/fsharp/AsyncSeq.fs
#!import ../../lib/fsharp/Networking.fs
#!import ../../lib/fsharp/Runtime.fs
#!import ../../lib/fsharp/FileSystem.fs
── fsharp - import ─────────────────────────────────────────────────────────────
type [[<Struct>]] US0 =
| US0_0
| US0_1
and [[<Struct>]] US1 =
| US1_0 of f0_0 : US0
| US1_1
let rec closure0 () (v0 : (unit -> unit)) : System.IDisposable =
let v1 : System.IDisposable option = None
let mutable _v1 = v1
#if FABLE_COMPILER_RUST && !WASM && !CONTRACT
let v2 : System.IDisposable = null |> unbox<System.IDisposable>
v2
#endif
#if FABLE_COMPILER_RUST && WASM
let v3 : System.IDisposable = null |> unbox<System.IDisposable>
v3
#endif
#if FABLE_COMPILER_RUST && CONTRACT
let v4 : System.IDisposable = null |> unbox<System.IDisposable>
v4
#endif
#if !FABLE_COMPILER && !FABLE_COMPILER_RUST && !FABLE_COMPILER_TYPESCRIPT &&
!WASM && !CONTRACT
let v5 : System.ID...
── fsharp - import ─────────────────────────────────────────────────────────────
type Mut0 = {mutable l0 : int32; mutable l1 : string}
and Mut1 = {mutable l0 : int32}
let rec closure1 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.Contains v0
v2
and closure0 () (v0 : string) : (string -> bool) =
closure1(v0)
and closure3 (v0 : string) (v1 : string) : bool =
let v2 : bool = v1.EndsWith v0
v2
and closure2 () (v0 : string) : (string -> bool) =
closure3(v0)
and closure6 (v0 : int32, v1 : char) (v2 : string) : string =
let v3 : string = v2.PadLeft (v0, v1)
v3
and closure5 (v0 : int32) (v1 : char) : (string -> string) =
closure6(v0, v1)
and closure4 () (v0 : int32) : (char -> (string -> string)) =
closure5(v0)
and closure8 (v0 : int32) (v1 : string) : string =
let v2 : stri...
── fsharp - import ─────────────────────────────────────────────────────────────
let rec closure1 (v0 : System.Guid) (v1 : System.DateTime) : System.Guid =
let v2 : (System.Guid -> string) = _.ToString()
let v3 : string = v2 v0
let v4 : string = v1.ToString "yyyyMMdd-HHmm-ssff-ffff-f"
let v5 : System.Guid = System.Guid $"{v4}{v3.[[v4.Length..]]}"
v5
and closure0 () (v0 : System.Guid) : (System.DateTime -> System.Guid) =
closure1(v0)
and closure5 (v0 : string, v1 : string) (v2 : string) : string =
let v3 : string = v2.Replace (v0, v1)
v3
and closure4 (v0 : string) (v1 : string) : (string -> string) =
closure5(v0, v1)
and closure3 () (v0 : string) : (string -> (string -> string)) =
closure4(v0)
and method0 () : (string -> (string -> (string -> string))) =
closure3()
and closure2 (...
── fsharp - import ─────────────────────────────────────────────────────────────
#if FABLE_COMPILER // file_system.types
[[<Fable.Core.Erase; Fable.Core.Emit("str")>]] type Str = class end
[[<Fable.Core.Erase; Fable.Core.Emit("base64::DecodeError")>]] type
base64_DecodeError = class end
[[<Fable.Core.Erase; Fable.Core.Emit("borsh::io::Error")>]] type borsh_io_Error
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("js_sys::JsString")>]] type js_sys_JsString
= class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Error")>]] type
serde_json_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_json::Value")>]] type
serde_json_Value = class end
[[<Fable.Core.Erase; Fable.Core.Emit("serde_wasm_bindgen::Error")>]] type
serde_wasm_bindgen_Error = class end
[[<Fable.Core.Erase; Fable.Core.Emit("std::ffi::OsStr")>]] type std_ffi_O...
── fsharp - import ─────────────────────────────────────────────────────────────
module State = let mutable trace_state = None
type [[<Struct>]] US0 =
| US0_0
| US0_1
| US0_2
| US0_3
| US0_4
and Mut0 = {mutable l0 : int64}
and Mut1 = {mutable l0 : bool}
and Mut2 = {mutable l0 : US0}
and [[<Struct>]] US1 =
| US1_0 of f0_0 : int64
| US1_1
and [[<Struct>]] US2 =
| US2_0 of f0_0 : int64
| US2_1
let rec method1 (v0 : int64 option) : int64 option =
v0
and method2 (v0 : int64 option) : int64 option =
v0
and closure3 () () : struct (Mut0 * Mut1 * Mut1 * Mut2 * int64 option) =
let v0 : Mut1 = {l0 = true} : Mut1
let v1 : Mut0 = {l0 = 0L} : Mut0
let v2 : US0 = US0_0
let v3 : Mut2 = {l0 = v2} : Mut2
let v4 : Mut1 = {l0 = false} : Mut1
let v5 : int64 option option = None
...
── fsharp - import ─────────────────────────────────────────────────────────────
module SpiralTrace =
let get_trace_state () =
#if !INTERACTIVE
Trace.get_trace_state ()
#else
get_trace_state ()
#endif
let trace x =
#if !INTERACTIVE
Trace.trace x
#else
trace x
#endif
let US0_0 =
#if !INTERACTIVE
Trace.US0_0
#else
US0_0
#endif
let US0_1 =
#if !INTERACTIVE
Trace.US0_1
#else
US0_1
#endif
let US0_2 =
#if !INTERACTIVE
Trace.US0_2
#else
US0_2
#endif
let US0_3 =
#if !INTERACTIVE
Trace.US0_3
#else
US0_3
#endif
let US0_4 =
#if !INTERACTIVE
Trace.US0_4
#else
US0_4
#endif
#if !FABLE_COMPILER && !WASM && !CONTRACT
module SpiralDateTime =
let format x =
#if !INTERACTIVE
Date_ti...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Common =
#if !INTERACTIVE
open Lib
#endif
let nl = System.Environment.NewLine
let q = @""""
let inline cons head tail = head :: tail
/// ## memoize
let inline memoize fn =
let result = lazy fn ()
fun () -> result.Value
/// ## TraceLevel
type TraceLevel =
| Verbose
| Debug
| Info
| Warning
| Critical
let inline getLocals () = ""
/// ## trace
let to_trace_level = function
| Verbose -> SpiralTrace.US0_0
| Debug -> SpiralTrace.US0_1
| Info -> SpiralTrace.US0_2
| Warning -> SpiralTrace.US0_3
| Critical -> SpiralTrace.US0_4
let trace level fn g...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module CommonFSharp =
open Common
/// ## getUnionCaseName
let inline getUnionCaseName<'T> (x: 'T) =
match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with
| case, _ -> case.Name
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Async =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## choice
let inline choice asyncs = async {
let e = Event<_> ()
use cts = new System.Threading.CancellationTokenSource ()
let fn =
asyncs
|> Seq.map (fun a -> async {
let! x = a
e.Trigger x
})
|> Async.Parallel
|> Async.Ignore
Async.Start (fn, cts.Token)
let! result = Async.AwaitEvent e.Publish
cts.Cancel ()
return result
}
/// ## map
let inline map fn a = async {
let! x = a
return fn x
}
/// ## catch
let inline catch a =
...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module AsyncSeq =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## subscribeEvent
let inline subscribeEvent (event: IEvent<'H, 'A>) map =
let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,
'A>(event.AddHandler, event.RemoveHandler)
System.Reactive.Linq.Observable.Select (observable, fun event -> map
event.EventArgs)
|> FSharp.Control.AsyncSeq.ofObservableBuffered
let subscribeToken (token : System.Threading.CancellationToken) =
let tcs = new System.Threading.Tasks.TaskCompletionSource ()
System.Action tcs.SetResult |> token.Register |> ignore
let start = System.DateTime.Now.Ticks
FSharp.Control.A...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Networking =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## testPortOpen
let inline testPortOpen port = async {
let! ct = Async.CancellationToken
use client = new System.Net.Sockets.TcpClient ()
try
do! client.ConnectAsync ("127.0.0.1", port, ct) |>
Async.awaitValueTaskUnit
return true
with ex ->
trace Verbose (fun () -> $"testPortOpen / ex: {ex |>
SpiralSm.format_exception}") getLocals
return false
}
let inline testPortOpenTimeout timeout port = async {
let! result =
testPortOpen port
|> Async.runWithTimeoutAsync timeout
return
...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module Runtime =
#if !INTERACTIVE
open Lib
#endif
open Common
/// ## isWindows
let isWindows =
fun () ->
System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform
System.Runtime.InteropServices.OSPlatform.Windows
|> memoize
/// ## getExecutableSuffix
let inline getExecutableSuffix () =
if isWindows ()
then ".exe"
else ""
/// ## splitCommand
type private CommandParseStep =
| Start
| Path of quoted: bool
| Arguments
let splitCommand (command: string) =
let rec loop (path, args) chars step =
match chars, step with
| ('"' | '\'') ...
── fsharp - import ─────────────────────────────────────────────────────────────
#if !INTERACTIVE
namespace Polyglot
#endif
module FileSystem =
#if !INTERACTIVE
open Lib
#endif
open Common
open SpiralFileSystem.Operators
/// ## watchDirectory
[[<RequireQualifiedAccess>]]
type FileSystemChangeType =
| Failure
| Changed
| Created
| Deleted
| Renamed
[[<RequireQualifiedAccess>]]
type FileSystemChange =
| Failure of exn: exn
| Changed of path: string * content: string option
| Created of path: string * content: string option
| Deleted of path: string
| Renamed of oldPath: string * (string * string option)
let inline watchDirectoryWithFilter filter shouldReadContent path =
let fullPath = path |> Sys...
── fsharp ──────────────────────────────────────────────────────────────────────
#if !INTERACTIVE
open Lib
#endif
── fsharp ──────────────────────────────────────────────────────────────────────
open SpiralFileSystem.Operators
open Falco.Markup
── fsharp ──────────────────────────────────────────────────────────────────────
type FileSystemNode =
| File of string * string * int64
| Folder of string * string * FileSystemNode list
| Root of FileSystemNode list
let rec scanDirectory isRoot (basePath : string) (path : string) =
let relativePath =
path
|> SpiralSm.replace basePath ""
|> SpiralSm.replace "\\" "/"
|> SpiralSm.replace "//" "/"
|> SpiralSm.trim_start [[| '/' |]]
let directories =
path
|> System.IO.Directory.GetDirectories
|> Array.toList
|> List.sort
|> List.map (scanDirectory false basePath)
let files =
path
|> System.IO.Directory.GetFiles
|> Array.toList
|> List.sort
|> List.map (fun f -> File (System.IO.Path.GetFileName f, relativePath,
System.IO.FileInfo(f).Length))
let children = directories @ files
if isRoot
then Root children
else Folder (path |> System.IO.Path.GetFileName, relativePath, children)
let rec generateHtml fsNode =
let sizeLabel size =
match float size with
| size when size > 1024.0 * 1024.0 -> $"%.2f{size / 1024.0 / 1024.0} MB"
| size when size > 1024.0 -> $"%.2f{size / 1024.0} KB"
| size -> $"%.2f{size} B"
match fsNode with
| File (fileName, relativePath, size) ->
Elem.div [[]] [[
Text.raw "📄 "
Elem.a [[
Attr.href $"""{relativePath}{if relativePath = "" then "" else
"/"}{fileName}"""
]] [[
Text.raw fileName
]]
Elem.span [[]] [[
Text.raw $" ({size |> sizeLabel})"
]]
]]
| Folder (folderName, relativePath, children) ->
let size =
let rec loop children =
children
|> List.sumBy (function
| File (_, _, size) -> size
| Folder (_, _, children)
| Root children -> loop children
)
loop children
Elem.details [[
Attr.open' "true"
]] [[
Elem.summary [[]] [[
Text.raw "📂 "
Elem.a [[
Attr.href relativePath
]] [[
Text.raw folderName
]]
Elem.span [[]] [[
Text.raw $" ({size |> sizeLabel})"
]]
]]
Elem.div [[]] [[
yield! children |> List.map generateHtml
]]
]]
| Root children ->
Elem.div [[]] [[
yield! children |> List.map generateHtml
]]
let generateHtmlForFileSystem root =
$"""<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
body {{
background-color: #222;
color: #ccc;
}}
a {{
color: #777;
font-size: 15px;
}}
span {{
font-size: 11px;
}}
div > div {{
padding-left: 10px;
}}
details > div {{
padding-left: 19px;
}}
</style>
</head>
<body>
{root |> generateHtml |> renderNode}
</body>
</html>
"""
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let struct (tempFolder, disposable) = SpiralFileSystem.create_temp_directory ()
let rec loop d n = async {
if n >= 0 then
tempFolder </> d |> System.IO.Directory.CreateDirectory |> ignore
do!
n
|> string
|> String.replicate (n + 1)
|> SpiralFileSystem.write_all_text_async (tempFolder </> d </>
$"file.txt")
do! loop $"{d}/{n}" (n - 1)
}
loop "_.root" 3
|> Async.RunSynchronously
let html =
scanDirectory true tempFolder tempFolder
|> generateHtmlForFileSystem
html
|> _assertEqual """<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
body {
background-color: #222;
color: #ccc;
}
a {
color: #777;
font-size: 15px;
}
span {
font-size: 11px;
}
div > div {
padding-left: 10px;
}
details > div {
padding-left: 19px;
}
</style>
</head>
<body>
<div><details open="true"><summary>📂 <a href="_.root">_.root</a><span>
(10.00 B)</span></summary><div><details open="true"><summary>📂 <a
href="_.root/3">3</a><span> (6.00 B)</span></summary><div><details
open="true"><summary>📂 <a href="_.root/3/2">2</a><span> (3.00
B)</span></summary><div><details open="true"><summary>📂 <a
href="_.root/3/2/1">1</a><span> (1.00 B)</span></summary><div><div>📄 <a
href="_.root/3/2/1/file.txt">file.txt</a><span> (1.00
B)</span></div></div></details><div>📄 <a
href="_.root/3/2/file.txt">file.txt</a><span> (2.00
B)</span></div></div></details><div>📄 <a
href="_.root/3/file.txt">file.txt</a><span> (3.00
B)</span></div></div></details><div>📄 <a
href="_.root/file.txt">file.txt</a><span> (4.00
B)</span></div></div></details></div>
</body>
</html>
"""
html |> Microsoft.DotNet.Interactive.Formatting.Html.ToHtmlContent
disposable.Dispose ()
╭─[ 163.00ms - stdout ]────────────────────────────────────────────────────────╮
│ <!DOCTYPE html> │
│ <html lang="en"> │
│ <head> │
│ <meta charset="UTF-8"> │
│ <style> │
│ body { │
│ background-color: #222; │
│ color: #ccc; │
│ } │
│ a { │
│ color: #777; │
│ font-size: 15px; │
│ } │
│ span { │
│ font-size: 11px; │
│ } │
│ div > div { │
│ padding-left: 10px; │
│ } │
│ details > div { │
│ padding-left: 19px; │
│ } │
│ </style> │
│ </head> │
│ <body> │
│ <div><details open="true"><summary>📂 <a │
│ href="_.root">_.root</a><span> (10.00 B)</span></summary><div><details │
│ open="true"><summary>📂 <a href="_.root/3">3</a><span> (6.00 │
│ B)</span></summary><div><details open="true"><summary>📂 <a │
│ href="_.root/3/2">2</a><span> (3.00 B)</span></summary><div><details │
│ open="true"><summary>📂 <a href="_.root/3/2/1">1</a><span> (1.00 │
│ B)</span></summary><div><div>📄 <a │
│ href="_.root/3/2/1/file.txt">file.txt</a><span> (1.00 │
│ B)</span></div></div></details><div>📄 <a │
│ href="_.root/3/2/file.txt">file.txt</a><span> (2.00 │
│ B)</span></div></div></details><div>📄 <a │
│ href="_.root/3/file.txt">file.txt</a><span> (3.00 │
│ B)</span></div></div></details><div>📄 <a │
│ href="_.root/file.txt">file.txt</a><span> (4.00 │
│ B)</span></div></div></details></div> │
│ </body> │
│ </html> │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## Arguments │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
[[<RequireQualifiedAccess>]]
type Arguments =
| [[<Argu.ArguAttributes.ExactlyOnce>]] Dir of string
| [[<Argu.ArguAttributes.ExactlyOnce>]] Html of string
interface Argu.IArgParserTemplate with
member s.Usage =
match s with
| Dir _ -> nameof Dir
| Html _ -> nameof Html
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
Argu.ArgumentParser.Create<Arguments>().PrintUsage ()
╭─[ 110.76ms - return value ]──────────────────────────────────────────────────╮
│ USAGE: dotnet-repl [--help] --dir <string> --html <string> │
│ │
│ OPTIONS: │
│ │
│ --dir <string> Dir │
│ --html <string> Html │
│ --help display this list of options. │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
── markdown ────────────────────────────────────────────────────────────────────
╭──────────────────────────────────────────────────────────────────────────────╮
│ ## main │
╰──────────────────────────────────────────────────────────────────────────────╯
── fsharp ──────────────────────────────────────────────────────────────────────
let main args =
let argsMap = args |> Runtime.parseArgsMap<Arguments>
let dir =
match argsMap.[[nameof Arguments.Dir]] with
| [[ Arguments.Dir dir ]] -> Some dir
| _ -> None
|> Option.get
let htmlPath =
match argsMap.[[nameof Arguments.Html]] with
| [[ Arguments.Html html ]] -> Some html
| _ -> None
|> Option.get
let fileSystem = scanDirectory true dir dir
let html = generateHtmlForFileSystem fileSystem
html |> SpiralFileSystem.write_all_text_async htmlPath
|> Async.runWithTimeout 30000
|> function
| Some () -> 0
| None -> 1
── fsharp ──────────────────────────────────────────────────────────────────────
//// test
let args =
System.Environment.GetEnvironmentVariable "ARGS"
|> Runtime.splitArgs
|> Seq.toArray
match args with
| [[||]] -> 0
| args -> if main args = 0 then 0 else failwith "main failed"
╭─[ 69.92ms - return value ]───────────────────────────────────────────────────╮
│ <div class="dni-plaintext"><pre>0</pre></div><style> │
│ .dni-code-hint { │
│ font-style: italic; │
│ overflow: hidden; │
│ white-space: nowrap; │
│ } │
│ .dni-treeview { │
│ white-space: nowrap; │
│ } │
│ .dni-treeview td { │
│ vertical-align: top; │
│ text-align: start; │
│ } │
│ details.dni-treeview { │
│ padding-left: 1em; │
│ } │
│ table td { │
│ text-align: start; │
│ } │
│ table tr { │
│ vertical-align: top; │
│ margin: 0em 0px; │
│ } │
│ table tr td pre │
│ { │
│ vertical-align: top !important; │
│ margin: 0em 0px !important; │
│ } │
│ table th { │
│ text-align: start; │
│ } │
│ </style> │
╰──────────────────────────────────────────────────────────────────────────────╯
[NbConvertApp] Converting notebook DirTreeHtml.dib.ipynb to html
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.
validate(nb)
C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:71: UserWarning: IPython3 lexer unavailable, falling back on Python 3
return _pygments_highlight(
[NbConvertApp] Writing 308881 bytes to DirTreeHtml.dib.html
00:00:00 #1 [debug] writeDibCode / output: Fs / path: DirTreeHtml.dib
00:00:00 #2 [debug] parseDibCode / output: Fs / file: DirTreeHtml.dib
00:00:00 #1 [debug] persistCodeProject / packages: [Argu; Falco.Markup; FSharp.Control.AsyncSeq; ... ] / modules: [lib/spiral/common.fsx; lib/spiral/sm.fsx; lib/spiral/date_time.fsx; ... ] / name: DirTreeHtml / code.Length: 4640
00:00:00 #2 [debug] buildProject / fullPath: C:\home\git\polyglot\target\polyglot\builder\DirTreeHtml\DirTreeHtml.fsproj
00:00:00 #3 [debug] executeAsync / options: { Command =
"dotnet publish "C:\home\git\polyglot\target/polyglot/builder\DirTreeHtml\DirTreeHtml.fsproj" --configuration Release --output "C:\home\git\polyglot\apps\dir-tree-html\dist" --runtime linux-x64"
WorkingDirectory =
Some "C:\home\git\polyglot\target\polyglot\builder\DirTreeHtml"
CancellationToken = None
OnLine = None }
00:00:00 #4 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f for .NET
00:00:01 #5 [verbose] > Determining projects to restore...
00:00:02 #6 [verbose] > Restored C:\home\git\polyglot\target\polyglot\builder\DirTreeHtml\DirTreeHtml.fsproj (in 444 ms).
00:00:02 #7 [verbose] > C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.24101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(313,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\target\polyglot\builder\DirTreeHtml\DirTreeHtml.fsproj]
00:00:08 #8 [verbose] > DirTreeHtml -> C:\home\git\polyglot\target\polyglot\builder\DirTreeHtml\bin\Release\net9.0\linux-x64\DirTreeHtml.dll
00:00:10 #9 [verbose] > DirTreeHtml -> C:\home\git\polyglot\apps\dir-tree-html\dist\
00:00:10 #10 [debug] executeAsync / exitCode: 0 / output.Length: 730
00:00:10 #11 [debug] executeAsync / options: { Command =
"dotnet publish "C:\home\git\polyglot\target/polyglot/builder\DirTreeHtml\DirTreeHtml.fsproj" --configuration Release --output "C:\home\git\polyglot\apps\dir-tree-html\dist" --runtime win-x64"
WorkingDirectory =
Some "C:\home\git\polyglot\target\polyglot\builder\DirTreeHtml"
CancellationToken = None
OnLine = None }
00:00:10 #12 [verbose] > MSBuild version 17.10.0-preview-24101-01+07fd5d51f for .NET
00:00:11 #13 [verbose] > Determining projects to restore...
00:00:11 #14 [verbose] > Restored C:\home\git\polyglot\target\polyglot\builder\DirTreeHtml\DirTreeHtml.fsproj (in 388 ms).
00:00:11 #15 [verbose] > C:\Users\i574n\scoop\apps\dotnet-sdk-preview\current\sdk\9.0.100-preview.1.24101.2\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(313,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\target\polyglot\builder\DirTreeHtml\DirTreeHtml.fsproj]
00:00:18 #16 [verbose] > DirTreeHtml -> C:\home\git\polyglot\target\polyglot\builder\DirTreeHtml\bin\Release\net9.0\win-x64\DirTreeHtml.dll
00:00:25 #17 [verbose] > DirTreeHtml -> C:\home\git\polyglot\apps\dir-tree-html\dist\
00:00:25 #18 [debug] executeAsync / exitCode: 0 / output.Length: 728
In [ ]:
{ . "$ScriptDir/../apps/ipfs/build.ps1" } | Invoke-Block
bun install v1.1.0 (5903a614)
Done! Checked 220 packages (no changes) [1.58s]
In [ ]:
{ . "$ScriptDir/outdated.ps1" } | Invoke-Block
Paket version 8.1.0-alpha001+8e77fe66ac27ddecf519e0df5a4d3327ca9250e2
Resolving dependency graph...
Outdated packages found:
Group: Main
* Argu 6.2.2 -> 6.2.3
* Expecto.FsCheck 10.2.1-fscheck3 -> 10.2.1
* FsCheck 3.0.0-rc3 -> 2.16.6
* FSharp.Core 8.0.300-beta.24080.5 -> 8.0.300-beta.24154.4
* Microsoft.AspNetCore.Connections.Abstractions 7.0 -> 9.0.0-preview.2.24128.4
* Microsoft.AspNetCore.Http.Connections.Client 7.0 -> 9.0.0-preview.2.24128.4
* Microsoft.AspNetCore.Http.Connections.Common 7.0 -> 9.0.0-preview.2.24128.4
* Microsoft.AspNetCore.SignalR.Client 7.0 -> 9.0.0-preview.2.24128.4
* Microsoft.AspNetCore.SignalR.Client.Core 7.0 -> 9.0.0-preview.2.24128.4
* Microsoft.AspNetCore.SignalR.Common 7.0 -> 9.0.0-preview.2.24128.4
* Microsoft.AspNetCore.SignalR.Protocols.Json 7.0 -> 9.0.0-preview.2.24128.4
* Microsoft.Extensions.DependencyInjection 8.0 -> 9.0.0-preview.2.24128.5
* Microsoft.Extensions.DependencyInjection.Abstractions 8.0.1 -> 9.0.0-preview.2.24128.5
* Microsoft.Extensions.Features 7.0 -> 9.0.0-preview.2.24128.4
* Microsoft.Extensions.Logging 8.0 -> 9.0.0-preview.2.24128.5
* Microsoft.Extensions.Logging.Abstractions 8.0.1 -> 9.0.0-preview.2.24128.5
* Microsoft.Extensions.Options 8.0.2 -> 9.0.0-preview.2.24128.5
* Microsoft.Extensions.Primitives 8.0 -> 9.0.0-preview.2.24128.5
* System.IO.Pipelines 8.0 -> 9.0.0-preview.2.24128.5
* System.Threading.Channels 8.0 -> 9.0.0-preview.2.24128.5
Total time taken: 51 seconds
CheckToml / toml: C:\home\git\polyglot\Cargo.toml
polyglot
================
Name Project Compat Latest Kind Platform
---- ------- ------ ------ ---- --------
getrandom 0.2.12 --- 0.2.14 Normal ---
chat_contract_tests
================
Name Project Compat Latest Kind Platform
---- ------- ------ ------ ---- --------
ahash 0.8.11 Removed --- Normal ---
allocator-api2 0.2.16 Removed --- Normal ---
autocfg 1.2.0 --- Removed Build ---
cfg-if 1.0.0 Removed --- Normal ---
equivalent 1.0.1 Removed --- Normal ---
getrandom 0.2.12 --- 0.2.14 Normal ---
getrandom 0.2.12 --- 0.2.14 Normal cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
hashbrown 0.12.3 --- 0.14.3 Normal ---
hashbrown 0.14.3 0.12.3 --- Normal ---
indexmap 1.9.3 --- 2.2.6 Normal ---
indexmap 2.2.6 1.9.3 --- Normal ---
once_cell 1.19.0 Removed --- Normal cfg(not(all(target_arch = "arm", target_os = "none")))
proc-macro2 1.0.79 Removed --- Normal ---
quote 1.0.35 Removed --- Normal ---
syn 2.0.58 Removed --- Normal ---
unicode-ident 1.0.12 Removed --- Normal ---
version_check 0.9.4 Removed --- Build ---
zerocopy 0.7.32 Removed --- Normal ---
zerocopy-derive 0.7.32 Removed --- Normal ---
math
================
Name Project Compat Latest Kind Platform
---- ------- ------ ------ ---- --------
getrandom 0.2.12 --- 0.2.14 Normal ---
fable_library_rust
================
Name Project Compat Latest Kind Platform
---- ------- ------ ------ ---- --------
getrandom 0.2.12 --- 0.2.14 Normal ---
getrandom 0.2.12 --- 0.2.14 Normal cfg(target_arch = "wasm32")
spiral_temp_extension
================
Name Project Compat Latest Kind Platform
---- ------- ------ ------ ---- --------
getrandom 0.2.12 --- 0.2.14 Normal ---
spiral_temp_test
================
Name Project Compat Latest Kind Platform
---- ------- ------ ------ ---- --------
getrandom 0.2.12 --- 0.2.14 Normal ---
CheckToml / toml: C:\home\git\polyglot\apps\chat\contract\Cargo.toml
Name Project Compat Latest Kind Platform
---- ------- ------ ------ ---- --------
borsh-derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
darling_core->quote 1.0.35 1.0.36 1.0.36 Normal ---
darling_macro->quote 1.0.35 1.0.36 1.0.36 Normal ---
near-sdk-macros->quote 1.0.35 1.0.36 1.0.36 Normal ---
proc-macro-error->quote 1.0.35 1.0.36 1.0.36 Normal ---
proc-macro-error-attr->quote 1.0.35 1.0.36 1.0.36 Normal ---
schemars_derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
serde_derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
serde_derive_internals->quote 1.0.35 1.0.36 1.0.36 Normal ---
strum_macros->quote 1.0.35 1.0.36 1.0.36 Normal ---
strum_macros->rustversion 1.0.14 1.0.15 1.0.15 Normal ---
syn->quote 1.0.35 1.0.36 1.0.36 Normal ---
syn_derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
zerocopy-derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
CheckToml / toml: C:\home\git\polyglot\apps\chat\contract\tests\Cargo.toml
Name Project Compat Latest Kind Platform
---- ------- ------ ------ ---- --------
actix-macros->quote 1.0.35 1.0.36 1.0.36 Normal ---
actix_derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
ahash->cfg-if 1.0.0 Removed --- Normal ---
ahash->getrandom 0.2.12 0.2.14 0.2.14 Normal cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))
ahash->once_cell 1.19.0 Removed --- Normal cfg(not(all(target_arch = "arm", target_os = "none")))
ahash->version_check 0.9.4 Removed --- Build ---
ahash->zerocopy 0.7.32 Removed --- Normal ---
anyhow 1.0.81 1.0.82 1.0.82 Normal ---
async-stream-impl->quote 1.0.35 1.0.36 1.0.36 Normal ---
async-trait->quote 1.0.35 1.0.36 1.0.36 Normal ---
backtrace->cc 1.0.90 1.0.92 1.0.92 Build ---
binary-install->anyhow 1.0.81 1.0.82 1.0.82 Normal ---
borsh-derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
borsh-derive-internal->quote 1.0.35 1.0.36 1.0.36 Normal ---
borsh-schema-derive-internal->quote 1.0.35 1.0.36 1.0.36 Normal ---
bzip2-sys->cc 1.0.90 1.0.92 1.0.92 Build ---
cargo-near->anyhow 1.0.81 1.0.82 1.0.82 Normal ---
clap_derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
curve25519-dalek-derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
darling_core->quote 1.0.35 1.0.36 1.0.36 Normal ---
darling_macro->quote 1.0.35 1.0.36 1.0.36 Normal ---
derive_arbitrary->quote 1.0.35 1.0.36 1.0.36 Normal ---
derive_more->quote 1.0.35 1.0.36 1.0.36 Normal ---
enum-map-derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
futures-macro->quote 1.0.35 1.0.36 1.0.36 Normal ---
hashbrown->ahash 0.8.11 Removed --- Normal ---
hashbrown->allocator-api2 0.2.16 Removed --- Normal ---
iana-time-zone-haiku->cc 1.0.90 1.0.92 1.0.92 Build ---
indexmap->autocfg 1.2.0 --- Removed Build ---
indexmap->equivalent 1.0.1 Removed --- Normal ---
indexmap->hashbrown 0.12.3 --- 0.14.3 Normal ---
indexmap->hashbrown 0.14.3 0.12.3 --- Normal ---
near-chain-configs->anyhow 1.0.81 1.0.82 1.0.82 Normal ---
near-config-utils->anyhow 1.0.81 1.0.82 1.0.82 Normal ---
near-parameters->serde_repr 0.1.18 0.1.19 0.1.19 Normal ---
near-primitives->time 0.3.34 0.3.35 0.3.35 Normal ---
near-primitives-core->serde_repr 0.1.18 0.1.19 0.1.19 Normal ---
near-rpc-error-core->quote 1.0.35 1.0.36 1.0.36 Normal ---
near-sandbox-utils->anyhow 1.0.81 1.0.82 1.0.82 Normal ---
near-vm-runner->serde_repr 0.1.18 0.1.19 0.1.19 Normal ---
openssl-macros->quote 1.0.35 1.0.36 1.0.36 Normal ---
openssl-sys->cc 1.0.90 1.0.92 1.0.92 Build ---
pin-project-internal->quote 1.0.35 1.0.36 1.0.36 Normal ---
proc-macro-error->quote 1.0.35 1.0.36 1.0.36 Normal ---
proc-macro-error-attr->quote 1.0.35 1.0.36 1.0.36 Normal ---
proc-macro2->unicode-ident 1.0.12 Removed --- Normal ---
prost-derive->anyhow 1.0.81 1.0.82 1.0.82 Normal ---
prost-derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
quote->proc-macro2 1.0.79 Removed --- Normal ---
rand_core->getrandom 0.2.12 0.2.14 0.2.14 Normal ---
redox_users->getrandom 0.2.12 0.2.14 0.2.14 Normal ---
reqwest->encoding_rs 0.8.33 0.8.34 0.8.34 Normal cfg(not(target_arch = "wasm32"))
ring->cc 1.0.90 1.0.92 1.0.92 Build ---
ring->getrandom 0.2.12 0.2.14 0.2.14 Normal ---
schemars_derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
scroll_derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
secp256k1-sys->cc 1.0.90 1.0.92 1.0.92 Build ---
serde_derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
serde_derive_internals->quote 1.0.35 1.0.36 1.0.36 Normal ---
serde_repr->quote 1.0.35 1.0.36 1.0.36 Normal ---
serde_with->indexmap 1.9.3 --- 2.2.6 Normal ---
serde_with->indexmap 2.2.6 1.9.3 --- Normal ---
serde_with->time 0.3.34 0.3.35 0.3.35 Normal ---
serde_with_macros->quote 1.0.35 1.0.36 1.0.36 Normal ---
smart-default->quote 1.0.35 1.0.36 1.0.36 Normal ---
strum_macros->quote 1.0.35 1.0.36 1.0.36 Normal ---
strum_macros->rustversion 1.0.14 1.0.15 1.0.15 Normal ---
syn->proc-macro2 1.0.79 Removed --- Normal ---
syn->quote 1.0.35 1.0.36 1.0.36 Normal ---
syn->quote 1.0.35 Removed 1.0.36 Normal ---
syn->unicode-ident 1.0.12 Removed --- Normal ---
syn_derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
thiserror-impl->quote 1.0.35 1.0.36 1.0.36 Normal ---
time->time-macros 0.2.17 0.2.18 0.2.18 Normal ---
tokio-macros->quote 1.0.35 1.0.36 1.0.36 Normal ---
tonic-build->quote 1.0.35 1.0.36 1.0.36 Normal ---
tracing-appender->time 0.3.34 0.3.35 0.3.35 Normal ---
tracing-attributes->quote 1.0.35 1.0.36 1.0.36 Normal ---
wasm-bindgen-backend->bumpalo 3.15.4 3.16.0 3.16.0 Normal ---
wasm-bindgen-backend->quote 1.0.35 1.0.36 1.0.36 Normal ---
wasm-bindgen-macro->quote 1.0.35 1.0.36 1.0.36 Normal ---
wasm-bindgen-macro-support->quote 1.0.35 1.0.36 1.0.36 Normal ---
zerocopy->zerocopy-derive 0.7.32 Removed --- Normal ---
zerocopy-derive->proc-macro2 1.0.79 Removed --- Normal ---
zerocopy-derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
zerocopy-derive->quote 1.0.35 Removed 1.0.36 Normal ---
zerocopy-derive->syn 2.0.58 Removed --- Normal ---
zip->time 0.3.34 0.3.35 0.3.35 Normal ---
zstd-sys->cc 1.0.90 1.0.92 1.0.92 Build ---
CheckToml / toml: C:\home\git\polyglot\apps\plot\Cargo.toml
Name Project Compat Latest Kind Platform
---- ------- ------ ------ ---- --------
fable_library_rust->getrandom 0.2.12 0.2.14 0.2.14 Normal cfg(target_arch = "wasm32")
futures-macro->quote 1.0.35 1.0.36 1.0.36 Normal ---
iana-time-zone-haiku->cc 1.0.90 1.0.92 1.0.92 Build ---
serde_derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
syn->quote 1.0.35 1.0.36 1.0.36 Normal ---
uuid->getrandom 0.2.12 0.2.14 0.2.14 Normal ---
wasm-bindgen-backend->bumpalo 3.15.4 3.16.0 3.16.0 Normal ---
wasm-bindgen-backend->quote 1.0.35 1.0.36 1.0.36 Normal ---
wasm-bindgen-macro->quote 1.0.35 1.0.36 1.0.36 Normal ---
wasm-bindgen-macro-support->quote 1.0.35 1.0.36 1.0.36 Normal ---
zerocopy-derive->quote 1.0.35 1.0.36 1.0.36 Normal ---
CheckJson / json: C:/home/git/polyglot
$ npm-check-updates --target greatest
Using bun
Checking C:\home\git\polyglot\package.json
All dependencies match the greatest package versions :)
CheckJson / json: C:/home/git/polyglot/apps/ipfs
$ npm-check-updates --target greatest
Using bun
Checking C:\home\git\polyglot\apps\ipfs\package.json
All dependencies match the greatest package versions :)
CheckJson / json: C:/home/git/polyglot/apps/spiral/temp/extension
$ npm-check-updates --target greatest
Using bun
Checking C:\home\git\polyglot\apps\spiral\temp\extension\package.json
@playwright/test 1.42.1 → 1.44.0-alpha-2024-04-10
@types/chrome ~0.0.263 → ~0.0.266
Run ncu --target greatest -u to upgrade package.json